Salome HOME
A patch by Paul RASCLE for ASTER cluster (64 bits). V3_2_6pre2
authorjfa <jfa@opencascade.com>
Thu, 15 Mar 2007 06:55:40 +0000 (06:55 +0000)
committerjfa <jfa@opencascade.com>
Thu, 15 Mar 2007 06:55:40 +0000 (06:55 +0000)
idl/SMESH_Mesh.idl
src/SMESH/SMESH_MeshEditor.cxx
src/SMESHClient/SMESH_Client.cxx
src/SMESH_I/SMESH_Mesh_i.cxx
src/SMESH_I/SMESH_Mesh_i.hxx

index a8ffd3a0b3122032e41408edcdb07b349b230e97..0e9d8ceb8abc167faaafe6448e35b4de92ba3d20 100644 (file)
@@ -503,7 +503,7 @@ module SMESH
     /*!
      * Get mesh pointer
      */
-    long GetMeshPtr();
+    long long GetMeshPtr();
 
     /*!
      * Get XYZ coordinates of node as list of double
index e9de338f04991a3a7bc0fa0e3116b5fe0b80220b..6c941745368ac24ba2d12b305d7660518f2aedc8 100644 (file)
@@ -2745,7 +2745,11 @@ static void sweepElement(SMESHDS_Mesh*                         aMesh,
   // Loop on elem nodes:
   // find new nodes and detect same nodes indices
   int nbNodes = elem->NbNodes();
-  list<const SMDS_MeshNode*>::const_iterator itNN[ nbNodes ];
+  //---PR
+  //list<const SMDS_MeshNode*>::const_iterator itNN[ nbNodes ];
+  vector < list< const SMDS_MeshNode* >::const_iterator > itNN;
+  itNN.reserve(nbNodes);
+  //---PR
   const SMDS_MeshNode* prevNod[ nbNodes ], *nextNod[ nbNodes ], *midlNod[ nbNodes ];
   int iNode, nbSame = 0, iNotSameNode = 0, iSameNode = 0;
   vector<int> sames(nbNodes);
index bd52bc0428ce0c69386ac598d4806c0981aa6308..990bfa634bd20686cb5f22c631ec745c2fec7314 100644 (file)
@@ -621,7 +621,11 @@ SMESH_Client::SMESH_Client(CORBA::ORB_ptr theORB,
     if ( MYDEBUG )
       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());
+    //SMESH_Mesh* aMesh = reinterpret_cast<SMESH_Mesh*>(theMesh->GetMeshPtr());
+    CORBA::LongLong pointeur = theMesh->GetMeshPtr();
+    cerr <<"SMESH_Client::SMESH_Client pointeur " << pointeur << endl;
+    SMESH_Mesh* aMesh = reinterpret_cast<SMESH_Mesh*> (pointeur);
+    cerr <<"SMESH_Client::SMESH_Client aMesh " << aMesh << endl;
     if(aMesh->GetMeshDS()->IsEmbeddedMode()){
       mySMESHDSMesh = aMesh->GetMeshDS();
       mySMDSMesh = mySMESHDSMesh;
index da4a9b2a019b74162b9351bbb2818e512d9c7bf9..8374856d010f14d201c6025fbd0488ac4e2e752f 100644 (file)
@@ -1813,9 +1813,11 @@ SMESH::ElementType SMESH_Mesh_i::GetSubMeshElementType(const CORBA::Long ShapeID
  */
 //=============================================================================
 
-CORBA::Long SMESH_Mesh_i::GetMeshPtr()
+CORBA::LongLong SMESH_Mesh_i::GetMeshPtr()
 {
-  return CORBA::Long(size_t(_impl));
+  CORBA::LongLong pointeur = CORBA::LongLong(_impl);
+  cerr << "CORBA::LongLong SMESH_Mesh_i::GetMeshPtr() " << pointeur << endl;
+  return pointeur;
 }
 
 
index 7074e1783b70f623d33dd708130320d8a0b409b2..4ced88de06f698ab027482726afc1d0ef5814205 100644 (file)
@@ -309,7 +309,7 @@ public:
 
   virtual SMESH::long_array* GetIDs();
 
-  CORBA::Long GetMeshPtr();
+  CORBA::LongLong GetMeshPtr();
 
 
   /*!