]> SALOME platform Git repositories - modules/med.git/commitdiff
Salome HOME
Deleted Study parameter mpa/23299
authormpa <mpa@opencascade.com>
Fri, 3 Feb 2017 13:21:39 +0000 (16:21 +0300)
committermpa <mpa@opencascade.com>
Fri, 3 Feb 2017 13:21:39 +0000 (16:21 +0300)
doc/dev/sphinx/fr/medop-prototype-develguide.rst
doc/dev/sphinx/fr/medop-prototype-medmem.rst
doc/dev/sphinx/medop-prototype-develguide.rst
doc/dev/sphinx/medop-prototype-medmem.rst
idl/MED_Gen.idl
resources/MEDCatalog.xml.in
src/MEDCalc/cmp/MED.cxx
src/MEDCalc/cmp/MED.hxx
src/MEDCalc/gui/DatasourceController.cxx
src/MEDCalc/gui/PresentationController.cxx

index 60e09a3b8dfcfdcbf653c05f0e6e6c743ed31333..643ffe88cc1b3a18fe97ae671b05e54500263999 100644 (file)
@@ -561,7 +561,6 @@ donnée du servant ``SALOME_MED::FIELD`` qui lui est associé
    import VISU
 
    visuComp = salome.lcc.FindOrLoadComponent("FactoryServer", "VISU")
-   visuComp.SetCurrentStudy(salome.myStudy)
 
    # Then we can import the specified field in the VISU module. This
    # creates an study entry in the VISU folder.
index 3e825e8cb05bc770e6e20892538a43baec9cd0e1..8a9901bfce2e2e29f1571b281f817e3f6425c5ce 100644 (file)
@@ -478,7 +478,6 @@ les exemples précédents):
    # Get the VISU component
    import VISU
    visuComp = salome.lcc.FindOrLoadComponent("FactoryServer", "VISU")
-   visuComp.SetCurrentStudy(salome.myStudy)
 
    # Get the sobject associated to the med object named "Med"
    aSObject = salome.myStudy.FindObject("Med")
index 0bc2eae9048aa1c155da17f923d27cb45f9ad2c1..524911f70530e07f52a744425d376ff159c8afce 100644 (file)
@@ -561,7 +561,6 @@ donnée du servant ``SALOME_MED::FIELD`` qui lui est associé
    import VISU
 
    visuComp = salome.lcc.FindOrLoadComponent("FactoryServer", "VISU")
-   visuComp.SetCurrentStudy(salome.myStudy)
 
    # Then we can import the specified field in the VISU module. This
    # creates an study entry in the VISU folder.
index 9c29fee19753f03de03d37586df8bb5cdd2d69b1..dd70c5d2a90ee753128b9eed39cb7f306524e5ab 100644 (file)
@@ -478,7 +478,6 @@ les exemples précédents):
    # Get the VISU component
    import VISU
    visuComp = salome.lcc.FindOrLoadComponent("FactoryServer", "VISU")
-   visuComp.SetCurrentStudy(salome.myStudy)
 
    # Get the sobject associated to the med object named "Med"
    aSObject = salome.myStudy.FindObject("Med")
