class SMDS_Mesh;
-namespace SMESH{
- namespace Controls{
+namespace SMESH {
+ namespace Controls {
/*
Class : Functor
Class : Predicate
Description : Base class for all predicates
*/
- class SMESHCONTROLS_EXPORT Predicate: public virtual Functor{
+ class SMESHCONTROLS_EXPORT Predicate: public virtual Functor {
public:
virtual bool IsSatisfy( long theElementId ) = 0;
virtual SMDSAbs_ElementType GetType() const = 0;
+ virtual Predicate* clone() const { return 0; } // return a thread-safe copy of this
};
typedef boost::shared_ptr<Predicate> PredicatePtr;