Salome HOME
projects
/
modules
/
shaper.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch 'master' of newgeom:newgeom
[modules/shaper.git]
/
src
/
ModelAPI
/
ModelAPI_Document.h
diff --git
a/src/ModelAPI/ModelAPI_Document.h
b/src/ModelAPI/ModelAPI_Document.h
index efc85b2756a317c37849e096aa522b286b0749a2..9070718b48974151d3b0a4ea2332f65438340f71 100644
(file)
--- a/
src/ModelAPI/ModelAPI_Document.h
+++ b/
src/ModelAPI/ModelAPI_Document.h
@@
-11,7
+11,6
@@
#include <vector>
class ModelAPI_Feature;
#include <vector>
class ModelAPI_Feature;
-class ModelAPI_Iterator;
/// Common groups identifiers
/// Group of parameters
/// Common groups identifiers
/// Group of parameters
@@
-20,8
+19,8
@@
static const std::string PARAMETERS_GROUP = "Parameters";
static const std::string CONSTRUCTIONS_GROUP = "Construction";
/// Group of parts
static const std::string PARTS_GROUP = "Parts";
static const std::string CONSTRUCTIONS_GROUP = "Construction";
/// Group of parts
static const std::string PARTS_GROUP = "Parts";
-///
Group of sketches
-static const std::string
SKETCHS_GROUP = "Sketch
s";
+///
All created fetaures of the document (a history)
+static const std::string
FEATURES_GROUP = "Feature
s";
/**\class Model_Document
* \ingroup DataModel
/**\class Model_Document
* \ingroup DataModel
@@
-70,25
+69,25
@@
public:
//! \param creates feature and puts it in the document
MODELAPI_EXPORT virtual boost::shared_ptr<ModelAPI_Feature> addFeature(std::string theID) = 0;
//! \param creates feature and puts it in the document
MODELAPI_EXPORT virtual boost::shared_ptr<ModelAPI_Feature> addFeature(std::string theID) = 0;
- //
/! Adds a new sub-document by the identifier, or returns existing one if it is already exis
t
- MODELAPI_EXPORT virtual
boost::shared_ptr<ModelAPI_Document> subDocument(std::string theDocID
) = 0;
+ //
! Removes the feature from the documen
t
+ MODELAPI_EXPORT virtual
void removeFeature(boost::shared_ptr<ModelAPI_Feature> theFeature
) = 0;
- ///!
Creates an iterator of the features by the specific groups
- MODELAPI_EXPORT virtual boost::shared_ptr<ModelAPI_
Iterator> featuresIterator(
-
const std::string theGroup
) = 0;
+ ///!
Adds a new sub-document by the identifier, or returns existing one if it is already exist
+ MODELAPI_EXPORT virtual boost::shared_ptr<ModelAPI_
Document>
+
subDocument(std::string theDocID
) = 0;
///! Returns the id of hte document
MODELAPI_EXPORT virtual const std::string& id() const = 0;
//! Returns the feature in the group by the index (started from zero)
///! Returns the id of hte document
MODELAPI_EXPORT virtual const std::string& id() const = 0;
//! Returns the feature in the group by the index (started from zero)
+ //! \param theGroupID group that contains a feature
+ //! \param theIndex zero-based index of feature in the group
+ //! \param isOperation if it is true, returns feature (not Object)
MODELAPI_EXPORT virtual boost::shared_ptr<ModelAPI_Feature>
MODELAPI_EXPORT virtual boost::shared_ptr<ModelAPI_Feature>
- feature(const std::string& theGroupID, const int theIndex) = 0;
-
- //! Returns the index of feature in the group (zero based)
- MODELAPI_EXPORT virtual int featureIndex(boost::shared_ptr<ModelAPI_Feature> theFeature) = 0;
+ feature(const std::string& theGroupID, const int theIndex, const bool isOperation = false) = 0;
- //
/! Returns the vector of groups already added to the document
- MODELAPI_EXPORT virtual
const std::vector<std::string>& getGroups() const
= 0;
+ //
! Returns the number of features in the group
+ MODELAPI_EXPORT virtual
int size(const std::string& theGroupID)
= 0;
/// To virtually destroy the fields of successors
virtual ~ModelAPI_Document() {}
/// To virtually destroy the fields of successors
virtual ~ModelAPI_Document() {}
@@
-99,4
+98,9
@@
protected:
{}
};
{}
};
+
+//! Pointer on document object
+typedef boost::shared_ptr<ModelAPI_Document> DocumentPtr;
+
+
#endif
#endif