Salome HOME
SMH: Add forgotten files
[modules/geom.git] / src / GEOMFiltersSelection / GEOM_SelectionFilter.h
1 #ifndef GEOM_SELECTIONFILTER_H
2 #define GEOM_SELECTIONFILTER_H
3
4 #include <SalomeApp_Filter.h>
5
6 #include <TopoDS_Shape.hxx>
7
8 #include <qvaluelist.h>
9
10 // IDL Headers
11 #include <SALOMEconfig.h>
12 #include CORBA_SERVER_HEADER(GEOM_Gen)
13
14 class GEOM_SelectionFilter : public SalomeApp_Filter
15 {
16 public:
17   GEOM_SelectionFilter( SalomeApp_Study* study, const bool theAll = false );
18   ~GEOM_SelectionFilter();
19
20   virtual bool isOk( const SUIT_DataOwner* ) const;
21
22 protected:
23   GEOM::GEOM_Object_ptr getObject( const SUIT_DataOwner* ) const;
24   bool                  getShape( const GEOM::GEOM_Object_ptr&, TopoDS_Shape& ) const;
25   
26   bool                  contains( const int ) const;
27   void                  add( const int );
28   void                  remove( const int );
29
30   void                  setAll( const bool );
31   bool                  isAll() const;
32
33   bool                  isShapeOk( const TopoDS_Shape& ) const;
34
35 private:
36   QValueList<int>       myTypes;
37   bool                  myAll;
38
39 };
40
41 #endif