20 #ifndef SRC_MODELHIGHAPI_MODELHIGHAPI_FOLDER_H_
21 #define SRC_MODELHIGHAPI_MODELHIGHAPI_FOLDER_H_
24 #include <ModelHighAPI_Interface.h>
26 #include <ModelAPI_Folder.h>
48 virtual std::string getID() {
return ID(); }
49 const std::shared_ptr<ModelAPI_Folder>& folder()
const {
return myFolder;}
53 {
return myFirstFeature; }
56 std::shared_ptr<ModelAPI_AttributeReference>
lastFeature()
const
57 {
return myLastFeature; }
61 void setName(
const std::wstring& theName);
65 std::wstring
name()
const;
79 std::shared_ptr<ModelAPI_Folder> myFolder;
81 std::shared_ptr<ModelAPI_AttributeReference> myFirstFeature;
82 std::shared_ptr<ModelAPI_AttributeReference> myLastFeature;
90 std::shared_ptr<ModelHighAPI_Folder>
addFolder(
const std::shared_ptr<ModelAPI_Document>& theDoc);
96 std::shared_ptr<ModelHighAPI_Folder>
addFolder(
const std::shared_ptr<ModelAPI_Document>& theDoc,
103 void removeFolder(std::shared_ptr<ModelHighAPI_Folder>& theFolder);
Attribute that contains reference to feature (located in the same document).
Definition: ModelAPI_AttributeReference.h:32
Document for internal data structure of any object storage.
Definition: ModelAPI_Document.h:53
static const std::string & ID()
Folder feature ID.
Definition: ModelAPI_Folder.h:38
Dump engine for the model.
Definition: ModelHighAPI_Dumper.h:81
Class for filling ModelAPI_Folder.
Definition: ModelHighAPI_Folder.h:39
void setName(const std::wstring &theName)
Shortcut for data()->setName()
Definition: ModelHighAPI_Folder.cpp:62
ModelHighAPI_Folder(const std::shared_ptr< ModelAPI_Folder > &theFolder)
Constructor for a folder.
Definition: ModelHighAPI_Folder.cpp:31
virtual void dump(ModelHighAPI_Dumper &theDumper) const
To update the folder state.
Definition: ModelHighAPI_Folder.cpp:73
std::shared_ptr< ModelAPI_AttributeReference > lastFeature() const
Last feature reference.
Definition: ModelHighAPI_Folder.h:56
std::shared_ptr< ModelAPI_AttributeReference > firstFeature() const
First feature reference.
Definition: ModelHighAPI_Folder.h:52
virtual ~ModelHighAPI_Folder()
Destructor.
Definition: ModelHighAPI_Folder.cpp:38
std::wstring name() const
Shortcut for data()->name()
Definition: ModelHighAPI_Folder.cpp:68
Base class for feature interfaces.
Definition: ModelHighAPI_Interface.h:46
Class for filling ModelAPI_AttributeReference.
Definition: ModelHighAPI_Reference.h:41
void removeFolder(std::shared_ptr< ModelHighAPI_Folder > &theFolder)
Removes Folder feature.
Definition: ModelHighAPI_Folder.cpp:119
std::shared_ptr< ModelHighAPI_Folder > addFolder(const std::shared_ptr< ModelAPI_Document > &theDoc)
Create empty Folder feature.
Definition: ModelHighAPI_Folder.cpp:95