Salome HOME
Merge branch 'Dev_0.6.1' of newgeom:newgeom into Dev_0.6.1
[modules/shaper.git] / src / ModuleBase / ModuleBase_FilterLinearEdge.h
index 286542c925665b2659bd9e47e39006349805a59c..cdfa8e4351ad0f9976bf74e1dd9feb8e5ffd63eb 100644 (file)
 
 #include "ModuleBase_Filter.h"
 
-/**
-* A filter which provides filtering of selection in 3d viewer.
-* Installing of this filter lets to select only object of requested type
-*/
-DEFINE_STANDARD_HANDLE(ModuleBase_FilterLinearEdge, SelectMgr_Filter);
+#include <StdSelect_TypeOfEdge.hxx>
+
 class ModuleBase_FilterLinearEdge: public ModuleBase_Filter
 {
 public:
-  Standard_EXPORT ModuleBase_FilterLinearEdge(): 
-      ModuleBase_Filter() {}
+  static MODULEBASE_EXPORT StdSelect_TypeOfEdge edgeType(const std::string& theType);
 
-  Standard_EXPORT virtual Standard_Boolean IsOk(const Handle(SelectMgr_EntityOwner)& theOwner) const;
+  MODULEBASE_EXPORT ModuleBase_FilterLinearEdge(): 
+      ModuleBase_Filter() {}
 
-  DEFINE_STANDARD_RTTI(ModuleBase_FilterLinearEdge)
+  /**
+   * Sets the arguments to the filter.
+   * \param theArguments a list of arguments
+   */
+  MODULEBASE_EXPORT virtual void setArguments(const std::list<std::string>& theArguments);
+
+protected:
+  /**
+   * It creates an OCC edge filter
+   */
+  virtual void createFilter();
 
 };