Salome HOME
projects
/
modules
/
smesh.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
bos #24257 [CEA] Fatal error when creating a submesh if the mesh is on a sub-shape
[modules/smesh.git]
/
src
/
SMESHDS
/
SMESH_Controls.hxx
diff --git
a/src/SMESHDS/SMESH_Controls.hxx
b/src/SMESHDS/SMESH_Controls.hxx
index 49d6ab1d24e639468d091f7c980ea803ec6747e6..2af3a049fc1ef6018a5ecd8a8c3a840ffa231291 100644
(file)
--- a/
src/SMESHDS/SMESH_Controls.hxx
+++ b/
src/SMESHDS/SMESH_Controls.hxx
@@
-1,4
+1,4
@@
-// Copyright (C) 2007-20
12
CEA/DEN, EDF R&D, OPEN CASCADE
+// Copyright (C) 2007-20
21
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
//
// 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
// 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
//
// 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_
#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 <boost/shared_ptr.hpp>
#include "SMDSAbs_ElementType.hxx"
#include <boost/shared_ptr.hpp>
-#ifdef W
NT
+#ifdef W
IN32
#if defined SMESHCONTROLS_EXPORTS || defined SMESHControls_EXPORTS
#define SMESHCONTROLS_EXPORT __declspec( dllexport )
#else
#if defined SMESHCONTROLS_EXPORTS || defined SMESHControls_EXPORTS
#define SMESHCONTROLS_EXPORT __declspec( dllexport )
#else
@@
-39,17
+43,17
@@
class SMDS_Mesh;
class SMDS_Mesh;
-namespace SMESH{
- namespace Controls{
+namespace SMESH
{
+ namespace Controls
{
/*
Class : Functor
/*
Class : Functor
- Description : Root of all Functors
+ Description : Root of all Functors
defined in ../Controls/SMESH_ControlsDef.hxx
*/
class SMESHCONTROLS_EXPORT Functor
{
public:
*/
class SMESHCONTROLS_EXPORT Functor
{
public:
- ~Functor(){}
+
virtual
~Functor(){}
virtual void SetMesh( const SMDS_Mesh* theMesh ) = 0;
virtual SMDSAbs_ElementType GetType() const = 0;
};
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 : 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;
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;
};
typedef boost::shared_ptr<Predicate> PredicatePtr;