+public:
+ DEFINE_STANDARD_RTTI(SMESHGUI_PredicateFilter)
+};
+
+/*
+ Class : SMESHGUI_QuadrangleFilter
+ Description : Verify whether selected cell is quadranle
+*/
+
+DEFINE_STANDARD_HANDLE(SMESHGUI_QuadrangleFilter, SMESHGUI_Filter)
+
+class SMESHGUI_QuadrangleFilter : public SMESHGUI_Filter
+{
+public:
+ Standard_EXPORT SMESHGUI_QuadrangleFilter();
+ Standard_EXPORT virtual ~SMESHGUI_QuadrangleFilter();
+
+ Standard_EXPORT virtual bool IsValid( const int ) const;
+ Standard_EXPORT virtual bool IsObjValid( const int ) const;
+ Standard_EXPORT virtual int GetId() const;
+ Standard_EXPORT virtual bool IsNodeFilter() const;
+
+public:
+ DEFINE_STANDARD_RTTI(SMESHGUI_QuadrangleFilter)
+};
+
+/*
+ Class : SMESHGUI_TriangleFilter
+ Description : Verify whether selected cell is triangle
+*/
+
+DEFINE_STANDARD_HANDLE(SMESHGUI_TriangleFilter, SMESHGUI_Filter)
+
+class SMESHGUI_TriangleFilter : public SMESHGUI_Filter
+{
+public:
+ Standard_EXPORT SMESHGUI_TriangleFilter();
+ Standard_EXPORT virtual ~SMESHGUI_TriangleFilter();
+
+ Standard_EXPORT virtual bool IsValid( const int ) const;
+ Standard_EXPORT virtual bool IsObjValid( const int ) const;
+ Standard_EXPORT virtual int GetId() const;
+ Standard_EXPORT virtual bool IsNodeFilter() const;
+
+public:
+ DEFINE_STANDARD_RTTI(SMESHGUI_TriangleFilter)
+};
+
+/*
+ Class : SMESHGUI_FacesFilter
+ Description : Verify whether selected cell is any face
+*/
+
+DEFINE_STANDARD_HANDLE(SMESHGUI_FacesFilter, SMESHGUI_Filter)
+
+class SMESHGUI_FacesFilter : public SMESHGUI_Filter
+{
+public:
+ Standard_EXPORT SMESHGUI_FacesFilter();
+ Standard_EXPORT virtual ~SMESHGUI_FacesFilter();
+
+ Standard_EXPORT virtual bool IsValid( const int ) const;
+ Standard_EXPORT virtual bool IsObjValid( const int ) const;
+ Standard_EXPORT virtual int GetId() const;
+ Standard_EXPORT virtual bool IsNodeFilter() const;
+
+public:
+ DEFINE_STANDARD_RTTI(SMESHGUI_FacesFilter)
+};
+
+/*
+ Class : SMESHGUI_VolumesFilter
+ Description : Verify whether selected cell is any volume
+*/
+
+DEFINE_STANDARD_HANDLE(SMESHGUI_VolumesFilter, SMESHGUI_Filter)
+
+class SMESHGUI_VolumesFilter : public SMESHGUI_Filter
+{
+public:
+ Standard_EXPORT SMESHGUI_VolumesFilter();
+ Standard_EXPORT virtual ~SMESHGUI_VolumesFilter();
+
+ Standard_EXPORT virtual bool IsValid( const int ) const;
+ Standard_EXPORT virtual bool IsObjValid( const int ) const;
+ Standard_EXPORT virtual int GetId() const;
+ Standard_EXPORT virtual bool IsNodeFilter() const;
+
+public:
+ DEFINE_STANDARD_RTTI(SMESHGUI_VolumesFilter)
+};
+
+/*
+ Class : SMESHGUI_VolumeShapeFilter
+ Description : Verify whether selected cell is a volume of a certain shape
+*/
+
+DEFINE_STANDARD_HANDLE(SMESHGUI_VolumeShapeFilter, SMESHGUI_Filter)
+
+class SMESHGUI_VolumeShapeFilter : public SMESHGUI_Filter
+{
+ SMDSAbs_GeometryType myGeometryType;
+public:
+ Standard_EXPORT SMESHGUI_VolumeShapeFilter(const SMDSAbs_GeometryType shape);
+
+ Standard_EXPORT virtual bool IsValid( const int ) const;
+ Standard_EXPORT virtual bool IsObjValid( const int ) const;
+ Standard_EXPORT virtual int GetId() const;
+ Standard_EXPORT virtual bool IsNodeFilter() const;
+
+ Standard_EXPORT static int GetId( SMDSAbs_GeometryType geom );
+
+public:
+ DEFINE_STANDARD_RTTI(SMESHGUI_VolumeShapeFilter)