Salome HOME
Make it work in HOMARD standalone case
[modules/homard.git] / src / HOMARD_I / HOMARD_Gen_i.cxx
index a42a858c60a4f2e5fd5a1a5c7ea0e08e019614e3..63d70304335357ac524ab836fb67e71dccc3187c 100644 (file)
@@ -43,8 +43,6 @@
 #include "SALOME_LifeCycleCORBA.hxx"
 #include "SALOMEconfig.h"
 #include <SMESH_Gen_i.hxx>
-#include CORBA_CLIENT_HEADER(SALOME_ModuleCatalog)
-#include CORBA_CLIENT_HEADER(SMESH_Gen)
 
 #include <cmath>
 #include <stdlib.h>
@@ -92,17 +90,15 @@ HOMARD_Gen_i::HOMARD_Gen_i( CORBA::ORB_ptr orb,
                             PortableServer::POA_ptr poa,
                             PortableServer::ObjectId * contId,
                             const char *instanceName,
-                            const char *interfaceName) :
-Engines_Component_i(orb, poa, contId, instanceName, interfaceName)
+                            const char *interfaceName,
+                            bool checkNS) :
+Engines_Component_i(orb, poa, contId, instanceName, interfaceName, false, checkNS)
 {
   MESSAGE("constructor de HOMARD_Gen_i");
   _thisObj = this;
   _id = _poa->activate_object(_thisObj);
 
   myHomard = new ::HOMARD_Gen;
-  _NS = SINGLETON_<SALOME_NamingService>::Instance();
-  ASSERT(SINGLETON_<SALOME_NamingService>::IsAlreadyExisting());
-  _NS->init_orb(_orb);
 
   _tag_gene = 0 ;
   _tag_boun = 0 ;
@@ -143,9 +139,7 @@ void HOMARD_Gen_i::UpdateStudy()
     homardFather = myBuilder->NewComponent(ComponentDataType());
     SALOMEDS::GenericAttribute_var anAttr = myBuilder->FindOrCreateAttribute(homardFather,"AttributeName");
     SALOMEDS::AttributeName_var aName = SALOMEDS::AttributeName::_narrow(anAttr);
-    CORBA::Object_var objVarN = _NS->Resolve("/Kernel/ModulCatalog");
-    SALOME_ModuleCatalog::ModuleCatalog_var Catalogue =
-                SALOME_ModuleCatalog::ModuleCatalog::_narrow(objVarN);
+    SALOME_ModuleCatalog::ModuleCatalog_var Catalogue = this->getModuleCatalog();
     SALOME_ModuleCatalog::Acomponent_var Comp = Catalogue->GetComponent(ComponentDataType());
     if (!Comp->_is_nil())
     {
@@ -4000,8 +3994,9 @@ void HOMARD_Gen_i::PublishResultInSmesh(const char* NomFich, CORBA::Long Option)
 
 // On enregistre le fichier
   MESSAGE( "Enregistrement du fichier");
-  SALOME_LifeCycleCORBA* myLCC = new SALOME_LifeCycleCORBA(_NS);
-  SMESH::SMESH_Gen_var aSmeshEngine = SMESH::SMESH_Gen::_narrow(myLCC->FindOrLoad_Component("FactoryServer","SMESH"));
+  //
+  SMESH::SMESH_Gen_var aSmeshEngine = this->retrieveSMESHInst();
+  //
   ASSERT(!CORBA::is_nil(aSmeshEngine));
   aSmeshEngine->UpdateStudy();
   SMESH::DriverMED_ReadStatus theStatus;