20 #ifndef PlaneGCSSolver_EntityWrapper_H_
21 #define PlaneGCSSolver_EntityWrapper_H_
23 #include <PlaneGCSSolver_Defs.h>
31 typedef std::shared_ptr<PlaneGCSSolver_EntityWrapper> EntityWrapperPtr;
43 virtual SketchSolver_EntityType
type()
const = 0;
46 void setExternal(
bool theExternal) { myExternal = theExternal; }
52 { myAdditionalAttributes = theAttribues; }
55 {
return myAdditionalAttributes; }
60 virtual bool update(std::shared_ptr<ModelAPI_Attribute> theAttribute)
67 std::map<std::string, EntityWrapperPtr> myAdditionalAttributes;
Generic attribute of the Object.
Definition: ModelAPI_Attribute.h:34
Converts ModelAPI_Attribute to the entity applicable for PlaneGCS solver.
Definition: PlaneGCSSolver_AttributeBuilder.h:30
Wrapper providing operations with entities regardless the solver.
Definition: PlaneGCSSolver_EntityWrapper.h:37
void setAdditionalAttributes(const std::map< std::string, EntityWrapperPtr > &theAttribues)
Store names of attributes and their values if necessary.
Definition: PlaneGCSSolver_EntityWrapper.h:51
virtual bool update(std::shared_ptr< ModelAPI_Attribute > theAttribute)
Update entity by the values of theAttribute.
Definition: PlaneGCSSolver_EntityWrapper.h:60
const std::map< std::string, EntityWrapperPtr > & additionalAttributes() const
Return the list of additional attributes.
Definition: PlaneGCSSolver_EntityWrapper.h:54
void setExternal(bool theExternal)
Change flag indicating the entity cannot be changed in the solver.
Definition: PlaneGCSSolver_EntityWrapper.h:46
virtual SketchSolver_EntityType type() const =0
Return type of current entity.
bool isExternal() const
Return the External flag.
Definition: PlaneGCSSolver_EntityWrapper.h:48