]> SALOME platform Git repositories - modules/shaper.git/blob - src/ModuleBase/ModuleBase_FilterShapeType.h
Salome HOME
9cf3208ebaf1c281255e56ee0321cb02421d6fd6
[modules/shaper.git] / src / ModuleBase / ModuleBase_FilterShapeType.h
1 // Copyright (C) 2014-20xx CEA/DEN, EDF R&D
2
3 // File:        ModuleBase_FilterShapeType.h
4 // Created:     12 Jan 2015
5 // Author:      Natalia ERMOLAEVA
6
7 #ifndef ModuleBase_FilterShapeType_H
8 #define ModuleBase_FilterShapeType_H
9
10 #include "ModuleBase.h"
11
12 #include "ModuleBase_Filter.h"
13
14 #include <StdSelect_TypeOfFace.hxx>
15
16 /**
17 * A class of a viewer filter by shape type
18 */
19 class ModuleBase_FilterShapeType: public ModuleBase_Filter
20 {
21 public:
22   /// Constructor 
23   /// \param theType type of shape
24   static MODULEBASE_EXPORT TopAbs_ShapeEnum shapeType(const std::string& theType);
25
26   MODULEBASE_EXPORT ModuleBase_FilterShapeType();
27
28   /**
29    * Sets the arguments to the filter.
30    * \param theArguments a list of arguments
31    */
32   MODULEBASE_EXPORT virtual void setArguments(const std::list<std::string>& theArguments);
33
34 protected:
35   /**
36    * It creates an OCC face filter
37    */
38   virtual void createFilter();
39
40 private:
41   /// the shape type of the filter
42   TopAbs_ShapeEnum myShapeType; 
43 };
44
45 #endif //ModuleBase_FilterShapeType