This class implements the interface Engines::DSC. More...
#include <DSC_i.hxx>
Public Member Functions | |
Engines_DSC_i (CORBA::ORB_ptr orb, PortableServer::POA_ptr poa, PortableServer::ObjectId *contId, const char *instanceName, const char *interfaceName, bool notif=false) | |
Engines_DSC_i (CORBA::ORB_ptr orb, PortableServer::POA_ptr poa, Engines::Container_ptr container, const char *instanceName, const char *interfaceName, bool notif=false, bool regist=true) | |
virtual | ~Engines_DSC_i () |
virtual void | add_provides_port (Ports::Port_ptr ref, const char *provides_port_name, Ports::PortProperties_ptr port_prop) throw (Engines::DSC::PortAlreadyDefined, Engines::DSC::NilPort, Engines::DSC::BadProperty) |
virtual void | add_uses_port (const char *repository_id, const char *uses_port_name, Ports::PortProperties_ptr port_prop) throw (Engines::DSC::PortAlreadyDefined, Engines::DSC::BadProperty) |
virtual Ports::Port_ptr | get_provides_port (const char *provides_port_name, const CORBA::Boolean connection_error) throw (Engines::DSC::PortNotDefined, Engines::DSC::PortNotConnected) |
virtual Engines::DSC::uses_port * | get_uses_port (const char *uses_port_name) throw (Engines::DSC::PortNotDefined, Engines::DSC::PortNotConnected) |
virtual void | connect_provides_port (const char *provides_port_name) throw (Engines::DSC::PortNotDefined) |
virtual void | connect_uses_port (const char *uses_port_name, Ports::Port_ptr provides_port_ref) throw (Engines::DSC::PortNotDefined, Engines::DSC::BadPortType, Engines::DSC::NilPort) |
virtual CORBA::Boolean | is_connected (const char *port_name) throw (Engines::DSC::PortNotDefined) |
virtual void | disconnect_provides_port (const char *provides_port_name, const Engines::DSC::Message message) throw (Engines::DSC::PortNotDefined, Engines::DSC::PortNotConnected) |
virtual void | disconnect_uses_port (const char *uses_port_name, Ports::Port_ptr provides_port_ref, const Engines::DSC::Message message) throw (Engines::DSC::PortNotDefined, Engines::DSC::PortNotConnected, Engines::DSC::BadPortReference) |
virtual Ports::PortProperties_ptr | get_port_properties (const char *port_name) throw (Engines::DSC::PortNotDefined) |
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... | |
virtual void | SetOption (const char *, const char *) |
CORBA method: This method is to set an option specific to a certain EngineComponent. More... | |
virtual char * | GetOption (const char *) |
CORBA method: This method is to get value of an option specific to a certain EngineComponent. 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) |
virtual bool | hasObjectInfo () |
virtual char * | getObjectInfo (CORBA::Long studyId, const char *entry) |
virtual char * | getVersion () |
Get version of the component. More... | |
PortableServer::ObjectId * | getId () |
C++ method: return CORBA instance id, the id is set in derived class constructor, when instance is activated. More... | |
Engines_Container_i * | GetContainerPtr () |
C++ method: return Container Servant. More... | |
std::string | getContainerName () |
C++ method: return the name of the container associated with this component This name does not contains the "/Containers" string and all "/" are replaced by "_". More... | |
void | setContainerName () |
C++ method: set the name of the container associated with this component (attribute containerName) This name does not contains the "/Containers" string and all "/" are replaced by "</em>". More... | |
virtual 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... | |
virtual void | configureSalome_file (std::string service_name, std::string file_port_name, Salome_file_i *file) |
C++ method: used to configure the Salome_file into the runtime. More... | |
virtual void | provides_port_changed (const char *provides_port_name, int connection_nbr, const Engines::DSC::Message message)=0 |
This method is used by the component when the number of connection on a provides port changes. More... | |
virtual void | uses_port_changed (const char *uses_port_name, Engines::DSC::uses_port *new_uses_port, const Engines::DSC::Message message)=0 |
This method is used by the component when the number of connection on a uses port changes. 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... | |
static void | writeEvent (const char *request, const std::string &containerName, const char *instance_name, const char *port_name, const char *error, const char *message) |
Write a record in the trace file. More... | |
Protected Types | |
typedef std::map< std::string, Salome_file_i * > | _t_Salome_file_map |
typedef std::map< std::string, Engines_Component_i::_t_Salome_file_map * > | _t_Service_file_map |
enum | port_type { uses, provides, none } |
typedef std::map< std::string, port_t * > | ports |
Protected Attributes | |
int | _studyId |
std::string | _instanceName |
std::string | _interfaceName |
std::string | _containerName |
CORBA::ORB_var | _orb |
PortableServer::POA_var | _poa |
PortableServer::ObjectId * | _id |
PortableServer::ObjectId * | _contId |
Engines::Container_var | _container |
Engines_Component_i * | _thisObj |
RegistryConnexion * | _myConnexionToRegistry |
NOTIFICATION_Supplier * | _notifSupplier |
std::map< std::string, CORBA::Any > | _fieldsDict |
_t_Service_file_map | _Input_Service_file_map |
_t_Service_file_map | _Output_Service_file_map |
_t_Service_file_map::iterator | _Service_file_map_it |
_t_Salome_file_map::iterator | _Salome_file_map_it |
std::string | _serviceName |
std::string | _graphName |
std::string | _nodeName |
ports | my_ports |
ports::iterator | my_ports_it |
Static Protected Attributes | |
static bool | _isMultiStudy = true |
static bool | _isMultiInstance = false |
This class implements the interface Engines::DSC.
The implementation of methods are performed by the class Engines_DSC_interface.
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
Engines_DSC_i::Engines_DSC_i | ( | CORBA::ORB_ptr | orb, |
PortableServer::POA_ptr | poa, | ||
PortableServer::ObjectId * | contId, | ||
const char * | instanceName, | ||
const char * | interfaceName, | ||
bool | notif = false |
||
) |
Engines_DSC_i::Engines_DSC_i | ( | CORBA::ORB_ptr | orb, |
PortableServer::POA_ptr | poa, | ||
Engines::Container_ptr | container, | ||
const char * | instanceName, | ||
const char * | interfaceName, | ||
bool | notif = false , |
||
bool | regist = true |
||
) |
|
virtual |
|
virtual |
Reimplemented from Engines_DSC_interface.
References Engines_DSC_interface::add_provides_port().
|
virtual |
Reimplemented from Engines_DSC_interface.
References Engines_DSC_interface::add_uses_port().
|
inherited |
C++ method: used by derived classes for supervision.
References Engines_Component_i::_Executed, Engines_Component_i::_fieldsDict, Engines_Component_i::_instanceName, Engines_Component_i::_serviceName, Engines_Component_i::_StartUsed, Engines_Component_i::_ThreadCpuUsed, Engines_Component_i::_ThreadId, Engines_Component_i::CpuUsed_impl(), and MESSAGE.
Referenced by Superv_Component_i::beginService().
|
inherited |
|
virtualinherited |
|
virtualinherited |
|
virtualinherited |
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 | Salome_file C++ object |
Referenced by Engines_Component_i::checkInputFilesToService(), and Engines_Component_i::checkOutputFilesToService().
|
virtual |
Reimplemented from Engines_DSC_interface.
References Engines_DSC_interface::connect_provides_port().
|
virtual |
Reimplemented from Engines_DSC_interface.
References Engines_DSC_interface::connect_uses_port().
|
inherited |
C++ method:
References Engines_Component_i::_Executed, Engines_Component_i::_StartUsed, and Engines_Component_i::_ThreadId.
Referenced by Engines_Component_i::CpuUsed_impl(), and Engines_Component_i::SetCurCpu().
|
inherited |
CORBA method:
References Engines_Component_i::_Executed, _Sleeping, Engines_Component_i::_ThreadCpuUsed, Engines_Component_i::_ThreadId, Engines_Component_i::CpuUsed(), and Engines_Component_i::Killer().
Referenced by Engines_Component_i::beginService(), and Engines_Component_i::endService().
|
inherited |
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 Engines_Component_i::_id, Engines_Component_i::_poa, and MESSAGE.
|
virtual |
Reimplemented from Engines_DSC_interface.
References Engines_DSC_interface::disconnect_provides_port().
|
virtual |
Reimplemented from Engines_DSC_interface.
References Engines_DSC_interface::disconnect_uses_port().
|
virtualinherited |
C++ method: DumpPython default implementation.
|
inherited |
C++ method: used by derived classes for supervision.
References Engines_Component_i::_CanceledThread, Engines_Component_i::_instanceName, Engines_Component_i::_StartUsed, Engines_Component_i::_ThreadCpuUsed, Engines_Component_i::_ThreadId, Engines_Component_i::CpuUsed_impl(), and MESSAGE.
|
virtual |
Reimplemented from Engines_DSC_interface.
References Engines_DSC_interface::get_port_properties().
|
virtual |
Reimplemented from Engines_DSC_interface.
References Engines_DSC_interface::get_provides_port().
|
virtual |
Reimplemented from Engines_DSC_interface.
References Engines_DSC_interface::get_uses_port().
Referenced by Superv_Component_i::get_port().
|
inherited |
C++ method: return the name of the container associated with this component This name does not contains the "/Containers" string and all "/" are replaced by "_".
References Engines_Component_i::_containerName.
Referenced by create_calcium_port(), CalciumInterface::ecp_cd(), CalciumInterface::ecp_ecriture(), CalciumInterface::ecp_effi(), CalciumInterface::ecp_efft(), CalciumInterface::ecp_fin(), CalciumInterface::ecp_fini(), CalciumInterface::ecp_fint(), and CalciumInterface::ecp_lecture().
|
inherited |
C++ method: return Container Servant.
References Engines_Component_i::_container, and Engines_Component_i::_poa.
|
inherited |
CORBA method: return CORBA reference of the Container.
References Engines_Component_i::_container.
Referenced by Engines_Component_i::setInputFileToService(), and Engines_Component_i::setOutputFileToService().
|
staticinherited |
C++ method: return standard library name built on component name.
Referenced by Engines_Container_i::decInstanceCnt(), and Engines_Parallel_Container_i::decInstanceCnt().
|
inherited |
C++ method: return CORBA instance id, the id is set in derived class constructor, when instance is activated.
References Engines_Component_i::_id.
Referenced by SalomeTestComponentEngine_factory(), and TestMPIComponentEngine_factory().
|
virtualinherited |
CORBA method: This method is to get value of an option specific to a certain EngineComponent.
|
inherited |
CORBA method: returns a previously stored map (key=string,value=any) as a sequence.
(see setProperties)
References Engines_Component_i::_fieldsDict.
|
inherited |
CORBA method: Get study Id.
References Engines_Component_i::_studyId.
Referenced by Engines_Container_i::find_or_create_instance(), and Engines_Parallel_Container_i::find_or_create_instance().
|
virtualinherited |
Get version of the component.
This method is supposed to be implemented in all derived classes; default implementation returns empty string that means that no version information about the component is available.
|
inherited |
C++ method: – CHECK IF USED –.
References Engines_Component_i::_graphName.
Referenced by Engines_Component_i::Names().
|
virtualinherited |
|
inherited |
CORBA method: return name of the instance, unique in this Container.
References Engines_Component_i::_instanceName.
Referenced by create_calcium_port(), CalciumInterface::ecp_cd(), CalciumInterface::ecp_ecriture(), CalciumInterface::ecp_effi(), CalciumInterface::ecp_efft(), CalciumInterface::ecp_fin(), CalciumInterface::ecp_fini(), CalciumInterface::ecp_fint(), and CalciumInterface::ecp_lecture().
|
inherited |
CORBA method: return name of the component class.
References Engines_Component_i::_interfaceName.
|
virtual |
Reimplemented from Engines_DSC_interface.
References Engines_DSC_interface::is_connected().
|
staticinherited |
|
staticinherited |
|
inherited |
CORBA method: used in Supervision.
References Engines_Component_i::_ThreadId, and Engines_Component_i::Killer().
|
inherited |
C++ method: used in Supervision (see kill_impl)
References MESSAGE.
Referenced by Engines_Component_i::CpuUsed_impl(), Engines_Component_i::Kill_impl(), Engines_Component_i::Stop_impl(), and Engines_Component_i::Suspend_impl().
CORBA method: used by Supervision to give names to this instance.
References Engines_Component_i::_graphName, Engines_Component_i::_nodeName, Engines_Component_i::graphName(), and Engines_Component_i::nodeName().
|
inherited |
C++ method: – CHECK IF USED –.
References Engines_Component_i::_nodeName.
Referenced by Engines_Component_i::Names().
|
inherited |
CORBA method: Test if instance is alive and responds.
References MESSAGE.
|
pure virtualinherited |
This method is used by the component when the number of connection on a provides port changes.
This information helps the user code to detect operation on its ports.
provides_port_name | the name of the provides name that has changed. |
connection_nbr | the new number of connection on the provides port. |
message | contains informations about the modification of the port. |
Implemented in Superv_Component_i.
|
inherited |
CORBA method: used in Supervision.
References Engines_Component_i::_id, Engines_Component_i::_instanceName, Engines_Component_i::_interfaceName, _Sleeping, Engines_Component_i::_ThreadId, Kernel_Utils::GetHostname(), and MESSAGE.
C++ method: Send message to event channel.
References Engines_Component_i::_graphName, Engines_Component_i::_nodeName, Engines_Component_i::_notifSupplier, and NOTIFICATION_Supplier::Send().
|
inherited |
C++ method: set the name of the container associated with this component (attribute containerName) This name does not contains the "/Containers" string and all "/" are replaced by "</em>".
References Engines_Component_i::_container, and Engines_Component_i::_containerName.
Referenced by Engines_Component_i::Engines_Component_i().
|
inherited |
C++ method:
References Engines_Component_i::_ThreadCpuUsed, and Engines_Component_i::CpuUsed().
Referenced by SetCpuUsed().
CORBA method: This method is to set an option specific to a certain EngineComponent.
|
inherited |
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 Engines_Component_i::_fieldsDict.
|
virtualinherited |
C++ method: set study Id.
studyId | 0 if instance is not associated to a study, >0 otherwise (== study id) |
References Engines_Component_i::_studyId, and ASSERT.
Referenced by Engines_Parallel_Container_i::createCPPInstance(), Engines_Container_i::createInstance(), and Engines_MPIContainer_i::createMPIInstance().
|
inherited |
CORBA method: used in Supervision.
References Engines_Component_i::_id, Engines_Component_i::_instanceName, Engines_Component_i::_interfaceName, Engines_Component_i::_ThreadId, Kernel_Utils::GetHostname(), Engines_Component_i::Killer(), and MESSAGE.
|
inherited |
CORBA method: used in Supervision.
References Engines_Component_i::_id, Engines_Component_i::_instanceName, Engines_Component_i::_interfaceName, _Sleeping, Engines_Component_i::_ThreadId, Kernel_Utils::GetHostname(), Engines_Component_i::Killer(), and MESSAGE.
|
pure virtualinherited |
This method is used by the component when the number of connection on a uses port changes.
This information helps the user code to detect operation on its ports.
uses_port_name | the name of the uses name that has changed. |
new_uses_port | the new sequence representing the uses port. |
message | contains informations about the modification of the port. |
Implemented in Superv_Component_i.
|
staticinherited |
Write a record in the trace file.
request | the name of the request executed |
containerName | the name of the container where the request is executed |
instance_name | the name of the component where the request is executed |
port_name | the name of the port that is concerned |
error | if an error has occured, a string that identifies the error |
message | informations about error or about the request |
References initTrace().
Referenced by create_calcium_port(), CalciumInterface::ecp_cd(), CalciumInterface::ecp_ecriture(), CalciumInterface::ecp_effi(), CalciumInterface::ecp_efft(), CalciumInterface::ecp_fin(), CalciumInterface::ecp_fini(), CalciumInterface::ecp_fint(), CalciumInterface::ecp_lecture(), GenericPort< DataManipulator, COUPLING_POLICY >::get(), and GenericPort< DataManipulator, COUPLING_POLICY >::next().
|
protectedinherited |
|
protectedinherited |
Referenced by Engines_Component_i::getContainerName(), and Engines_Component_i::setContainerName().
|
protectedinherited |
Referenced by Engines_Component_i::Engines_Component_i().
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
Referenced by Engines_Component_i::destroy(), Engines_TestComponent_i::Engines_TestComponent_i(), Engines_Component_i::getId(), Engines_Component_i::Resume_impl(), Engines_Component_i::Stop_impl(), Engines_Component_i::Suspend_impl(), TestMPIComponentEngine::TestMPIComponentEngine(), and Engines_Component_i::~Engines_Component_i().
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
staticprotectedinherited |
|
staticprotectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
Referenced by Engines_Component_i::Engines_Component_i().
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
Referenced by Engines_Component_i::checkInputFilesToService(), Engines_Component_i::checkOutputFilesToService(), Engines_Component_i::getInputFileToService(), Engines_Component_i::getOutputFileToService(), Engines_Component_i::setInputFileToService(), and Engines_Component_i::setOutputFileToService().
|
protectedinherited |
Referenced by Engines_Component_i::beginService().
|
protectedinherited |
Referenced by Engines_Component_i::getStudyId(), and Engines_Component_i::setStudyId().
|
protectedinherited |
|
protectedinherited |
Referenced by Engines_DSC_interface::~Engines_DSC_interface().
|
protectedinherited |
Referenced by Engines_DSC_interface::~Engines_DSC_interface().