
Public Member Functions | |
| SALOME_ContainerManager (CORBA::ORB_ptr orb, PortableServer::POA_var poa, SALOME_ResourcesManager *rm, SALOME_NamingService *ns) | |
| ~SALOME_ContainerManager () | |
| void | Shutdown () |
| shutdown all the containers, then the ContainerManager servant | |
| void | ShutdownContainers () |
| Loop on all the containers listed in naming service, ask shutdown on each. | |
| Engines::Container_ptr | StartContainer (const Engines::MachineParameters ¶ms, const Engines::MachineList &possibleComputer, const std::string &container_exe="SALOME_Container") |
| Start a suitable Container in a list of machines with constraints. | |
| Engines::Container_ptr | StartContainer (const Engines::MachineParameters ¶ms) |
| Start a suitable Container given constraints. | |
| Engines::Container_ptr | GiveContainer (const Engines::MachineParameters ¶ms) |
| Give a suitable Container given constraints. | |
| Engines::Container_ptr | FindOrStartContainer (const Engines::MachineParameters ¶ms) |
| Find or start a suitable Container given some constraints. | |
| Engines::Container_ptr | StartParallelContainer (const Engines::MachineParameters ¶ms) |
Static Public Attributes | |
| static const char * | _ContainerManagerNameInNS |
Protected Types | |
| typedef std::vector< std::string > | actual_launch_machine_t |
Protected Member Functions | |
| Engines::Container_ptr | FindContainer (const Engines::MachineParameters ¶ms, const Engines::MachineList &possibleComputers) |
| Find a container given constraints (params) on a list of machines (possibleComputers). | |
| Engines::Container_ptr | FindContainer (const Engines::MachineParameters ¶ms, const char *theMachine) |
| Find a container given constraints (params) on a machine (theMachine). | |
| void | fillBatchLaunchedContainers () |
| std::string | BuildCommandToLaunchRemoteContainer (const std::string &machine, const Engines::MachineParameters ¶ms, const std::string &container_exe="SALOME_Container") |
| std::string | BuildCommandToLaunchLocalContainer (const Engines::MachineParameters ¶ms, const std::string &container_exe="SALOME_Container") |
| std::string | BuildTempFileToLaunchRemoteContainer (const std::string &machine, const Engines::MachineParameters ¶ms) throw (SALOME_Exception) |
| void | RmTmpFile (std::string &tmpFile) |
| void | AddOmninamesParams (std::string &command) const |
| void | AddOmninamesParams (std::ofstream &fileStream) const |
| std::string | BuildTemporaryFileName () const |
| std::string | GetMPIZeroNode (std::string machine) |
| std::string | BuildCommandToLaunchParallelContainer (const std::string &exe_name, const Engines::MachineParameters ¶ms, SALOME_ContainerManager::actual_launch_machine_t &vect_machine, const std::string proxy_hostname="") |
| CORBA::Object_ptr | LaunchParallelContainer (const std::string &command, const Engines::MachineParameters ¶ms, const std::string &name, SALOME_ContainerManager::actual_launch_machine_t &vect_machine) |
Protected Attributes | |
| CORBA::ORB_var | _orb |
| PortableServer::POA_var | _poa |
| SALOME_ResourcesManager * | _ResManager |
| SALOME_NamingService * | _NS |
| std::string | _TmpFileName |
| attribute that contains current tmp files generated | |
| std::string | _CommandForRemAccess |
| contains the rsh or ssh command to access directly to machine. | |
| bool | _isAppliSalomeDefined |
| different behaviour if $APPLI exists (SALOME Application) | |
Static Protected Attributes | |
|
static std::vector < Engines::Container_ptr > | _batchLaunchedContainers |
|
static std::vector < Engines::Container_ptr > ::iterator | _batchLaunchedContainersIter |
| SALOME_ContainerManager::SALOME_ContainerManager | ( | CORBA::ORB_ptr | orb, | |
| PortableServer::POA_var | poa, | |||
| SALOME_ResourcesManager * | rm, | |||
| SALOME_NamingService * | ns | |||
| ) |
Constructor
| orb | Define a CORBA single thread policy for the server, which avoid to deal with non thread-safe usage like Change_Directory in SALOME naming service |
| SALOME_ContainerManager::~SALOME_ContainerManager | ( | ) |
destructor
| void SALOME_ContainerManager::Shutdown | ( | ) |
shutdown all the containers, then the ContainerManager servant
CORBA method:
| void SALOME_ContainerManager::ShutdownContainers | ( | ) |
Loop on all the containers listed in naming service, ask shutdown on each.
CORBA Method:
| Engines::Container_ptr SALOME_ContainerManager::StartContainer | ( | const Engines::MachineParameters & | params, | |
| const Engines::MachineList & | possibleComputers, | |||
| const std::string & | container_exe = "SALOME_Container" | |||
| ) |
Start a suitable Container in a list of machines with constraints.
C++ Method: Constraints are given by a machine parameters struct
| params | Machine Parameters required for the container | |
| possibleComputers | list of machines usable for start | |
| container_exe | specific container executable (default=SALOME_Container) |
| Engines::Container_ptr SALOME_ContainerManager::StartContainer | ( | const Engines::MachineParameters & | params | ) |
Start a suitable Container given constraints.
CORBA Method:
| params | Machine Parameters required for the container |
| Engines::Container_ptr SALOME_ContainerManager::GiveContainer | ( | const Engines::MachineParameters & | params | ) |
Give a suitable Container given constraints.
CORBA Method:
| params | Machine Parameters required for the container |
| Engines::Container_ptr SALOME_ContainerManager::FindOrStartContainer | ( | const Engines::MachineParameters & | params | ) |
Find or start a suitable Container given some constraints.
CORBA Method:
| params | Machine Parameters required for the container |
| Engines::Container_ptr SALOME_ContainerManager::StartParallelContainer | ( | const Engines::MachineParameters & | params | ) |
CORBA Method: Find or Start a suitable PaCO++ Parallel Container in a list of machines.
| params | Machine Parameters required for the container |
| Engines::Container_ptr SALOME_ContainerManager::FindContainer | ( | const Engines::MachineParameters & | params, | |
| const Engines::MachineList & | possibleComputers | |||
| ) | [protected] |
Find a container given constraints (params) on a list of machines (possibleComputers).
| Engines::Container_ptr SALOME_ContainerManager::FindContainer | ( | const Engines::MachineParameters & | params, | |
| const char * | theMachine | |||
| ) | [protected] |
Find a container given constraints (params) on a machine (theMachine).
| string SALOME_ContainerManager::BuildCommandToLaunchLocalContainer | ( | const Engines::MachineParameters & | params, | |
| const std::string & | container_exe = "SALOME_Container" | |||
| ) | [protected] |
builds the command to be launched.
| void SALOME_ContainerManager::RmTmpFile | ( | std::string & | tmpFileName | ) | [protected] |
removes the generated temporary file in case of a remote launch.
| string SALOME_ContainerManager::BuildTemporaryFileName | ( | ) | const [protected] |
generate a file name in /tmp directory
| string SALOME_ContainerManager::BuildCommandToLaunchParallelContainer | ( | const std::string & | exe_name, | |
| const Engines::MachineParameters & | params, | |||
| SALOME_ContainerManager::actual_launch_machine_t & | vect_machine, | |||
| const std::string | proxy_hostname = "" | |||
| ) | [protected] |
Creates a command line that the container manager uses to launch a parallel container.
| CORBA::Object_ptr SALOME_ContainerManager::LaunchParallelContainer | ( | const std::string & | command, | |
| const Engines::MachineParameters & | params, | |||
| const std::string & | name, | |||
| SALOME_ContainerManager::actual_launch_machine_t & | vect_machine | |||
| ) | [protected] |
This method launches the parallel container. It will may be placed on the ressources manager.
| command | to launch | |
| container's | parameters | |
| name | of the container |
const char * SALOME_ContainerManager::_ContainerManagerNameInNS [static] |
"/ContainerManager"
std::string SALOME_ContainerManager::_TmpFileName [protected] |
attribute that contains current tmp files generated
std::string SALOME_ContainerManager::_CommandForRemAccess [protected] |
contains the rsh or ssh command to access directly to machine.
bool SALOME_ContainerManager::_isAppliSalomeDefined [protected] |
different behaviour if $APPLI exists (SALOME Application)