X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FSMESHDS%2FSMESH_Controls.hxx;h=2af3a049fc1ef6018a5ecd8a8c3a840ffa231291;hb=b79f3c0765077420af47201c7f12b5654a6c04ed;hp=49d6ab1d24e639468d091f7c980ea803ec6747e6;hpb=bd4e115a78b52e3fbc016e5e30bb0e19b2a9e7d6;p=modules%2Fsmesh.git diff --git a/src/SMESHDS/SMESH_Controls.hxx b/src/SMESHDS/SMESH_Controls.hxx index 49d6ab1d2..2af3a049f 100644 --- a/src/SMESHDS/SMESH_Controls.hxx +++ b/src/SMESHDS/SMESH_Controls.hxx @@ -1,4 +1,4 @@ -// Copyright (C) 2007-2012 CEA/DEN, EDF R&D, OPEN CASCADE +// Copyright (C) 2007-2021 CEA/DEN, EDF R&D, OPEN CASCADE // // Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS @@ -6,7 +6,7 @@ // This library is free software; you can redistribute it and/or // modify it under the terms of the GNU Lesser General Public // License as published by the Free Software Foundation; either -// version 2.1 of the License. +// version 2.1 of the License, or (at your option) any later version. // // This library is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -23,11 +23,15 @@ #ifndef _SMESH_CONTROLS_HXX_ #define _SMESH_CONTROLS_HXX_ +// This file is named incosistently with others, i.e. not SMESHDS_Controls.hxx, +// because it was moved from ../Controls/SMESH_Controls.hxx. +// It was moved here for the sake of SMESHDS_GroupOnFilter + #include "SMDSAbs_ElementType.hxx" #include -#ifdef WNT +#ifdef WIN32 #if defined SMESHCONTROLS_EXPORTS || defined SMESHControls_EXPORTS #define SMESHCONTROLS_EXPORT __declspec( dllexport ) #else @@ -39,17 +43,17 @@ class SMDS_Mesh; -namespace SMESH{ - namespace Controls{ +namespace SMESH { + namespace Controls { /* Class : Functor - Description : Root of all Functors + Description : Root of all Functors defined in ../Controls/SMESH_ControlsDef.hxx */ class SMESHCONTROLS_EXPORT Functor { public: - ~Functor(){} + virtual ~Functor(){} virtual void SetMesh( const SMDS_Mesh* theMesh ) = 0; virtual SMDSAbs_ElementType GetType() const = 0; }; @@ -63,10 +67,11 @@ namespace SMESH{ 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 PredicatePtr;