#include <SALOME_ParallelComponent_i.hxx>
Public Member Functions | |
Engines_Parallel_Component_i (CORBA::ORB_ptr orb, char *ior, int rank, PortableServer::POA_ptr poa, PortableServer::ObjectId *contId, const char *instanceName, const char *interfaceName, bool notif=false, bool regist=true) | |
Standard Constructor for generic Component, used in derived class Connection to Registry and Notification. More... | |
virtual | ~Engines_Parallel_Component_i () |
Destructor: call Container for decrement of instances count. More... | |
char * | instanceName () |
CORBA method: return name of the instance, unique in this Container. More... | |
char * | interfaceName () |
CORBA method: return name of the component class. More... | |
void | ping () |
CORBA method: Test if instance is alive and responds. More... | |
void | destroy () |
CORBA method: Deactivate this instance. More... | |
CORBA::Long | getStudyId () |
CORBA method: Get study Id. More... | |
Engines::Container_ptr | GetContainerRef () |
CORBA method: return CORBA reference of the Container. More... | |
void | setProperties (const Engines::FieldsDict &dico) |
CORBA method: Gives a sequence of (key=string,value=any) to the component. More... | |
Engines::FieldsDict * | getProperties () |
CORBA method: returns a previously stored map (key=string,value=any) as a sequence. More... | |
void | Names (const char *graphName, const char *nodeName) |
CORBA method: used by Supervision to give names to this instance. More... | |
bool | Kill_impl () |
CORBA method: used in Supervision. More... | |
bool | Stop_impl () |
CORBA method: used in Supervision. More... | |
bool | Suspend_impl () |
CORBA method: used in Supervision. More... | |
bool | Resume_impl () |
CORBA method: used in Supervision. More... | |
CORBA::Long | CpuUsed_impl () |
CORBA method: More... | |
virtual Engines::TMPFile * | DumpPython (CORBA::Object_ptr theStudy, CORBA::Boolean isPublished, CORBA::Boolean isMultiFile, CORBA::Boolean &isValidScript) |
C++ method: DumpPython default implementation. More... | |
virtual Engines::Salome_file_ptr | getInputFileToService (const char *service_name, const char *Salome_file_name) |
virtual Engines::Salome_file_ptr | getOutputFileToService (const char *service_name, const char *Salome_file_name) |
virtual void | checkInputFilesToService (const char *service_name) |
virtual Engines::Salome_file_ptr | setInputFileToService (const char *service_name, const char *Salome_file_name) |
virtual void | checkOutputFilesToService (const char *service_name) |
virtual Engines::Salome_file_ptr | setOutputFileToService (const char *service_name, const char *Salome_file_name) |
void | send_parallel_proxy_object (CORBA::Object_ptr proxy_ref) |
C++ method: Used by the Parallel Component to deploy a Parallel Salome_file. More... | |
virtual bool | hasObjectInfo () |
virtual char * | getObjectInfo (CORBA::Long studyId, const char *entry) |
PortableServer::ObjectId * | getId () |
C++ method: return CORBA instance id, the id is set in derived class constructor, when instance is activated. More... | |
Engines_Parallel_Container_i * | GetContainerPtr () |
C++ method: return Container Servant. More... | |
bool | setStudyId (CORBA::Long studyId) |
C++ method: set study Id. More... | |
void | beginService (const char *serviceName) |
C++ method: used by derived classes for supervision. More... | |
void | endService (const char *serviceName) |
C++ method: used by derived classes for supervision. More... | |
void | sendMessage (const char *event_type, const char *message) |
C++ method: Send message to event channel. More... | |
char * | graphName () |
C++ method: – CHECK IF USED –. More... | |
char * | nodeName () |
C++ method: – CHECK IF USED –. More... | |
bool | Killer (pthread_t ThreadId, int signum) |
C++ method: used in Supervision (see kill_impl) More... | |
void | SetCurCpu () |
C++ method: More... | |
long | CpuUsed () |
C++ method: More... | |
void | CancelThread () |
C++ method: More... | |
void | wait_parallel_object_proxy () |
C++ method: Used by the Parallel Component to deploy a Parallel Salome_file. More... | |
char * | get_parallel_proxy_object () |
C++ method: Used by the Parallel Component to deploy a Parallel Salome_file. More... | |
virtual void | configureSalome_file (std::string service_name, std::string file_port_name, Engines::Parallel_Salome_file_proxy_impl *file) |
C++ method: used to configure the Salome_file into the runtime. More... | |
Static Public Member Functions | |
static bool | isMultiStudy () |
static bool | isMultiInstance () |
static std::string | GetDynLibraryName (const char *componentName) |
C++ method: return standard library name built on component name. More... | |
Protected Types | |
typedef std::map< std::string, Parallel_Salome_file_i * > | _t_Salome_file_map |
typedef std::map< std::string, Engines::Parallel_Salome_file_proxy_impl * > | _t_Proxy_Salome_file_map |
typedef std::map< std::string, std::string > | _t_IOR_Proxy_Salome_file_map |
typedef std::map< std::string, Engines_Parallel_Component_i::_t_Salome_file_map * > | _t_Service_file_map |
typedef std::map< std::string, Engines_Parallel_Component_i::_t_Proxy_Salome_file_map * > | _t_Proxy_Service_file_map |
typedef std::map< std::string, Engines_Parallel_Component_i::_t_IOR_Proxy_Salome_file_map * > | _t_IOR_Proxy_Service_file_map |
Static Protected Attributes | |
static bool | _isMultiStudy = true |
static bool | _isMultiInstance = false |
Private Attributes | |
pthread_t | _ThreadId |
long | _StartUsed |
long | _ThreadCpuUsed |
bool | _Executed |
bool | _CanceledThread |
bool | _destroyed |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
Engines_Parallel_Component_i::Engines_Parallel_Component_i | ( | CORBA::ORB_ptr | orb, |
char * | ior, | ||
int | rank, | ||
PortableServer::POA_ptr | poa, | ||
PortableServer::ObjectId * | contId, | ||
const char * | instanceName, | ||
const char * | interfaceName, | ||
bool | notif = false , |
||
bool | regist = true |
||
) |
Standard Constructor for generic Component, used in derived class Connection to Registry and Notification.
orb | Object Request broker given by Container poa Portable Object Adapter from Container (normally root_poa) |
contId | container CORBA id inside the server |
instanceName | unique instance name for this object (see Container_i) |
interfaceName | component class name |
notif | use of notification |
References _contId, _instanceName, _myConnexionToRegistry, _notifSupplier, _orb, _poa, _proxy, deploy_mutex, and MESSAGE.
|
virtual |
Destructor: call Container for decrement of instances count.
When instances count falls to 0, the container tries to remove the component library (dlclose)
References _id, _interfaceName, _myConnexionToRegistry, _notifSupplier, _proxy, Engines_Parallel_Container_i::decInstanceCnt(), deploy_mutex, and MESSAGE.
void Engines_Parallel_Component_i::beginService | ( | const char * | serviceName | ) |
C++ method: used by derived classes for supervision.
References _Executed, _fieldsDict, _instanceName, _serviceName, _StartUsed, _ThreadCpuUsed, _ThreadId, CpuUsed_impl(), and MESSAGE.
void Engines_Parallel_Component_i::CancelThread | ( | ) |
|
virtual |
References _Proxy_Input_Service_file_map, _Proxy_Service_file_map_it, and configureSalome_file().
|
virtual |
References _Proxy_Output_Service_file_map, _Proxy_Service_file_map_it, and configureSalome_file().
|
virtual |
C++ method: used to configure the Salome_file into the runtime.
service_name | name of the service that use this Salome_file |
file_port_name | name of the Salome_file |
file | Parallel Salome_file C++ object |
Referenced by checkInputFilesToService(), and checkOutputFilesToService().
long Engines_Parallel_Component_i::CpuUsed | ( | ) |
C++ method:
References _Executed, _StartUsed, and _ThreadId.
Referenced by CpuUsed_impl(), and SetCurCpu().
CORBA::Long Engines_Parallel_Component_i::CpuUsed_impl | ( | ) |
CORBA method:
References _Executed, _Sleeping, _ThreadCpuUsed, _ThreadId, CpuUsed(), and Killer().
Referenced by beginService(), and endService().
void Engines_Parallel_Component_i::destroy | ( | ) |
CORBA method: Deactivate this instance.
CORBA object is deactivated (do not respond any more to CORBA calls), the connection to Regsitry is removed (Registry informed of deactivation), internal server reference counter on the derived servant class is decremented, to allow destruction of the class (delete) by POA, when there are no more references. – TO BE USED BY CONTAINER ONLY (Container housekeeping) –
References _destroyed, and MESSAGE.
|
virtual |
C++ method: DumpPython default implementation.
void Engines_Parallel_Component_i::endService | ( | const char * | serviceName | ) |
C++ method: used by derived classes for supervision.
References _CanceledThread, _instanceName, _StartUsed, _ThreadCpuUsed, _ThreadId, CpuUsed_impl(), and MESSAGE.
char * Engines_Parallel_Component_i::get_parallel_proxy_object | ( | ) |
C++ method: Used by the Parallel Component to deploy a Parallel Salome_file.
References _proxy.
Referenced by setInputFileToService(), setOutputFileToService(), and wait_parallel_object_proxy().
Engines_Parallel_Container_i * Engines_Parallel_Component_i::GetContainerPtr | ( | ) |
Engines::Container_ptr Engines_Parallel_Component_i::GetContainerRef | ( | ) |
|
static |
C++ method: return standard library name built on component name.
PortableServer::ObjectId * Engines_Parallel_Component_i::getId | ( | ) |
C++ method: return CORBA instance id, the id is set in derived class constructor, when instance is activated.
References _id.
|
virtual |
Engines::FieldsDict * Engines_Parallel_Component_i::getProperties | ( | ) |
CORBA method: returns a previously stored map (key=string,value=any) as a sequence.
(see setProperties)
References _fieldsDict.
CORBA::Long Engines_Parallel_Component_i::getStudyId | ( | ) |
CORBA method: Get study Id.
References _studyId.
char * Engines_Parallel_Component_i::graphName | ( | ) |
|
virtual |
char * Engines_Parallel_Component_i::instanceName | ( | ) |
CORBA method: return name of the instance, unique in this Container.
References _instanceName.
char * Engines_Parallel_Component_i::interfaceName | ( | ) |
CORBA method: return name of the component class.
References _interfaceName.
|
static |
|
static |
bool Engines_Parallel_Component_i::Kill_impl | ( | ) |
bool Engines_Parallel_Component_i::Killer | ( | pthread_t | ThreadId, |
int | signum | ||
) |
C++ method: used in Supervision (see kill_impl)
References MESSAGE.
Referenced by CpuUsed_impl(), Kill_impl(), Stop_impl(), and Suspend_impl().
CORBA method: used by Supervision to give names to this instance.
References _graphName, _nodeName, graphName(), MESSAGE, and nodeName().
char * Engines_Parallel_Component_i::nodeName | ( | ) |
void Engines_Parallel_Component_i::ping | ( | ) |
CORBA method: Test if instance is alive and responds.
References MESSAGE.
bool Engines_Parallel_Component_i::Resume_impl | ( | ) |
CORBA method: used in Supervision.
References _id, _instanceName, _interfaceName, _Sleeping, _ThreadId, Kernel_Utils::GetHostname(), and MESSAGE.
void Engines_Parallel_Component_i::send_parallel_proxy_object | ( | CORBA::Object_ptr | proxy_ref | ) |
C++ method: Send message to event channel.
References _notifSupplier, graphName(), nodeName(), and NOTIFICATION_Supplier::Send().
void Engines_Parallel_Component_i::SetCurCpu | ( | ) |
void Engines_Parallel_Component_i::setProperties | ( | const Engines::FieldsDict & | dico | ) |
CORBA method: Gives a sequence of (key=string,value=any) to the component.
Base class component stores the sequence in a map. The map is cleared before. This map is for use by derived classes.
dico | sequence of (key=string,value=any) |
References _fieldsDict.
CORBA::Boolean Engines_Parallel_Component_i::setStudyId | ( | CORBA::Long | studyId | ) |
bool Engines_Parallel_Component_i::Stop_impl | ( | ) |
CORBA method: used in Supervision.
References _id, _instanceName, _interfaceName, _ThreadId, Kernel_Utils::GetHostname(), Killer(), and MESSAGE.
bool Engines_Parallel_Component_i::Suspend_impl | ( | ) |
CORBA method: used in Supervision.
References _id, _instanceName, _interfaceName, _Sleeping, _ThreadId, Kernel_Utils::GetHostname(), Killer(), and MESSAGE.
void Engines_Parallel_Component_i::wait_parallel_object_proxy | ( | ) |
C++ method: Used by the Parallel Component to deploy a Parallel Salome_file.
References get_parallel_proxy_object().
Referenced by setInputFileToService(), and setOutputFileToService().
|
private |
Referenced by CancelThread(), and endService().
|
protected |
Referenced by Engines_Parallel_Component_i(), GetContainerPtr(), and GetContainerRef().
|
private |
Referenced by beginService(), CpuUsed(), and CpuUsed_impl().
|
protected |
Referenced by beginService(), getProperties(), and setProperties().
|
protected |
Referenced by graphName(), and Names().
|
protected |
Referenced by getId(), Resume_impl(), Stop_impl(), Suspend_impl(), and ~Engines_Parallel_Component_i().
|
protected |
Referenced by setInputFileToService().
|
protected |
Referenced by beginService(), endService(), Engines_Parallel_Component_i(), instanceName(), Resume_impl(), Stop_impl(), and Suspend_impl().
|
protected |
Referenced by interfaceName(), Resume_impl(), Stop_impl(), Suspend_impl(), and ~Engines_Parallel_Component_i().
|
protected |
Referenced by setInputFileToService().
|
protected |
Referenced by setOutputFileToService().
|
protected |
|
protected |
|
staticprotected |
|
staticprotected |
|
protected |
Referenced by Engines_Parallel_Component_i(), and ~Engines_Parallel_Component_i().
|
protected |
Referenced by Names(), and nodeName().
|
protected |
Referenced by Engines_Parallel_Component_i(), sendMessage(), and ~Engines_Parallel_Component_i().
|
protected |
|
protected |
Referenced by setOutputFileToService().
|
protected |
Referenced by Engines_Parallel_Component_i(), GetContainerPtr(), and GetContainerRef().
|
protected |
|
protected |
Referenced by checkInputFilesToService(), getInputFileToService(), and setInputFileToService().
|
protected |
Referenced by checkOutputFilesToService(), getOutputFileToService(), and setOutputFileToService().
|
protected |
Referenced by getInputFileToService(), and getOutputFileToService().
|
protected |
Referenced by checkInputFilesToService(), checkOutputFilesToService(), getInputFileToService(), and getOutputFileToService().
|
protected |
Referenced by setInputFileToService(), and setOutputFileToService().
|
protected |
Referenced by setInputFileToService(), and setOutputFileToService().
|
protected |
Referenced by beginService().
|
private |
Referenced by beginService(), CpuUsed(), and endService().
|
protected |
Referenced by getStudyId(), and setStudyId().
|
protected |
|
private |
Referenced by beginService(), CpuUsed_impl(), endService(), and SetCurCpu().
|
private |
Referenced by beginService(), CpuUsed(), CpuUsed_impl(), endService(), Kill_impl(), Resume_impl(), Stop_impl(), and Suspend_impl().
|
protected |