1 // Copyright (C) 2014-20xx CEA/DEN, EDF R&D
2 // Name : SketchAPI_SketchEntity.h
6 // 07/06/16 - Sergey POKHODENKO - Creation of the file
8 #ifndef SRC_SKETCHAPI_SKETCHAPI_SKETCHENTITY_H_
9 #define SRC_SKETCHAPI_SKETCHAPI_SKETCHENTITY_H_
11 //--------------------------------------------------------------------------------------
12 #include "SketchAPI.h"
14 #include <SketchPlugin_SketchEntity.h>
16 #include <ModelHighAPI_Interface.h>
17 #include <ModelHighAPI_Macro.h>
19 class ModelAPI_Feature;
20 //--------------------------------------------------------------------------------------
21 /**\class SketchAPI_SketchEntity
23 * \brief Base class for Sketch feature interfaces
25 class SketchAPI_SketchEntity : public ModelHighAPI_Interface
28 /// Constructor without values
30 explicit SketchAPI_SketchEntity(const std::shared_ptr<ModelAPI_Feature> & theFeature);
33 virtual ~SketchAPI_SketchEntity();
37 std::shared_ptr<ModelAPI_AttributeBoolean> auxiliary() const;
41 void setAuxiliary(bool theAuxiliary);
43 /// Dump wrapped feature
44 virtual void dump(ModelHighAPI_Dumper& theDumper) const;
46 /// Convert list of features to list of appropriate wrappers
48 static std::list<std::shared_ptr<SketchAPI_SketchEntity> >
49 wrap(const std::list<std::shared_ptr<ModelAPI_Feature> >& theFeatures);
52 std::shared_ptr<ModelAPI_AttributeBoolean> myAuxiliary;
56 /// Check the entity is a copy of another feature
60 //! Pointer on SketchEntity object
61 typedef std::shared_ptr<SketchAPI_SketchEntity> SketchEntityPtr;
63 //--------------------------------------------------------------------------------------
64 //--------------------------------------------------------------------------------------
65 #endif /* SRC_SKETCHAPI_SKETCHAPI_SKETCHENTITY_H_ */