Salome HOME
Merge branch 'Dev_1.1.0' of newgeom:newgeom.git into Dev_1.1.0
[modules/shaper.git] / src / ModuleBase / ModuleBase_FilterNoDegeneratedEdge.h
1 // Copyright (C) 2014-20xx CEA/DEN, EDF R&D
2
3 // File:        ModuleBase_ViewerFilters.h
4 // Created:     10 Feb 2015
5 // Author:      Natalia ERMOLAEVA
6
7
8 #ifndef ModuleBase_FilterNoDegeneratedEdge_H
9 #define ModuleBase_FilterNoDegeneratedEdge_H
10
11 #include <QStringList>
12
13 #include <StdSelect_EdgeFilter.hxx>
14 #include <SelectMgr_EntityOwner.hxx>
15
16 /**
17 * \ingroup GUI
18 * \class ModuleBase_FilterNoDegeneratedEdge
19 * An edge filter, which additionally filters degenerative edges.
20 */
21 DEFINE_STANDARD_HANDLE(ModuleBase_FilterNoDegeneratedEdge, StdSelect_EdgeFilter);
22 class ModuleBase_FilterNoDegeneratedEdge: public StdSelect_EdgeFilter
23 {
24 public:
25   /// Constructor
26   Standard_EXPORT ModuleBase_FilterNoDegeneratedEdge();
27
28   /**
29    * Returns true if the owner is computed from decomposition(it is global selection, not the sub-shapes)
30    * of if the selected result is a construction and the result feature is composite and has sub-elements.
31    * \param theOwner the result of selection
32    * \return whether the owner is selectable in the viewer
33   */
34   Standard_EXPORT virtual Standard_Boolean IsOk(const Handle(SelectMgr_EntityOwner)& theOwner) const;
35
36   DEFINE_STANDARD_RTTI(ModuleBase_FilterNoDegeneratedEdge)
37
38 protected:
39 };
40
41 #endif