]> SALOME platform Git repositories - modules/kernel.git/commitdiff
Salome HOME
- YACS patch for PaCO++ containers and components
authorribes <ribes>
Wed, 20 Jun 2007 08:34:19 +0000 (08:34 +0000)
committerribes <ribes>
Wed, 20 Jun 2007 08:34:19 +0000 (08:34 +0000)
idl/DSC_Engines.idl
idl/DSC_Engines.xml
idl/Makefile.am
src/Container/SALOME_ContainerManager.cxx
src/DSC/ParallelDSC/ParallelDSC_i.cxx
src/DSC/ParallelDSC/ParallelDSC_i.hxx
src/ResourcesManager/SALOME_ResourcesManager.cxx

index 9ace69068b220773a5ccc7e312eee24e6178ad80..e27795bc0a4e3836ba2fa2ca0dfad92bec697047 100644 (file)
@@ -370,7 +370,7 @@ module Engines {
     This interface defines the operations needed to add a paco++ port 
     into a parallel DSC component.
   */
-  interface Parallel_DSC : Engines::DSC {
+  interface Parallel_DSC : Engines::Superv_Component {
 
     /*!
       This operation gives the proxy node of a paco++ port to all the nodes.
@@ -385,17 +385,8 @@ module Engines {
     void set_paco_proxy(in Object ref, 
                        in string provides_port_name,
                        in Ports::PortProperties port_prop);
-
-    /*! 
-      The SUPERV module call this method before starting the service. Thus the service 
-      can add is dynamics ports before is started.
-
-      \param service_name service's name.
-      \return true if the service is correctly initialised.
-     */
-    boolean init_service(in string service_name);
                        
-  };   
+  };  
 };
 
 #endif
index 5db294c08a597a29967040224108662fbce8bff3..a4d5603b6c8316c59bb781a0f9bca700e5fa4acf 100644 (file)
@@ -46,6 +46,9 @@
      <Name>set_paco_proxy</Name>
      <Type>distributed</Type>
    </Method>
+ </Interface>
+ <Interface>
+   <Name>Superv_Component</Name>
    <Method>
      <Name>init_service</Name>
      <Type>distributed</Type>
index 8ddeafd245ec4e4776ae1447b4de4125b2a02e36..fe38030415ee8ddadeeb9a3720142cece51132f9 100644 (file)
@@ -135,6 +135,8 @@ GEN_PACO = SALOME_ComponentPaCO_Engines_Container_server.cc \
           SALOME_PortsPaCO_Ports_Port_client.cc \
           DSC_EnginesPaCO_Engines_DSC_server.cc \
           DSC_EnginesPaCO_Engines_DSC_client.cc \
+          DSC_EnginesPaCO_Engines_Superv_Component_server.cc \
+          DSC_EnginesPaCO_Engines_Superv_Component_client.cc \
           DSC_EnginesPaCO_Engines_Parallel_DSC_server.cc \
           DSC_EnginesPaCO_Engines_Parallel_DSC_client.cc
 
@@ -150,6 +152,8 @@ INCLUDES_PACO = SALOME_ComponentPaCO_Engines_Container_server.h \
                SALOME_Ports.h \
                DSC_EnginesPaCO_Engines_DSC_server.h \
                DSC_EnginesPaCO_Engines_DSC_client.h \
+                DSC_EnginesPaCO_Engines_Superv_Component_server.h \
+               DSC_EnginesPaCO_Engines_Superv_Component_client.h \
                DSC_EnginesPaCO_Engines_Parallel_DSC_server.h \
                DSC_EnginesPaCO_Engines_Parallel_DSC_client.h \
                DSC_EnginesPaCO.h \
index 962eded148afa35ad17758681bf0c766d16f3e5e..2b96b3d0898ae4b78f90918d587dd5284b358982 100644 (file)
@@ -185,6 +185,10 @@ StartContainer(const Engines::MachineParameters& params,
               const Engines::MachineList& possibleComputers,
               Engines::ResPolicy policy)
 {
+#ifdef WITH_PACO_PARALLEL
+  if (params.parallelLib != "")
+    return FindOrStartParallelContainer(params, possibleComputers);
+#endif
   long id;
   string containerNameInNS;
   char idc[3*sizeof(long)];
index eba3c8e550c246b4826648288e38238bd13729dc..7e19a253a107612594bb0bc9b9900b03aedfdc78 100644 (file)
@@ -34,7 +34,7 @@ Engines_ParallelDSC_i::Engines_ParallelDSC_i(CORBA::ORB_ptr orb, char * ior,
   Engines_Parallel_Component_i(orb, ior, poa, contId, instanceName, interfaceName, notif),
   Engines::Parallel_DSC_serv(orb, ior),
   Engines::DSC_serv(orb, ior),
-//  Engines::Superv_Component_serv(orb, ior),
+  Engines::Superv_Component_serv(orb, ior),
   Engines::Component_serv(orb, ior),
   InterfaceParallel_impl(orb,ior)
 {
index 0524de5eafe710663fbb9a2b254f73573bc0ea14..ed900566fa281a961e104a2ca3cae58dde495888 100644 (file)
@@ -49,8 +49,6 @@ public:
   virtual ~Engines_ParallelDSC_i();
 
   
-  //virtual CORBA::Boolean init_service(const char* service_name) {return true;}
-
   /*!
    * \see Engines::DSC::add_provides_port
    */
index 3552c1128abe7d7338acec2f836612555301e3ae..01bf2756b3e7471c1f7dc729dcec0150d440843d 100644 (file)
@@ -993,7 +993,9 @@ SALOME_ResourcesManager::BuildCommandToLaunchLocalParallelContainer(const std::s
     if (par < 0)
     {
       // Nodes case
+
       command = "mpiexec -np " + string(buffer) + " ";
+//      command += "gdb --args ";
       command += real_exe_name;
       command += " " + _NS->ContainerName(rtn);
       command += " " + parallelLib;
@@ -1029,9 +1031,8 @@ SALOME_ResourcesManager::BuildCommandToLaunchLocalParallelContainer(const std::s
   if (log == "xterm")
   {
     command = "/usr/X11R6/bin/xterm -e \"export LD_LIBRARY_PATH=$LD_LIBRARY_PATH; export PATH=$PATH;  " 
-      + command + " \" &";
-    //command = "/usr/X11R6/bin/xterm -e \"export LD_LIBRARY_PATH=$LD_LIBRARY_PATH; export PATH=$PATH;  " 
-    //  + command + "; cat \" &";
+             + command + " \" &";
+//           + command + "; echo $LD_LIBRARY_PATH; cat \" &";
   }
   return command;