Salome HOME
Merge V8_4_BR branch.
[modules/smesh.git] / src / SMESH_I / SMESH_Gen_i.cxx
index 44cbff77a89b9974ac9e027ab25c9ce86307d1fd..89317f87fe79d11376029812723c79cb781f3123 100644 (file)
  #define LoadLib( name ) LoadLibrary( name )
  #define GetProc GetProcAddress
  #define UnLoadLib( handle ) FreeLibrary( handle );
-#else
+#else // WIN32
  #define LibHandle void*
- #define LoadLib( name ) dlopen( name, RTLD_LAZY | RTLD_GLOBAL )
+ #ifdef DYNLOAD_LOCAL
+  #define LoadLib( name ) dlopen( name, RTLD_LAZY | RTLD_LOCAL )
+ #else // DYNLOAD_LOCAL
+  #define LoadLib( name ) dlopen( name, RTLD_LAZY | RTLD_GLOBAL )
+ #endif // DYNLOAD_LOCAL
  #define GetProc dlsym
  #define UnLoadLib( handle ) dlclose( handle );
-#endif
+#endif // WIN32
 
 #include "SMESH_Gen_i.hxx"
 #include "SMESH_version.h"
@@ -2560,7 +2564,7 @@ SMESH_Gen_i::ConcatenateCommon(const SMESH::ListOfIDSources& theMeshesArray,
         const char* typeNames[] = { "All","Nodes","Edges","Faces","Volumes","0DElems","Balls" };
         { // check of typeNames: compilation failure mains that NB_ELEMENT_TYPES changed:
           const int nbNames = sizeof(typeNames) / sizeof(const char*);
-          int _assert[( nbNames == SMESH::NB_ELEMENT_TYPES ) ? 2 : -1 ]; _assert[0]=_assert[1];
+          int _assert[( nbNames == SMESH::NB_ELEMENT_TYPES ) ? 2 : -1 ]; _assert[0]=_assert[1]=0;
         }
         string groupName = "Gr";
         SALOMEDS::SObject_wrap aMeshSObj = ObjectToSObject( myCurrentStudy, theMeshesArray[i] );
@@ -2968,8 +2972,19 @@ CORBA::Boolean SMESH_Gen_i::GetMEDVersion(const char* theFileName,
   theVersion = SMESH::MED_V2_1;
   MED::EVersion aVersion = MED::GetVersionId( theFileName );
   switch( aVersion ) {
-    case MED::eV2_1     : theVersion = SMESH::MED_V2_1; return true;
-    case MED::eV2_2     : theVersion = SMESH::MED_V2_2; return true;
+    case MED::eV2_1     : theVersion = SMESH::MED_V2_1;    return true;
+    case MED::eV2_2     : theVersion = SMESH::MED_V2_2;    return true;
+    case MED::eLATEST   : theVersion = SMESH::MED_LATEST;  return true;
+    case MED::eMINOR_0  : theVersion = SMESH::MED_MINOR_0; return true;
+    case MED::eMINOR_1  : theVersion = SMESH::MED_MINOR_1; return true;
+    case MED::eMINOR_2  : theVersion = SMESH::MED_MINOR_2; return true;
+    case MED::eMINOR_3  : theVersion = SMESH::MED_MINOR_3; return true;
+    case MED::eMINOR_4  : theVersion = SMESH::MED_MINOR_4; return true;
+    case MED::eMINOR_5  : theVersion = SMESH::MED_MINOR_5; return true;
+    case MED::eMINOR_6  : theVersion = SMESH::MED_MINOR_6; return true;
+    case MED::eMINOR_7  : theVersion = SMESH::MED_MINOR_7; return true;
+    case MED::eMINOR_8  : theVersion = SMESH::MED_MINOR_8; return true;
+    case MED::eMINOR_9  : theVersion = SMESH::MED_MINOR_9; return true;
     case MED::eVUnknown : return false;
   }
   return false;
@@ -3812,7 +3827,7 @@ SALOMEDS::TMPFile* SMESH_Gen_i::Save( SALOMEDS::SComponent_ptr theComponent,
                 // "Face V positions" - V parameter of node on face
 
                 // Find out nb of nodes on edges and faces
-                // Collect corresponing sub-meshes
+                // Collect corresponding sub-meshes
                 int nbEdgeNodes = 0, nbFaceNodes = 0;
                 list<SMESHDS_SubMesh*> aEdgeSM, aFaceSM;
                 // loop on SMESHDS_SubMesh'es