]> SALOME platform Git repositories - modules/smesh.git/commitdiff
Salome HOME
To destinguish in what mode (embedded or not) the SMESHDS_Mesh was created
authorapo <apo@opencascade.com>
Fri, 10 Mar 2006 11:18:05 +0000 (11:18 +0000)
committerapo <apo@opencascade.com>
Fri, 10 Mar 2006 11:18:05 +0000 (11:18 +0000)
src/SMESHClient/SMESH_Client.cxx
src/SMESHDS/SMESHDS_Mesh.cxx
src/SMESHDS/SMESHDS_Mesh.hxx

index 4e95a08b3fca5630a5234df4578c9c0763f71740..f6667a1b293aa44e6ec9b33570e48971c66e16e7 100644 (file)
@@ -375,9 +375,12 @@ SMESH_Client::SMESH_Client(CORBA::ORB_ptr theORB,
       MESSAGE("Info: The same process, update mesh by pointer ");
     // just set client mesh pointer to server mesh pointer
     SMESH_Mesh* aMesh = reinterpret_cast<SMESH_Mesh*>(theMesh->GetMeshPtr());
-    mySMESHDSMesh = aMesh->GetMeshDS();
-    mySMDSMesh = mySMESHDSMesh;
-  }else
+    if(aMesh->GetMeshDS()->IsEmbeddedMode()){
+      mySMESHDSMesh = aMesh->GetMeshDS();
+      mySMDSMesh = mySMESHDSMesh;
+    }
+  }
+  if(!mySMDSMesh)
     mySMDSMesh = new SMDS_Mesh();
 }
 
index dc048b281f38e5b5d108f46b580cb21cd8ba9b2e..c1d3cc45c57837ba80a211819b53d54db8c78341 100644 (file)
@@ -46,11 +46,18 @@ using namespace std;
 //purpose  : 
 //=======================================================================
 SMESHDS_Mesh::SMESHDS_Mesh(int theMeshID, bool theIsEmbeddedMode):
+  myIsEmbeddedMode(theIsEmbeddedMode),
   myMeshID(theMeshID)
 {
   myScript = new SMESHDS_Script(theIsEmbeddedMode);
 }
 
+//=======================================================================
+bool SMESHDS_Mesh::IsEmbeddedMode()
+{
+  return myIsEmbeddedMode;
+}
+
 //=======================================================================
 //function : ShapeToMesh
 //purpose  : 
index b5aca383329b78ae293332696781d30c92f7f4a5..61d223ebb96dce135aa8546c014aa6e717aa81ba 100644 (file)
@@ -79,6 +79,8 @@ class SMESHDS_GroupBase;
 class SMESHDS_WNT_EXPORT SMESHDS_Mesh:public SMDS_Mesh{
 public:
   SMESHDS_Mesh(int theMeshID, bool theIsEmbeddedMode);
+  bool IsEmbeddedMode();
+
   void ShapeToMesh(const TopoDS_Shape & S);
   bool AddHypothesis(const TopoDS_Shape & SS, const SMESHDS_Hypothesis * H);
   bool RemoveHypothesis(const TopoDS_Shape & S, const SMESHDS_Hypothesis * H);
@@ -499,6 +501,7 @@ private:
   TGroups myGroups;
 
   SMESHDS_Script*            myScript;
+  bool                       myIsEmbeddedMode;
 
   // optimize addition of nodes/elements to submeshes by, SetNodeInVolume() etc:
   // avoid search of submeshes in maps