This class implements DSC_User component. More...
#include <Superv_Component_i.hxx>


Data Structures | |
| struct | BadCast |
| struct | BadFabType |
| struct | BadProperty |
| struct | BadType |
| struct | NilPort |
| struct | PortAlreadyDefined |
| struct | PortNotConnected |
| struct | PortNotDefined |
| struct | superv_port_t |
| struct | UnexpectedState |
Public Member Functions | |
| Superv_Component_i (CORBA::ORB_ptr orb, PortableServer::POA_ptr poa, PortableServer::ObjectId *contId, const char *instanceName, const char *interfaceName, bool notif=false) | |
| Superv_Component_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 | ~Superv_Component_i () |
| virtual provides_port * | create_provides_control_port () |
| virtual provides_port * | create_provides_data_and_control_port (const char *port_type) |
| virtual uses_port * | create_uses_control_port () |
| virtual uses_port * | create_uses_data_and_control_port (const char *port_type) |
| virtual provides_port * | create_provides_data_port (const std::string &port_fab_type) throw (BadFabType) |
| virtual uses_port * | create_uses_data_port (const std::string &port_fab_type) throw (BadFabType) |
| virtual void | add_port (const char *port_fab_type, const char *port_type, const char *port_name) throw (PortAlreadyDefined, BadFabType, BadType, BadProperty) |
| template<typename SpecificPortType > | |
| SpecificPortType * | add_port (const char *port_fab_type, const char *port_type, const char *port_name) throw (PortAlreadyDefined, BadFabType, BadType, BadCast, BadProperty) |
| virtual void | add_port (provides_port *port, const char *provides_port_name) throw (PortAlreadyDefined, NilPort, BadProperty) |
| virtual void | add_port (uses_port *port, const char *uses_port_name) throw (PortAlreadyDefined, NilPort, BadProperty) |
| virtual void | get_port (provides_port *&port, const char *provides_port_name) throw (PortNotDefined, PortNotConnected) |
| virtual void | get_port (uses_port *&port, const char *uses_port_name) throw (PortNotDefined, PortNotConnected) |
| virtual void | get_uses_port_names (std::vector< std::string > &port_names, const std::string servicename="") const |
| template<typename SpecificPortType > | |
| SpecificPortType * | get_port (const char *port_name) throw (PortNotDefined, PortNotConnected, BadCast, UnexpectedState) |
| virtual void | provides_port_changed (const char *provides_port_name, int connection_nbr, const Engines::DSC::Message message) |
| virtual void | uses_port_changed (const char *uses_port_name, Engines::DSC::uses_port *new_uses_port, const Engines::DSC::Message message) |
| virtual port_factory * | get_factory (const std::string &factory_name) |
| void | beginService (const char *serviceName) |
| 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) |
Static Public Member Functions | |
| static void | register_factory (const std::string &factory_name, port_factory *factory_ptr) |
| static void | setTimeOut () |
| 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. | |
Static Public Attributes | |
| static long | dscTimeOut = 0 |
Protected Types | |
| enum | port_type { uses, provides, none } |
| typedef std::map< std::string, port_t * > | ports |
Protected Attributes | |
| ports | my_ports |
| ports::iterator | my_ports_it |
Private Types | |
| typedef std::map< std::string, port_factory * > | factory_map_t |
| typedef std::map< std::string, superv_port_t * > | superv_ports |
Private Attributes | |
| superv_ports | my_superv_ports |
| superv_ports::iterator | my_superv_ports_it |
Static Private Attributes | |
| static factory_map_t | _factory_map |
This class allows a higher programming level than DSC_Basic. It enables a programming level for service's developpers who want to use DSC ports.
This class has two level for using and declare ports. The higher level proposes operations to add ports that are provided by default by SALOME like Calcium ports. It provides too some methods to add their own DSC_User ports.
typedef std::map<std::string, port_factory*> Superv_Component_i::factory_map_t [private] |
typedef std::map<std::string, superv_port_t *> Superv_Component_i::superv_ports [private] |
typedef std::map<std::string, port_t *> Engines_DSC_interface::ports [protected, inherited] |
enum Engines_DSC_interface::port_type [protected, inherited] |
| Superv_Component_i::Superv_Component_i | ( | CORBA::ORB_ptr | orb, |
| PortableServer::POA_ptr | poa, | ||
| PortableServer::ObjectId * | contId, | ||
| const char * | instanceName, | ||
| const char * | interfaceName, | ||
| bool | notif = false |
||
| ) |
References setTimeOut().
| Superv_Component_i::Superv_Component_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 |
||
| ) |
References setTimeOut().
| Superv_Component_i::~Superv_Component_i | ( | ) | [virtual] |
References my_superv_ports, and my_superv_ports_it.
| virtual provides_port* Superv_Component_i::create_provides_control_port | ( | ) | [inline, virtual] |
| virtual provides_port* Superv_Component_i::create_provides_data_and_control_port | ( | const char * | port_type | ) | [inline, virtual] |
| virtual uses_port* Superv_Component_i::create_uses_control_port | ( | ) | [inline, virtual] |
| virtual uses_port* Superv_Component_i::create_uses_data_and_control_port | ( | const char * | port_type | ) | [inline, virtual] |
| provides_port * Superv_Component_i::create_provides_data_port | ( | const std::string & | port_fab_type | ) | throw (BadFabType) [virtual] |
This method permits to create a provides port provided by the platform. (See documentation of DSC for knoing these ports).
| port_fab_type | type provides port. |
References port_factory::create_data_servant(), and LOC.
| uses_port * Superv_Component_i::create_uses_data_port | ( | const std::string & | port_fab_type | ) | throw (BadFabType) [virtual] |
This method permits to create a uses port provided by the platform. (See documentation of DSC for knoing these ports).
| port_fab_type | type uses port. |
References port_factory::create_data_proxy(), and LOC.
| SpecificPortType * Superv_Component_i::add_port | ( | const char * | port_fab_type, |
| const char * | port_type, | ||
| const char * | port_name | ||
| ) | throw (PortAlreadyDefined, BadFabType, BadType, BadProperty) [virtual] |
Adds a port to the component. With this method only Salomé's provided DSC ports can be added.
| port_fab_type | type of the port. |
| port_type | uses or provides. |
| port_name | the name of the port in the component. |
References LOC.
| SpecificPortType* Superv_Component_i::add_port | ( | const char * | port_fab_type, |
| const char * | port_type, | ||
| const char * | port_name | ||
| ) | throw (PortAlreadyDefined, BadFabType, BadType, BadCast, BadProperty) |
Adds a port to the component. With this method only Salomé's provided DSC ports can be added.
| port_fab_type | type of the port. |
| port_type | uses or provides. |
| port_name | the name of the port in the component. |
| void Superv_Component_i::add_port | ( | provides_port * | port, |
| const char * | provides_port_name | ||
| ) | throw (PortAlreadyDefined, NilPort, BadProperty) [virtual] |
Adds a created provides port to the component.
| port | the provides port. |
| provides_port_name | the name of the port in the component. |
References Engines_DSC_interface::add_provides_port(), LOC, and Superv_Component_i::superv_port_t::p_ref.
| void Superv_Component_i::add_port | ( | uses_port * | port, |
| const char * | uses_port_name | ||
| ) | throw (PortAlreadyDefined, NilPort, BadProperty) [virtual] |
Adds a created uses port to the component.
| port | the uses port. |
| uses_port_name | the name of the port in the component. |
References Engines_DSC_interface::add_uses_port(), and LOC.
| void Superv_Component_i::get_port | ( | provides_port *& | port, |
| const char * | provides_port_name | ||
| ) | throw (PortNotDefined, PortNotConnected) [virtual] |
Gets the provides port already added in the component.
| port | the provides port pointer. |
| provides_port_name | the name of the port. |
References Engines_DSC_interface::get_provides_port(), and LOC.
| void Superv_Component_i::get_port | ( | uses_port *& | port, |
| const char * | uses_port_name | ||
| ) | throw (PortNotDefined, PortNotConnected) [virtual] |
Gets the uses port already added in the component.
| port | the uses port pointer. |
| uses_port_name | the name of the port. |
References Engines_DSC_i::get_uses_port(), and LOC.
| void Superv_Component_i::get_uses_port_names | ( | std::vector< std::string > & | port_names, |
| const std::string | servicename = "" |
||
| ) | const [virtual] |
Gets the list of the ports of a service. If servicename is not set, all the ports of the component are returned.
| port_names | the ports's list. |
| servicename | service's name. |
References my_superv_ports.
| SpecificPortType * Superv_Component_i::get_port | ( | const char * | port_name | ) | throw (PortNotDefined, PortNotConnected, BadCast, UnexpectedState) |
Gets a port already added in the component.
| port_name | the name of the port. |
References Engines_DSC_interface::get_provides_port(), Engines_DSC_i::get_uses_port(), LOC, Superv_Component_i::superv_port_t::p_ref, and Superv_Component_i::superv_port_t::u_ref.
| void Superv_Component_i::provides_port_changed | ( | const char * | provides_port_name, |
| int | connection_nbr, | ||
| const Engines::DSC::Message | message | ||
| ) | [virtual] |
Implements DSC_Callbacks.
References my_superv_ports, and my_superv_ports_it.
| void Superv_Component_i::uses_port_changed | ( | const char * | uses_port_name, |
| Engines::DSC::uses_port * | new_uses_port, | ||
| const Engines::DSC::Message | message | ||
| ) | [virtual] |
Implements DSC_Callbacks.
References my_superv_ports, and my_superv_ports_it.
| void Superv_Component_i::register_factory | ( | const std::string & | factory_name, |
| port_factory * | factory_ptr | ||
| ) | [static] |
Add a factory the component. If the factory_name is already used, the new library is not added.
| factory_name | name of the factory (used by Superv_Component_i::create_provides_data_port and Superv_Component_i::create_uses_data_port) |
| factory_ptr | factory pointer (destroyed by the component) |
References _factory_map.
| port_factory * Superv_Component_i::get_factory | ( | const std::string & | factory_name | ) | [virtual] |
Get a factory from the component.
| factory_name | name of the factory. |
References _factory_map.
| void Superv_Component_i::setTimeOut | ( | ) | [static] |
References dscTimeOut.
| void Superv_Component_i::beginService | ( | const char * | serviceName | ) |
References setTimeOut().
| virtual void Engines_DSC_i::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) [inline, virtual, inherited] |
Reimplemented from Engines_DSC_interface.
References Engines_DSC_interface::add_provides_port().
| virtual void Engines_DSC_i::add_uses_port | ( | const char * | repository_id, |
| const char * | uses_port_name, | ||
| Ports::PortProperties_ptr | port_prop | ||
| ) | throw (Engines::DSC::PortAlreadyDefined, Engines::DSC::BadProperty) [inline, virtual, inherited] |
Reimplemented from Engines_DSC_interface.
References Engines_DSC_interface::add_uses_port().
| virtual Ports::Port_ptr Engines_DSC_i::get_provides_port | ( | const char * | provides_port_name, |
| const CORBA::Boolean | connection_error | ||
| ) | throw (Engines::DSC::PortNotDefined, Engines::DSC::PortNotConnected) [inline, virtual, inherited] |
Reimplemented from Engines_DSC_interface.
References Engines_DSC_interface::get_provides_port().
| virtual Engines::DSC::uses_port* Engines_DSC_i::get_uses_port | ( | const char * | uses_port_name | ) | throw (Engines::DSC::PortNotDefined, Engines::DSC::PortNotConnected) [inline, virtual, inherited] |
Reimplemented from Engines_DSC_interface.
References Engines_DSC_interface::get_uses_port().
| virtual void Engines_DSC_i::connect_provides_port | ( | const char * | provides_port_name | ) | throw (Engines::DSC::PortNotDefined) [inline, virtual, inherited] |
Reimplemented from Engines_DSC_interface.
References Engines_DSC_interface::connect_provides_port().
| virtual void Engines_DSC_i::connect_uses_port | ( | const char * | uses_port_name, |
| Ports::Port_ptr | provides_port_ref | ||
| ) | throw (Engines::DSC::PortNotDefined, Engines::DSC::BadPortType, Engines::DSC::NilPort) [inline, virtual, inherited] |
Reimplemented from Engines_DSC_interface.
References Engines_DSC_interface::connect_uses_port().
| virtual CORBA::Boolean Engines_DSC_i::is_connected | ( | const char * | port_name | ) | throw (Engines::DSC::PortNotDefined) [inline, virtual, inherited] |
Reimplemented from Engines_DSC_interface.
References Engines_DSC_interface::is_connected().
| virtual void Engines_DSC_i::disconnect_provides_port | ( | const char * | provides_port_name, |
| const Engines::DSC::Message | message | ||
| ) | throw (Engines::DSC::PortNotDefined, Engines::DSC::PortNotConnected) [inline, virtual, inherited] |
Reimplemented from Engines_DSC_interface.
References Engines_DSC_interface::disconnect_provides_port().
| virtual void Engines_DSC_i::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) [inline, virtual, inherited] |
Reimplemented from Engines_DSC_interface.
References Engines_DSC_interface::disconnect_uses_port().
| virtual Ports::PortProperties_ptr Engines_DSC_i::get_port_properties | ( | const char * | port_name | ) | throw (Engines::DSC::PortNotDefined) [inline, virtual, inherited] |
Reimplemented from Engines_DSC_interface.
References Engines_DSC_interface::get_port_properties().
| void Engines_DSC_interface::writeEvent | ( | const char * | request, |
| const std::string & | containerName, | ||
| const char * | instance_name, | ||
| const char * | port_name, | ||
| const char * | error, | ||
| const char * | message | ||
| ) | [static, inherited] |
| 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().
long Superv_Component_i::dscTimeOut = 0 [static] |
std::map< std::string, port_factory * > Superv_Component_i::_factory_map [static, private] |
superv_ports::iterator Superv_Component_i::my_superv_ports_it [private] |
ports Engines_DSC_interface::my_ports [protected, inherited] |
ports::iterator Engines_DSC_interface::my_ports_it [protected, inherited] |