Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTamito Kajiyama <rd6t-kjym@asahi-net.or.jp>2009-08-01 02:13:48 +0400
committerTamito Kajiyama <rd6t-kjym@asahi-net.or.jp>2009-08-01 02:13:48 +0400
commitba9943e4a7a6c671e427c08fc11845168a30e86a (patch)
tree99310397139b528b4ba46012389aea490597a78f /source/blender/freestyle/intern/stroke/ChainingIterators.h
parent6134a41270ab7629bb6e09de5462ba386861ede3 (diff)
* Implemented Python's iterator protocol in Interface0DIterator and
orientedViewEdgeIterator. * Simplified Python-related error handling in C++ class definitions. The definitions of the following C++ methods were simplified and most code segments using the C/Python API were moved to Director.cpp. ChainingIterator::init() ChainingIterator::traverse() UnaryPredicate0D::operator()() UnaryPredicate1D::operator()() BinaryPredicate0D::operator()() BinaryPredicate1D::operator()() UnaryFunction0D::operator()() UnaryFunction1D::operator()() StrokeShader.shade() * Moved part of the introspection-based automatic type conversion code from BPy_Interface0DIterator.cpp and Director.cpp to BPy_Convert.cpp for the sake of better code organization. * Fixed an uninitialized member in StrokeVertexIterator___init__().
Diffstat (limited to 'source/blender/freestyle/intern/stroke/ChainingIterators.h')
-rwxr-xr-xsource/blender/freestyle/intern/stroke/ChainingIterators.h22
1 files changed, 2 insertions, 20 deletions
diff --git a/source/blender/freestyle/intern/stroke/ChainingIterators.h b/source/blender/freestyle/intern/stroke/ChainingIterators.h
index fb04be93b4d..ec093888aea 100755
--- a/source/blender/freestyle/intern/stroke/ChainingIterators.h
+++ b/source/blender/freestyle/intern/stroke/ChainingIterators.h
@@ -186,16 +186,7 @@ public:
* might want to keep.
*/
virtual int init() {
- string name( py_c_it ? PyString_AsString(PyObject_CallMethod(py_c_it, "getExactTypeName", "")) : getExactTypeName() );
-
- if( py_c_it && PyObject_HasAttrString(py_c_it, "init") ) {
- if (Director_BPy_ChainingIterator_init( py_c_it ) < 0) {
- return -1;
- }
- } else {
- cerr << "Warning: " << name << " init() method not implemented" << endl;
- }
- return 0;
+ return Director_BPy_ChainingIterator_init( this );
}
/*! This method iterates over the potential next
@@ -210,16 +201,7 @@ public:
* rules by only iterating over the valid ViewEdges.
*/
virtual int traverse(const AdjacencyIterator &it){
- string name( py_c_it ? PyString_AsString(PyObject_CallMethod(py_c_it, "getExactTypeName", "")) : getExactTypeName() );
-
- if( py_c_it && PyObject_HasAttrString(py_c_it, "traverse") ) {
- if (Director_BPy_ChainingIterator_traverse(py_c_it, const_cast<AdjacencyIterator &>(it), &result ) < 0) {
- return -1;
- }
- } else {
- cerr << "Warning: the " << name << " traverse() method not defined" << endl;
- }
- return 0;
+ return Director_BPy_ChainingIterator_traverse( this, const_cast<AdjacencyIterator &>(it) );
}
/* accessors */