index 7b13765e5910815b1a341de52cc0c1f8b5131d55..c720a3e6bb02533e115bae4f5ede6f30be9a09a4 100644 (file)
@@ -39,40 +39,34 @@ module MED_ORB
   interface
   MED_Gen : Engines::EngineComponent
   {
-    status addDatasourceToStudy(in SALOMEDS::Study study,
-                                in MEDCALC::DatasourceHandler datasourceHandler)
+    status addDatasourceToStudy(in MEDCALC::DatasourceHandler datasourceHandler)
       raises (SALOME::SALOME_Exception);
 
-    status registerPresentationField(in SALOMEDS::Study study,
-                                in long fieldId,
-                                in string name,
-                                in string type,
-                                in string ico,
-                                in long presentationId)
+    status registerPresentationField(in long fieldId,
+                                     in string name,
+                                     in string type,
+                                     in string ico,
+                                     in long presentationId)
       raises (SALOME::SALOME_Exception);
 
-    status registerPresentationMesh(in SALOMEDS::Study study,
-                                    in long meshId,
+    status registerPresentationMesh(in long meshId,
                                     in string name,
                                     in string type,
                                     in string ico,
                                     in long presentationId)
           raises (SALOME::SALOME_Exception);
 
-    status unregisterPresentation(in SALOMEDS::Study study,
-                                  in long presentationId)
+    status unregisterPresentation(in long presentationId)
       raises (SALOME::SALOME_Exception);
 
-//    PresentationsList getSiblingPresentations(in SALOMEDS::Study study,
-//                                              in long presentationId)
+//    PresentationsList getSiblingPresentations(in long presentationId)
 //      raises (SALOME::SALOME_Exception);
 
     // Get all presentations in study:
-    PresentationsList getStudyPresentations(in SALOMEDS::Study study)
+    PresentationsList getStudyPresentations()
       raises (SALOME::SALOME_Exception);
 
-    string getStudyPresentationEntry(in SALOMEDS::Study study,
-                                                in long presentationId)
+    string getStudyPresentationEntry(in long presentationId)
       raises (SALOME::SALOME_Exception);
 
     void cleanUp();
index 1eda374d3373305179c4f671a9a4bdad5831fa65..e7bab563e1af28f2728398da8be07617fe63f4fa 100644 (file)
@@ -79,7 +79,6 @@
                 <component-author>Guillaume Boulant</component-author>
                 <component-version>@SALOMEMED_VERSION@</component-version>
                 <component-comment>Factory of SALOME components for MED Field operations</component-comment>
-                <component-multistudy>0</component-multistudy>
         </component>
 
         <component>
@@ -88,7 +87,6 @@
             <component-type>MED</component-type>
             <component-version>@SALOMEMED_VERSION@</component-version>
             <component-comment>MED component engine</component-comment>
-            <component-multistudy>0</component-multistudy>
         </component>
 
 </component-list>
index 3ec7bbe090ac9beca584e3f69cea152549c5702d..65fe2b326f0c17325028baaf35ba623c54e5c1f4 100644 (file)
@@ -29,6 +29,7 @@
 #include <SALOME_LifeCycleCORBA.hxx>
 #include <SALOME_NamingService.hxx>
 #include <SALOME_KernelServices.hxx>
+#include <SALOMEDSImpl_AttributeParameter.hxx>
 
 #include <string>
 #include <sstream>
@@ -63,27 +64,27 @@ MED::~MED()
 }
 
 MED_ORB::status
-MED::addDatasourceToStudy(SALOMEDS::Study_ptr study,
-                          const MEDCALC::DatasourceHandler& datasourceHandler)
+MED::addDatasourceToStudy(const MEDCALC::DatasourceHandler& datasourceHandler)
 {
   // set exception handler to catch unexpected CORBA exceptions
   Unexpect aCatch(SALOME_SalomeException);
 
+  SALOMEDS::Study_var aStudy = KERNEL::getStudyServant();
   // check if reference to study is valid
-  if (!CORBA::is_nil(study)) {
+  if (!CORBA::is_nil(aStudy)) {
     // get full object path
     std::string fullName = CORBA::string_dup(datasourceHandler.name);
     // check if the object with the same name is already registered in the study
-    SALOMEDS::SObject_var sobj = study->FindObjectByPath(fullName.c_str());
+    SALOMEDS::SObject_var sobj = aStudy->FindObjectByPath(fullName.c_str());
     if (CORBA::is_nil(sobj)) {
       // object is not registered yet -> register
       SALOMEDS::GenericAttribute_var anAttr;
       SALOMEDS::AttributeParameter_var aParam;
-      SALOMEDS::StudyBuilder_var studyBuilder = study->NewBuilder();
-      SALOMEDS::UseCaseBuilder_var useCaseBuilder = study->GetUseCaseBuilder();
+      SALOMEDS::StudyBuilder_var studyBuilder = aStudy->NewBuilder();
+      SALOMEDS::UseCaseBuilder_var useCaseBuilder = aStudy->GetUseCaseBuilder();
 
       // find MED component; create it if not found
-      SALOMEDS::SComponent_var father = study->FindComponent("MED");
+      SALOMEDS::SComponent_var father = aStudy->FindComponent("MED");
       if (CORBA::is_nil(father)) {
         // create component
         father = studyBuilder->NewComponent("MED");
@@ -159,12 +160,11 @@ MED::addDatasourceToStudy(SALOMEDS::Study_ptr study,
 }
 
 MED_ORB::status
-MED::registerPresentationField(SALOMEDS::Study_ptr study,
-                          CORBA::Long fieldId,
-                          const char* name,
-                          const char* type,
-                          const char* ico,
-                          CORBA::Long presentationId)
+MED::registerPresentationField(CORBA::Long fieldId,
+                               const char* name,
+                               const char* type,
+                               const char* ico,
+                               CORBA::Long presentationId)
 {
   // set exception handler to catch unexpected CORBA exceptions
   Unexpect aCatch(SALOME_SalomeException);
@@ -181,7 +181,8 @@ MED::registerPresentationField(SALOMEDS::Study_ptr study,
     return MED_ORB::OP_ERROR ;
   }
   std::string entry = _fieldSeriesEntries[fieldSeriesId];
-  SALOMEDS::SObject_var sobject = study->FindObjectID(entry.c_str());
+  SALOMEDS::Study_var aStudy = KERNEL::getStudyServant();
+  SALOMEDS::SObject_var sobject = aStudy->FindObjectID(entry.c_str());
   SALOMEDS::SObject_ptr soFieldseries = sobject._retn();
 
   if (soFieldseries->IsNull()) {
@@ -189,8 +190,8 @@ MED::registerPresentationField(SALOMEDS::Study_ptr study,
     return MED_ORB::OP_ERROR;
   }
 
-  SALOMEDS::StudyBuilder_var studyBuilder = study->NewBuilder();
-  SALOMEDS::UseCaseBuilder_var useCaseBuilder = study->GetUseCaseBuilder();
+  SALOMEDS::StudyBuilder_var studyBuilder = aStudy->NewBuilder();
+  SALOMEDS::UseCaseBuilder_var useCaseBuilder = aStudy->GetUseCaseBuilder();
   SALOMEDS::SObject_var soPresentation = studyBuilder->NewObject(soFieldseries);
   useCaseBuilder->AppendTo(soPresentation->GetFather(), soPresentation);
 
@@ -210,12 +211,11 @@ MED::registerPresentationField(SALOMEDS::Study_ptr study,
 }
 
 MED_ORB::status
-MED::registerPresentationMesh(SALOMEDS::Study_ptr study,
-                          CORBA::Long meshId,
-                          const char* name,
-                          const char* type,
-                          const char* ico,
-                          CORBA::Long presentationId)
+MED::registerPresentationMesh(CORBA::Long meshId,
+                              const char* name,
+                              const char* type,
+                              const char* ico,
+                              CORBA::Long presentationId)
 {
   // set exception handler to catch unexpected CORBA exceptions
   Unexpect aCatch(SALOME_SalomeException);
@@ -231,7 +231,8 @@ MED::registerPresentationMesh(SALOMEDS::Study_ptr study,
     return MED_ORB::OP_ERROR ;
   }
   std::string entry = _meshEntries[meshHandler->id];
-  SALOMEDS::SObject_var sobject = study->FindObjectID(entry.c_str());
+  SALOMEDS::Study_var aStudy = KERNEL::getStudyServant();
+  SALOMEDS::SObject_var sobject = aStudy->FindObjectID(entry.c_str());
   SALOMEDS::SObject_ptr soMesh = sobject._retn();
 
   if (soMesh->IsNull()) {
@@ -239,8 +240,8 @@ MED::registerPresentationMesh(SALOMEDS::Study_ptr study,
     return MED_ORB::OP_ERROR;
   }
 
-  SALOMEDS::StudyBuilder_var studyBuilder = study->NewBuilder();
-  SALOMEDS::UseCaseBuilder_var useCaseBuilder = study->GetUseCaseBuilder();
+  SALOMEDS::StudyBuilder_var studyBuilder = aStudy->NewBuilder();
+  SALOMEDS::UseCaseBuilder_var useCaseBuilder = aStudy->GetUseCaseBuilder();
   SALOMEDS::SObject_var soPresentation = studyBuilder->NewObject(soMesh);
   useCaseBuilder->AppendTo(soPresentation->GetFather(), soPresentation);
 
@@ -261,18 +262,18 @@ MED::registerPresentationMesh(SALOMEDS::Study_ptr study,
 
 
 MED_ORB::status
-MED::unregisterPresentation(SALOMEDS::Study_ptr study,
-                            CORBA::Long presentationId)
+MED::unregisterPresentation(CORBA::Long presentationId)
 {
   // set exception handler to catch unexpected CORBA exceptions
   Unexpect aCatch(SALOME_SalomeException);
 
-  SALOMEDS::StudyBuilder_var studyBuilder = study->NewBuilder();
-  SALOMEDS::UseCaseBuilder_var useCaseBuilder = study->GetUseCaseBuilder();
+  SALOMEDS::Study_var aStudy = KERNEL::getStudyServant();
+  SALOMEDS::StudyBuilder_var studyBuilder = aStudy->NewBuilder();
+  SALOMEDS::UseCaseBuilder_var useCaseBuilder = aStudy->GetUseCaseBuilder();
 
   SALOMEDS::GenericAttribute_var anAttribute;
-  SALOMEDS::SComponent_var father = study->FindComponent("MED");
-  SALOMEDS::ChildIterator_var it = study->NewChildIterator(father);
+  SALOMEDS::SComponent_var father = aStudy->FindComponent("MED");
+  SALOMEDS::ChildIterator_var it = aStudy->NewChildIterator(father);
   for (it->InitEx(true); it->More(); it->Next()) {
     SALOMEDS::SObject_var child(it->Value());
 
@@ -294,19 +295,20 @@ MED::unregisterPresentation(SALOMEDS::Study_ptr study,
 }
 
 MED_ORB::PresentationsList*
-MED::getStudyPresentations(SALOMEDS::Study_ptr study)
+MED::getStudyPresentations()
 {
   // set exception handler to catch unexpected CORBA exceptions
   Unexpect aCatch(SALOME_SalomeException);
 
   MED_ORB::PresentationsList* presList = new MED_ORB::PresentationsList;
 
-  SALOMEDS::StudyBuilder_var studyBuilder = study->NewBuilder();
-  SALOMEDS::UseCaseBuilder_var useCaseBuilder = study->GetUseCaseBuilder();
+  SALOMEDS::Study_var aStudy = KERNEL::getStudyServant();
+  SALOMEDS::StudyBuilder_var studyBuilder = aStudy->NewBuilder();
+  SALOMEDS::UseCaseBuilder_var useCaseBuilder = aStudy->GetUseCaseBuilder();
 
   SALOMEDS::GenericAttribute_var anAttribute;
-  SALOMEDS::SComponent_var father = study->FindComponent("MED");
-  SALOMEDS::ChildIterator_var it = study->NewChildIterator(father);
+  SALOMEDS::SComponent_var father = aStudy->FindComponent("MED");
+  SALOMEDS::ChildIterator_var it = aStudy->NewChildIterator(father);
   for (it->InitEx(true); it->More(); it->Next())
     {
       SALOMEDS::SObject_var child(it->Value());
@@ -325,19 +327,20 @@ MED::getStudyPresentations(SALOMEDS::Study_ptr study)
 }
 
 char*
-MED::getStudyPresentationEntry(SALOMEDS::Study_ptr study, CORBA::Long presentationId)
+MED::getStudyPresentationEntry(CORBA::Long presentationId)
 {
   // set exception handler to catch unexpected CORBA exceptions
   Unexpect aCatch(SALOME_SalomeException);
 
   MED_ORB::PresentationsList* presList = new MED_ORB::PresentationsList;
 
-  SALOMEDS::StudyBuilder_var studyBuilder = study->NewBuilder();
-  SALOMEDS::UseCaseBuilder_var useCaseBuilder = study->GetUseCaseBuilder();
+  SALOMEDS::Study_var aStudy = KERNEL::getStudyServant();
+  SALOMEDS::StudyBuilder_var studyBuilder = aStudy->NewBuilder();
+  SALOMEDS::UseCaseBuilder_var useCaseBuilder = aStudy->GetUseCaseBuilder();
 
   SALOMEDS::GenericAttribute_var anAttribute;
-  SALOMEDS::SComponent_var father = study->FindComponent("MED");
-  SALOMEDS::ChildIterator_var it = study->NewChildIterator(father);
+  SALOMEDS::SComponent_var father = aStudy->FindComponent("MED");
+  SALOMEDS::ChildIterator_var it = aStudy->NewChildIterator(father);
   for (it->InitEx(true); it->More(); it->Next())
     {
       SALOMEDS::SObject_var child(it->Value());
@@ -360,15 +363,7 @@ MED::DumpPython(CORBA::Boolean isPublished,
                 CORBA::Boolean isMultiFile,
                 CORBA::Boolean& isValidScript)
 {
-  SALOME_LifeCycleCORBA lcc;
-  CORBA::Object_var theStudy = lcc.namingService()->Resolve("/Study");
-  SALOMEDS::Study_var aStudy = SALOMEDS::Study::_narrow(theStudy);
-  if(CORBA::is_nil(aStudy)) {
-    std::cerr << "Error: Cannot find the study\n";
-    return new Engines::TMPFile(0);
-  }
-
-  SALOMEDS::SObject_var aSO = aStudy->FindComponent("MED");
+  SALOMEDS::SObject_var aSO = KERNEL::getStudyServant()->FindComponent("MED");
   if(CORBA::is_nil(aSO)) {
     std::cerr << "Error: Cannot find component MED\n";
     return new Engines::TMPFile(0);
@@ -402,10 +397,7 @@ MED::hasObjectInfo()
 char*
 MED::getObjectInfo(const char* entry)
 {
-  SALOME_LifeCycleCORBA lcc;
-  CORBA::Object_var aStudyObject = lcc.namingService()->Resolve("/Study");
-  SALOMEDS::Study_var aStudy = SALOMEDS::Study::_narrow( aStudyObject );
-  SALOMEDS::SObject_var aSObj = aStudy->FindObjectID( entry );
+  SALOMEDS::SObject_var aSObj = KERNEL::getStudyServant()->FindObjectID( entry );
   SALOMEDS::SObject_var aResultSObj;
   if (aSObj->ReferencedObject(aResultSObj))
     aSObj = aResultSObj;
index 69a62539055bbd537c9ab3220ef7329f0987c620..c8e9d213e333c0fd6021dc7c7e475369fc577f16 100644 (file)
@@ -35,7 +35,6 @@
 #include CORBA_SERVER_HEADER(MEDDataManager)
 #include CORBA_CLIENT_HEADER(SALOMEDS)
 #include <SALOME_Component_i.hxx>
-#include <SALOMEDS_Study.hxx>
 
 #include <map>
 #include <string>
@@ -52,34 +51,29 @@ public:
       const char* interfaceName);
   virtual ~MED();
 
-  MED_ORB::status addDatasourceToStudy(SALOMEDS::Study_ptr study,
-                                       const MEDCALC::DatasourceHandler& datasourceHandler);
+  MED_ORB::status addDatasourceToStudy(const MEDCALC::DatasourceHandler& datasourceHandler);
 
-  MED_ORB::status registerPresentationField(SALOMEDS::Study_ptr study,
-                                       CORBA::Long fieldId,
-                                       const char* name,
-                                       const char* type,
-                                       const char* ico,
-                                       CORBA::Long presentationId);
+  MED_ORB::status registerPresentationField(CORBA::Long fieldId,
+                                            const char* name,
+                                            const char* type,
+                                            const char* ico,
+                                            CORBA::Long presentationId);
 
-  MED_ORB::status registerPresentationMesh(SALOMEDS::Study_ptr study,
-                                         CORBA::Long meshId,
-                                         const char* name,
-                                         const char* type,
-                                         const char* ico,
-                                         CORBA::Long presentationId);
+  MED_ORB::status registerPresentationMesh(CORBA::Long meshId,
+                                           const char* name,
+                                           const char* type,
+                                           const char* ico,
+                                           CORBA::Long presentationId);
 
-  MED_ORB::status unregisterPresentation(SALOMEDS::Study_ptr study,
-                                         CORBA::Long presentationId);
+  MED_ORB::status unregisterPresentation(CORBA::Long presentationId);
 
 //  // Caller owns the returned list, and is responsible for the list deletion.
-//  MED_ORB::PresentationsList* getSiblingPresentations(SALOMEDS::Study_ptr study,
-//                                                      CORBA::Long presentationId);
+//  MED_ORB::PresentationsList* getSiblingPresentations(CORBA::Long presentationId);
 
   // Get all presentations registered in the study
-  MED_ORB::PresentationsList* getStudyPresentations(SALOMEDS::Study_ptr study);
+  MED_ORB::PresentationsList* getStudyPresentations();
 
-  char* getStudyPresentationEntry(SALOMEDS::Study_ptr study, CORBA::Long presentationId);
+  char* getStudyPresentationEntry(CORBA::Long presentationId);
 
   void cleanUp();
 
index 3797c1b093d8981410f5c11a04efb16c9420bdf7..4aec2a40f18384e1066b07414d5d61bec3e4dfe1 100644 (file)
@@ -138,10 +138,7 @@ DatasourceController::updateTreeViewWithNewDatasource(const MEDCALC::DatasourceH
     return;
   }
 
-  SalomeApp_Study* study = dynamic_cast<SalomeApp_Study*>(_salomeModule->application()->activeStudy());
-  _PTR(Study) studyDS = study->studyDS();
-
-  _salomeModule->engine()->addDatasourceToStudy(_CAST(Study, studyDS)->GetStudy(), *datasourceHandler);
+  _salomeModule->engine()->addDatasourceToStudy(*datasourceHandler);
 
   // update Object browser
   _salomeModule->getApp()->updateObjectBrowser(true);
index 5372aa1b6f640793f3c85cfcbbb0931681e68531..d223b066e00a853275c4d6f561359c4d52ae3d7f 100644 (file)
@@ -701,24 +701,19 @@ PresentationController::updateTreeViewWithNewPresentation(long dataId, long pres
   name = tr(name.c_str()).toStdString();
   oss << name << " (" << presentationId << ")";
 
-  SalomeApp_Study* study = dynamic_cast<SalomeApp_Study*>(_salomeModule->application()->activeStudy());
-  _PTR(Study) studyDS = study->studyDS();
-
   // Mesh views are always registered at the mesh level:
   if (type == MEDPresentationMeshView::TYPE_NAME)
     {
-      _salomeModule->engine()->registerPresentationMesh(_CAST(Study, studyDS)->GetStudy(), dataId,
-          oss.str().c_str(), type.c_str(),ico.c_str(), presentationId);
+      _salomeModule->engine()->registerPresentationMesh(dataId, oss.str().c_str(), type.c_str(),ico.c_str(), presentationId);
     }
   else
-    _salomeModule->engine()->registerPresentationField(_CAST(Study, studyDS)->GetStudy(), dataId,
-            oss.str().c_str(), type.c_str(),ico.c_str(), presentationId);
+    _salomeModule->engine()->registerPresentationField(dataId, oss.str().c_str(), type.c_str(),ico.c_str(), presentationId);
 
   // update Object browser
   _salomeModule->getApp()->updateObjectBrowser(true);
 
   // auto-select new presentation
-  std::string entry = _salomeModule->engine()->getStudyPresentationEntry(_CAST(Study, studyDS)->GetStudy(), presentationId);
+  std::string entry = _salomeModule->engine()->getStudyPresentationEntry(presentationId);
   SALOME_ListIO selectedObjects;
   LightApp_Study* lightStudy = dynamic_cast<LightApp_Study*>( _salomeModule->application()->activeStudy() );
   QString component = lightStudy->componentDataType( entry.c_str() );
@@ -744,10 +739,7 @@ PresentationController::updateTreeViewForPresentationRemoval(long presentationId
       return;
   }
 
-  SalomeApp_Study* study = dynamic_cast<SalomeApp_Study*>(_salomeModule->application()->activeStudy());
-  _PTR(Study) studyDS = study->studyDS();
-
-  _salomeModule->engine()->unregisterPresentation(_CAST(Study, studyDS)->GetStudy(), presentationId);
+  _salomeModule->engine()->unregisterPresentation(presentationId);
 
   // update Object browser
   _salomeModule->getApp()->updateObjectBrowser(true);
@@ -757,11 +749,9 @@ void
 PresentationController::_dealWithReplaceMode()
 {
   // Deal with replace mode: presentations with invalid IDs have to be removed:
-  SalomeApp_Study* study = dynamic_cast<SalomeApp_Study*>(_salomeModule->application()->activeStudy());
-  _PTR(Study) studyDS = study->studyDS();
 
   MEDCALC::PresentationsList * lstManager = _presManager->getAllPresentations();
-  MED_ORB::PresentationsList * lstModule = _salomeModule->engine()->getStudyPresentations(_CAST(Study, studyDS)->GetStudy());
+  MED_ORB::PresentationsList * lstModule = _salomeModule->engine()->getStudyPresentations();
   // The IDs not in the intersection needs deletion:
   CORBA::Long * last = lstManager->get_buffer() + lstManager->length();
   for (unsigned i = 0; i < lstModule->length(); i++) {