Salome HOME
Merge branch 'master' of newgeom:newgeom.git
[modules/shaper.git] / src / Model / Model_Iterator.h
index 2ec50ab3af0491c9a8cbe252bd23d0dc2c2aab89..80fc76caf047c36afab07652e136acf56993ae24 100644 (file)
@@ -24,15 +24,22 @@ class MODEL_EXPORT Model_Iterator : public ModelAPI_Iterator
   TDF_ChildIDIterator myIter; ///< iterator of the features-labels
 public:
   /// Iterates to the next feature
-  virtual void Next();
+  virtual void next();
   /// Returns true if the current iteration is valid and next iteration is possible
-  virtual bool More();
+  virtual bool more();
   /// Returns the currently iterated feature
-  virtual std::shared_ptr<ModelAPI_Feature> Current();
+  virtual std::shared_ptr<ModelAPI_Feature> current();
   /// Returns the kind of the current feature (faster than Current()->getKind())
-  virtual std::string CurrentKind();
+  virtual std::string currentKind();
   /// Returns the name of the current feature (faster than Current()->getName())
-  virtual std::string CurrentName();
+  virtual std::string currentName();
+  /// Don't changes the current position of iterator. Not fast: iterates the left items.
+  /// \returns number of left iterations
+  virtual int numIterationsLeft();
+
+  /// Compares the current feature with the given one
+  /// \returns true if given feature equals to the current one
+  virtual bool is(std::shared_ptr<ModelAPI_Feature> theFeature);
 
 protected:
   /// Initializes iterator