From 345a6e19e8062b815b18808e33748bddc71c8920 Mon Sep 17 00:00:00 2001 From: ribes Date: Thu, 26 Feb 2009 16:29:05 +0000 Subject: [PATCH] - Port to the new version of PaCO++: 0.5.2 --- salome_adm/unix/config_files/check_paco++.m4 | 8 +- src/Container/SALOME_ContainerManager.cxx | 86 +++++++++++++------ src/DSC/ParallelDSC/Makefile.am | 8 +- src/DSC/ParallelDSC/ParallelDSC_i.cxx | 5 ++ src/DSC/ParallelDSC/ParallelDSC_i.hxx | 4 +- .../Parallel_Salome_file_i.cxx | 5 +- .../Parallel_Salome_file_i.hxx | 2 +- .../SALOME_ParallelComponent_i.cxx | 7 +- .../SALOME_ParallelComponent_i.hxx | 6 +- .../SALOME_ParallelContainerNodeDummy.cxx | 7 +- .../SALOME_ParallelContainerNodeMpi.cxx | 7 +- .../SALOME_ParallelContainerProxyDummy.cxx | 6 +- .../SALOME_ParallelContainerProxyMpi.cxx | 61 ++++++++++++- .../SALOME_ParallelContainerProxy_i.hxx | 2 +- .../SALOME_ParallelContainer_i.cxx | 5 +- .../SALOME_ParallelContainer_i.hxx | 2 +- 16 files changed, 171 insertions(+), 50 deletions(-) diff --git a/salome_adm/unix/config_files/check_paco++.m4 b/salome_adm/unix/config_files/check_paco++.m4 index 844bbf68c..6d4fab27c 100644 --- a/salome_adm/unix/config_files/check_paco++.m4 +++ b/salome_adm/unix/config_files/check_paco++.m4 @@ -34,14 +34,14 @@ if test "x$WITHPACO" = "xyes"; then PACOPATH=$withval PACO_INCLUDES="-I${PACOPATH}/include" - PACO_LIBS="-L${PACOPATH}/lib -lPaCO" + PACO_LIBS="-L${PACOPATH}/lib -lPaCO -lGaBro -lBasicBC" dnl a basic test to be sure that PaCO++ dnl is correctly installed. - AC_CHECK_PROG(PACO_IDL, PaCOIdlTool, yes, no, ${PACOPATH}/bin) + AC_CHECK_PROG(PACO_IDL, PaCOIdlTool.sh, yes, no, ${PACOPATH}/bin) if test "x$PACO_IDL" = "xno"; then PaCO_ok=no - AC_MSG_RESULT(PaCO++ binary not in ${PACOPATH}) + AC_MSG_RESULT(PaCO++ binary not in ${PACOPATH}/bin) fi else PaCO_ok=no @@ -51,7 +51,7 @@ AC_MSG_CHECKING(for PaCO++) if test "x$PaCO_ok" = "xyes" then AC_MSG_RESULT([yes]) - PACO_IDL=${PACOPATH}/bin/PaCOIdlTool + PACO_IDL=${PACOPATH}/bin/PaCOIdlTool.sh AC_SUBST(PACO_IDL) AC_SUBST(PACOPATH) AC_SUBST(PACO_INCLUDES) diff --git a/src/Container/SALOME_ContainerManager.cxx b/src/Container/SALOME_ContainerManager.cxx index 3c7fdf021..2d543ddcb 100644 --- a/src/Container/SALOME_ContainerManager.cxx +++ b/src/Container/SALOME_ContainerManager.cxx @@ -34,7 +34,7 @@ #include "Batch_Date.hxx" #ifdef WITH_PACO_PARALLEL -#include "PaCO++.h" +#include "PaCO++.hxx" #endif #define TIME_OUT_TO_LAUNCH_CONT 61 @@ -1262,17 +1262,49 @@ SALOME_ContainerManager::BuildCommandToLaunchLocalParallelContainer(const std::s if (parallelLib == "Dummy") { + command = ""; //command = "gdb --args "; //command = "valgrind --tool=memcheck --log-file=val_log "; //command += real_exe_name; - command = real_exe_name; + if (par > 0) + { + string command_temp = real_exe_name; + command_temp += " " + _NS->ContainerName(rtn); + command_temp += " " + parallelLib; + command_temp += " " + hostname; + command_temp += " " + string(buffer); + command_temp += " -"; + AddOmninamesParams(command_temp); + command += "/usr/X11R6/bin/xterm -e \"export LD_LIBRARY_PATH=$LD_LIBRARY_PATH; export PATH=$PATH;" + + command_temp + + "\"&"; + } + else + { + for (int i= 0; i < nbproc; i++) + { + string command_temp = real_exe_name; - command += " " + _NS->ContainerName(rtn); - command += " " + parallelLib; - command += " " + hostname; - command += " -"; - AddOmninamesParams(command); + // A refaire en C++ + char buffer_temp [33]; + sprintf(buffer_temp,"%d",i); + + command_temp += " " + _NS->ContainerName(rtn); + command_temp += " " + parallelLib; + command_temp += " " + hostname; + command_temp += " " + string(buffer_temp); + command_temp += " -"; + AddOmninamesParams(command_temp); + +// if (command != "") +// command += ";"; + + command += "/usr/X11R6/bin/xterm -e \"export LD_LIBRARY_PATH=$LD_LIBRARY_PATH; export PATH=$PATH;" + + command_temp + + "\"&"; + } + } } else if (parallelLib == "Mpi") @@ -1287,7 +1319,7 @@ SALOME_ContainerManager::BuildCommandToLaunchLocalParallelContainer(const std::s { // Nodes case - command = "mpiexec -np " + string(buffer) + " "; + command = "mpirun -np " + string(buffer) + " "; // command += "gdb --args "; command += real_exe_name; command += " " + _NS->ContainerName(rtn); @@ -1299,7 +1331,7 @@ SALOME_ContainerManager::BuildCommandToLaunchLocalParallelContainer(const std::s else { // Proxy case - command = "mpiexec -np 1 "; + command = "mpirun -np 1 "; command += real_exe_name; command += " " + _NS->ContainerName(rtn); command += " " + string(buffer); @@ -1308,6 +1340,23 @@ SALOME_ContainerManager::BuildCommandToLaunchLocalParallelContainer(const std::s command += " -"; AddOmninamesParams(command); } + // log choice + if (log == "default") + { + command += " > /tmp/"; + command += _NS->ContainerName(rtn); + command += "_"; + command += Kernel_Utils::GetHostname(); + command += "_"; + command += getenv( "USER" ) ; + command += ".log 2>&1 &" ; + } + if (log == "xterm") + { + command = "/usr/X11R6/bin/xterm -e \"export LD_LIBRARY_PATH=$LD_LIBRARY_PATH; export PATH=$PATH; " + // + command + " \" &"; + + command + "; echo $LD_LIBRARY_PATH; cat \" &"; + } } else { @@ -1315,23 +1364,6 @@ SALOME_ContainerManager::BuildCommandToLaunchLocalParallelContainer(const std::s throw SALOME_Exception(message.c_str()); } - // log choice - if (log == "default") - { - command += " > /tmp/"; - command += _NS->ContainerName(rtn); - command += "_"; - command += Kernel_Utils::GetHostname(); - command += "_"; - command += getenv( "USER" ) ; - command += ".log 2>&1 &" ; - } - if (log == "xterm") - { - command = "/usr/X11R6/bin/xterm -e \"export LD_LIBRARY_PATH=$LD_LIBRARY_PATH; export PATH=$PATH; " - + command + " \" &"; -// + command + "; echo $LD_LIBRARY_PATH; cat \" &"; - } return command; /* if (log == "xterm") @@ -1361,10 +1393,12 @@ void SALOME_ContainerManager::startMPI() if (status == -1) { INFOS("lamboot failed : system command status -1"); + _MpiStarted = true; } else if (status == 217) { INFOS("lamboot failed : system command status 217"); + _MpiStarted = true; } else { diff --git a/src/DSC/ParallelDSC/Makefile.am b/src/DSC/ParallelDSC/Makefile.am index b25c20235..3fd8deefe 100644 --- a/src/DSC/ParallelDSC/Makefile.am +++ b/src/DSC/ParallelDSC/Makefile.am @@ -31,7 +31,8 @@ include $(top_srcdir)/salome_adm/unix/make_common_starter.am # =============================================================== # # header files -salomeinclude_HEADERS = ParallelDSC_i.hxx +salomeinclude_HEADERS = ParallelDSC_i.hxx param_double_port_provides.hxx \ + param_double_port_uses.hxx # # =============================================================== @@ -53,7 +54,7 @@ COMMON_CPPFLAGS= -I$(top_srcdir)/src/Container \ -I$(top_srcdir)/src/Registry \ -I$(top_srcdir)/src/Utils \ @CORBA_CXXFLAGS@ @CORBA_INCLUDES@ \ - @PACO_INCLUDES@ + @PACO_INCLUDES@ @MPI_INCLUDES@ # This local variable defines the list of dependant libraries common to all target in this package. COMMON_LIBS = @@ -65,7 +66,8 @@ COMMON_LIBS = # lib_LTLIBRARIES = libSalomeParallelDSCContainer.la -libSalomeParallelDSCContainer_la_SOURCES = ParallelDSC_i.cxx +libSalomeParallelDSCContainer_la_SOURCES = ParallelDSC_i.cxx param_double_port_provides.cxx \ + param_double_port_uses.cxx libSalomeParallelDSCContainer_la_CXXFLAGS = $(COMMON_CPPFLAGS) diff --git a/src/DSC/ParallelDSC/ParallelDSC_i.cxx b/src/DSC/ParallelDSC/ParallelDSC_i.cxx index 7fb691aa2..0c2706efe 100644 --- a/src/DSC/ParallelDSC/ParallelDSC_i.cxx +++ b/src/DSC/ParallelDSC/ParallelDSC_i.cxx @@ -35,10 +35,15 @@ Engines_ParallelDSC_i::Engines_ParallelDSC_i(CORBA::ORB_ptr orb, bool notif) : Engines_Parallel_Component_i(orb, ior, rank, poa, contId, instanceName, interfaceName, notif), Engines::Parallel_DSC_serv(orb, ior, rank), + Engines::Parallel_DSC_base_serv(orb, ior, rank), Engines::DSC_serv(orb, ior, rank), + Engines::DSC_base_serv(orb, ior, rank), Engines::Superv_Component_serv(orb, ior, rank), + Engines::Superv_Component_base_serv(orb, ior, rank), Engines::Component_serv(orb, ior, rank), + Engines::Component_base_serv(orb, ior, rank), Engines::Parallel_Component_serv(orb, ior, rank), + Engines::Parallel_Component_base_serv(orb, ior, rank), InterfaceParallel_impl(orb, ior, rank) { } diff --git a/src/DSC/ParallelDSC/ParallelDSC_i.hxx b/src/DSC/ParallelDSC/ParallelDSC_i.hxx index e745a1cb3..e83d57d06 100644 --- a/src/DSC/ParallelDSC/ParallelDSC_i.hxx +++ b/src/DSC/ParallelDSC/ParallelDSC_i.hxx @@ -29,10 +29,12 @@ #include #include -#include "DSC_EnginesPaCO_Engines_Parallel_DSC_server.h" #include "DSC_interface.hxx" #include "SALOME_ParallelComponent_i.hxx" +#include "DSC_EnginesPaCO_Engines_Parallel_DSC_server.hxx" +#include "SALOME_PortsPaCO.hxx" + class Engines_ParallelDSC_i: public virtual Engines_Parallel_Component_i, public virtual Engines::Parallel_DSC_serv, diff --git a/src/ParallelContainer/Parallel_Salome_file_i.cxx b/src/ParallelContainer/Parallel_Salome_file_i.cxx index c6969d61d..5ca8ec0c6 100644 --- a/src/ParallelContainer/Parallel_Salome_file_i.cxx +++ b/src/ParallelContainer/Parallel_Salome_file_i.cxx @@ -32,8 +32,11 @@ Parallel_Salome_file_i::Parallel_Salome_file_i(CORBA::ORB_ptr orb, int rank) : InterfaceParallel_impl(orb,ior,rank), Engines::Salome_file_serv(orb,ior,rank), + Engines::Salome_file_base_serv(orb,ior,rank), Engines::fileTransfer_serv(orb,ior,rank), - Engines::Parallel_Salome_file_serv(orb,ior,rank) + Engines::Parallel_Salome_file_serv(orb,ior,rank), + Engines::fileTransfer_base_serv(orb,ior,rank), + Engines::Parallel_Salome_file_base_serv(orb,ior,rank) { CORBA::Object_ptr obj = _orb->string_to_object(ior); proxy = Engines::Parallel_Salome_file::_narrow(obj); diff --git a/src/ParallelContainer/Parallel_Salome_file_i.hxx b/src/ParallelContainer/Parallel_Salome_file_i.hxx index b2bcd852c..07ccd0992 100644 --- a/src/ParallelContainer/Parallel_Salome_file_i.hxx +++ b/src/ParallelContainer/Parallel_Salome_file_i.hxx @@ -32,7 +32,7 @@ #include #include -#include "SALOME_ComponentPaCO_Engines_Parallel_Salome_file_server.h" +#include "SALOME_ComponentPaCO_Engines_Parallel_Salome_file_server.hxx" #include "Salome_file_i.hxx" class CONTAINER_EXPORT Parallel_Salome_file_i: diff --git a/src/ParallelContainer/SALOME_ParallelComponent_i.cxx b/src/ParallelContainer/SALOME_ParallelComponent_i.cxx index 8e8cc6aee..5dff25990 100644 --- a/src/ParallelContainer/SALOME_ParallelComponent_i.cxx +++ b/src/ParallelContainer/SALOME_ParallelComponent_i.cxx @@ -34,6 +34,7 @@ #endif #include #include "utilities.h" +#include "Basics_Utils.hxx" #ifndef WIN32 #include @@ -64,7 +65,9 @@ bool Engines_Parallel_Component_i::_isMultiInstance = false; Engines_Parallel_Component_i::Engines_Parallel_Component_i(CORBA::ORB_ptr orb, char * ior, int rank) : InterfaceParallel_impl(orb,ior,rank), Engines::Component_serv(orb,ior,rank), - Engines::Parallel_Component_serv(orb,ior,rank) + Engines::Component_base_serv(orb,ior,rank), + Engines::Parallel_Component_serv(orb,ior,rank), + Engines::Parallel_Component_base_serv(orb,ior,rank) { //ASSERT(0); INFOS("Default Constructor..."); @@ -91,7 +94,9 @@ Engines_Parallel_Component_i::Engines_Parallel_Component_i(CORBA::ORB_ptr orb, c bool notif) : InterfaceParallel_impl(orb,ior,rank), Engines::Component_serv(orb,ior,rank), + Engines::Component_base_serv(orb,ior,rank), Engines::Parallel_Component_serv(orb,ior,rank), + Engines::Parallel_Component_base_serv(orb,ior,rank), _instanceName(instanceName), _interfaceName(interfaceName), _myConnexionToRegistry(0), diff --git a/src/ParallelContainer/SALOME_ParallelComponent_i.hxx b/src/ParallelContainer/SALOME_ParallelComponent_i.hxx index 3a72a55cc..49cbbfaa0 100644 --- a/src/ParallelContainer/SALOME_ParallelComponent_i.hxx +++ b/src/ParallelContainer/SALOME_ParallelComponent_i.hxx @@ -38,7 +38,7 @@ #include #include -#include "SALOME_ComponentPaCO_Engines_Parallel_Component_server.h" +#include "SALOME_ComponentPaCO_Engines_Parallel_Component_server.hxx" #include "NOTIFICATION.hxx" #include "RegistryConnexion.hxx" @@ -112,6 +112,10 @@ public: void send_parallel_proxy_object(CORBA::Object_ptr proxy_ref); + // Object information + virtual bool hasObjectInfo() { return false; } + virtual char* getObjectInfo(CORBA::Long studyId, const char* entry) { return ""; } + // --- local C++ methods PortableServer::ObjectId * getId(); diff --git a/src/ParallelContainer/SALOME_ParallelContainerNodeDummy.cxx b/src/ParallelContainer/SALOME_ParallelContainerNodeDummy.cxx index 61f5eda5c..165a86de3 100644 --- a/src/ParallelContainer/SALOME_ParallelContainerNodeDummy.cxx +++ b/src/ParallelContainer/SALOME_ParallelContainerNodeDummy.cxx @@ -42,6 +42,7 @@ #include "SALOME_NamingService.hxx" #include "utilities.h" +#include "Basics_Utils.hxx" #include "Utils_ORB_INIT.hxx" #include "Utils_SINGLETON.hxx" #include "SALOMETraceCollector.hxx" @@ -128,6 +129,9 @@ int main(int argc, char* argv[]) if(argc > 3) { hostname = argv[3]; } + int myid = 0; + if(argc > 4) + sscanf(argv[4],"%d",&myid); try { CORBA::Object_var obj = orb->resolve_initial_references("RootPOA"); @@ -152,7 +156,7 @@ int main(int argc, char* argv[]) string node_name = containerName + "Node"; Engines_Parallel_Container_i * servant = new Engines_Parallel_Container_i(CORBA::ORB::_duplicate(orb), proxy_ior, - 0, + myid, root_poa, (char*) node_name.c_str(), argc, argv); @@ -170,7 +174,6 @@ int main(int argc, char* argv[]) // In the NamingService string hostname = Kernel_Utils::GetHostname(); - int myid = 0; char buffer [5]; snprintf(buffer, 5, "%d", myid); node_name = node_name + buffer; diff --git a/src/ParallelContainer/SALOME_ParallelContainerNodeMpi.cxx b/src/ParallelContainer/SALOME_ParallelContainerNodeMpi.cxx index 7c8f6afc8..a617a10d0 100644 --- a/src/ParallelContainer/SALOME_ParallelContainerNodeMpi.cxx +++ b/src/ParallelContainer/SALOME_ParallelContainerNodeMpi.cxx @@ -45,6 +45,7 @@ #include "SALOME_NamingService.hxx" #include "utilities.h" +#include "Basics_Utils.hxx" #include "Utils_ORB_INIT.hxx" #include "Utils_SINGLETON.hxx" #include "SALOMETraceCollector.hxx" @@ -133,6 +134,7 @@ int main(int argc, char* argv[]) std::cerr << "Unexpected: unexpected exception !" << std::endl; setsig(SIGSEGV,&Handler); set_terminate(&terminateHandler); + //set_terminate(__gnu_cxx::__verbose_terminate_handler); set_unexpected(&unexpectedHandler); } cerr << "Level MPI_THREAD_SINGLE : " << MPI_THREAD_SINGLE << endl; @@ -196,8 +198,9 @@ int main(int argc, char* argv[]) paco_fabrique_manager * pfm = paco_getFabriqueManager(); pfm->register_com("mpi", new paco_mpi_fabrique()); pfm->register_thread("omni", new paco_omni_fabrique()); - MPI_Comm group = MPI_COMM_WORLD; - servant->setLibCom("mpi", &group); + MPI_Comm parallel_object_group; + MPI_Comm_dup(MPI_COMM_WORLD, ¶llel_object_group); + servant->setLibCom("mpi", ¶llel_object_group); servant->setLibThread("omni"); // Activation diff --git a/src/ParallelContainer/SALOME_ParallelContainerProxyDummy.cxx b/src/ParallelContainer/SALOME_ParallelContainerProxyDummy.cxx index be5ee2add..f00184b64 100644 --- a/src/ParallelContainer/SALOME_ParallelContainerProxyDummy.cxx +++ b/src/ParallelContainer/SALOME_ParallelContainerProxyDummy.cxx @@ -43,6 +43,7 @@ #include "SALOME_NamingService.hxx" #include "utilities.h" +#include "Basics_Utils.hxx" #include "Utils_ORB_INIT.hxx" #include "Utils_SINGLETON.hxx" #include "SALOMETraceCollector.hxx" @@ -77,6 +78,9 @@ int main(int argc, char* argv[]) containerName = argv[1]; } + int nbnodes = 1; + if(argc > 4) + sscanf(argv[4],"%d",&nbnodes); try { CORBA::Object_var obj = orb->resolve_initial_references("RootPOA"); ASSERT(!CORBA::is_nil(obj)); @@ -106,7 +110,7 @@ int main(int argc, char* argv[]) proxy->setLibThread("omnithread"); // Topo of the parallel object PaCO::PacoTopology_t serveur_topo; - serveur_topo.total = 1; + serveur_topo.total = nbnodes; proxy->setTopology(serveur_topo); PortableServer::ObjectId_var _id = root_poa->activate_object(proxy); diff --git a/src/ParallelContainer/SALOME_ParallelContainerProxyMpi.cxx b/src/ParallelContainer/SALOME_ParallelContainerProxyMpi.cxx index 49bb1899f..50b28cc43 100644 --- a/src/ParallelContainer/SALOME_ParallelContainerProxyMpi.cxx +++ b/src/ParallelContainer/SALOME_ParallelContainerProxyMpi.cxx @@ -44,15 +44,60 @@ #include "SALOME_NamingService.hxx" #include "utilities.h" +#include "Basics_Utils.hxx" #include "Utils_ORB_INIT.hxx" #include "Utils_SINGLETON.hxx" #include "SALOMETraceCollector.hxx" #include "OpUtil.hxx" using namespace std; -#ifdef DEBUG_PARALLEL +#ifdef _DEBUG_ #include +typedef void (*sighandler_t)(int); +sighandler_t setsig(int sig, sighandler_t handler) +{ + struct sigaction context, ocontext; + context.sa_handler = handler; + sigemptyset(&context.sa_mask); + context.sa_flags = 0; + if (sigaction(sig, &context, &ocontext) == -1) + return SIG_ERR; + return ocontext.sa_handler; +} + +void AttachDebugger() +{ + if(getenv ("DEBUGGER")) + { + std::stringstream exec; + exec << "$DEBUGGER SALOME_ParallelContainerProxyMpi " << getpid() << "&"; + std::cerr << exec.str() << std::endl; + system(exec.str().c_str()); + while(1); + } +} + +void Handler(int theSigId) +{ + std::cerr << "SIGSEGV: " << std::endl; + AttachDebugger(); + //to exit or not to exit + exit(1); +} + +void terminateHandler(void) +{ + std::cerr << "Terminate: not managed exception !" << std::endl; + AttachDebugger(); +} + +void unexpectedHandler(void) +{ + std::cerr << "Unexpected: unexpected exception !" << std::endl; + AttachDebugger(); +} + void handler(int t) { cerr << "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!" << endl; cerr << "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!" << endl; @@ -76,6 +121,15 @@ int main(int argc, char* argv[]) MPI_Init_thread(&argc, &argv, MPI_THREAD_SERIALIZED ,&provided); CORBA::ORB_var orb = CORBA::ORB_init(argc, argv); + if(getenv ("DEBUGGER")) + { + std::cerr << "Unexpected: unexpected exception !" << std::endl; + setsig(SIGSEGV,&Handler); + //set_terminate(&terminateHandler); + set_terminate(__gnu_cxx::__verbose_terminate_handler); + set_unexpected(&unexpectedHandler); + } + std::string containerName(""); containerName = argv[1]; int nb_nodes; @@ -105,8 +159,9 @@ int main(int argc, char* argv[]) // PaCO++ code paco_fabrique_manager* pfm = paco_getFabriqueManager(); pfm->register_com("mpi", new paco_mpi_fabrique()); - MPI_Comm group = MPI_COMM_WORLD; - proxy->setLibCom("mpi", &group); + MPI_Comm parallel_object_group; + MPI_Comm_dup(MPI_COMM_WORLD, ¶llel_object_group); + proxy->setLibCom("mpi", ¶llel_object_group); pfm->register_thread("omnithread", new paco_omni_fabrique()); proxy->setLibThread("omnithread"); PaCO::PacoTopology_t serveur_topo; diff --git a/src/ParallelContainer/SALOME_ParallelContainerProxy_i.hxx b/src/ParallelContainer/SALOME_ParallelContainerProxy_i.hxx index c35cddd6c..ef6e66367 100644 --- a/src/ParallelContainer/SALOME_ParallelContainerProxy_i.hxx +++ b/src/ParallelContainer/SALOME_ParallelContainerProxy_i.hxx @@ -27,7 +27,7 @@ #define _SALOME_PARALLEL_CONTAINER_PROXY_I_HXX_ #include "utilities.h" -#include "SALOME_ComponentPaCO_Engines_Container_server.h" +#include "SALOME_ComponentPaCO_Engines_Container_server.hxx" class Container_proxy_impl_final : public Engines::Container_proxy_impl diff --git a/src/ParallelContainer/SALOME_ParallelContainer_i.cxx b/src/ParallelContainer/SALOME_ParallelContainer_i.cxx index 52f5e7070..2f45c8658 100644 --- a/src/ParallelContainer/SALOME_ParallelContainer_i.cxx +++ b/src/ParallelContainer/SALOME_ParallelContainer_i.cxx @@ -52,6 +52,7 @@ int SIGUSR1 = 1000; #include #include "utilities.h" +#include "Basics_Utils.hxx" using namespace std; bool _Sleeping = false ; @@ -83,6 +84,7 @@ Engines_Parallel_Container_i::Engines_Parallel_Container_i (CORBA::ORB_ptr orb, int rank) : InterfaceParallel_impl(orb,ior,rank), Engines::Container_serv(orb,ior,rank), + Engines::Container_base_serv(orb,ior,rank), _numInstance(0) { } @@ -104,6 +106,7 @@ Engines_Parallel_Container_i::Engines_Parallel_Container_i (CORBA::ORB_ptr orb, ) : InterfaceParallel_impl(orb,ior,rank), Engines::Container_serv(orb,ior,rank), + Engines::Container_base_serv(orb,ior,rank), _numInstance(0),_isServantAloneInProcess(isServantAloneInProcess) { _pid = (long)getpid(); @@ -772,8 +775,6 @@ Engines_Parallel_Container_i::createParallelInstance(string genericRegisterName, // --- get reference & servant from id CORBA::Object_var obj = _poa->id_to_reference(*id); iobject2 = Engines::Component_PaCO::_narrow(obj) ; - - // --- register the engine under the name _NS->Register(iobject2 , component_registerName.c_str()) ; MESSAGE( component_registerName.c_str() << " bound" ) ; } diff --git a/src/ParallelContainer/SALOME_ParallelContainer_i.hxx b/src/ParallelContainer/SALOME_ParallelContainer_i.hxx index 1c09296f0..a35014c43 100644 --- a/src/ParallelContainer/SALOME_ParallelContainer_i.hxx +++ b/src/ParallelContainer/SALOME_ParallelContainer_i.hxx @@ -29,7 +29,7 @@ #include -#include "SALOME_ComponentPaCO_Engines_Container_server.h" +#include "SALOME_ComponentPaCO_Engines_Container_server.hxx" #include #include -- 2.39.2