1 // Name : SketchAPI_SketchEntity.h
5 // 07/06/16 - Sergey POKHODENKO - Creation of the file
7 #ifndef SRC_SKETCHAPI_SKETCHAPI_SKETCHENTITY_H_
8 #define SRC_SKETCHAPI_SKETCHAPI_SKETCHENTITY_H_
10 //--------------------------------------------------------------------------------------
11 #include "SketchAPI.h"
13 #include <SketchPlugin_SketchEntity.h>
15 #include <ModelHighAPI_Interface.h>
16 #include <ModelHighAPI_Macro.h>
18 class ModelAPI_Feature;
19 //--------------------------------------------------------------------------------------
20 /**\class SketchAPI_SketchEntity
22 * \brief Base class for Sketch feature interfaces
24 class SketchAPI_SketchEntity : public ModelHighAPI_Interface
27 /// Constructor without values
29 explicit SketchAPI_SketchEntity(const std::shared_ptr<ModelAPI_Feature> & theFeature);
32 virtual ~SketchAPI_SketchEntity();
36 std::shared_ptr<ModelAPI_AttributeBoolean> auxiliary() const;
40 void setAuxiliary(bool theAuxiliary);
42 /// Dump wrapped feature
43 virtual void dump(ModelHighAPI_Dumper& theDumper) const;
45 /// Convert list of features to list of appropriate wrappers
47 static std::list<std::shared_ptr<ModelHighAPI_Interface> >
48 wrap(const std::list<std::shared_ptr<ModelAPI_Feature> >& theFeatures);
51 std::shared_ptr<ModelAPI_AttributeBoolean> myAuxiliary;
55 /// Check the entity is a copy of another feature
59 //! Pointer on SketchEntity object
60 typedef std::shared_ptr<SketchAPI_SketchEntity> SketchEntityPtr;
62 //--------------------------------------------------------------------------------------
63 //--------------------------------------------------------------------------------------
64 #endif /* SRC_SKETCHAPI_SKETCHAPI_SKETCHENTITY_H_ */