#ifndef _SALOME_PORTS_IDL_
#define _SALOME_PORTS_IDL_
-/*! \brief
- This file contains the IDL declarations of the ports provided by the
- Salomé Runtime.
+/*! \file
+ This file contains the IDL declarations of the kind of ports provided by the
+ SALOME component model.
*/
module Ports {
- /*!
- \interface Port
- This interface (currently empty) defines a Port.
- A port is a Corba interface.
+ /*! \brief Interface of a DSC Port.
+ This interface defines a Port.
+ A port is a CORBA interface.
*/
interface Port {};
- exception NotDefined {};
- exception BadType {};
+ /*! \brief Interface of a Control_Port.
+ This interface defines a Control Port. When a component uses a control port,
+ it says that the service associated to the provides port can be started.
- /*! \interface PortProperties
- This interface permits to set and get properties
- associeted to a port. Each uses or provides port have a
- PortProperties object. But this object could be empty
- */
- interface PortProperties {
- void set_property(in string name, in any value) raises (Ports::BadType,
- Ports::NotDefined);
- any get_property(in string name) raises (Ports::NotDefined);
- };
-
- /*!
- \interface Control_Port
- This interface (currently empty) defines a Control Port.
- When a component uses his control port, it says that the service associated
- to the port can be started.
+ \note Currently Control_Port can not employed since it is not recognized
+ by the supervisor. But this type can be used to classified the port.
*/
interface Control_Port : Ports::Port {};
- /*!
- \interface Data_Port
- This interface (currently empty) defines a Data Port.
- A Data Port is a port that transmit wihtout any informations
- about control. So the service associated to the port could or could not
- be started.
+ /*! \brief Interface a Data_Port.
+ This interface defines a Data Port.
+ A Data Port is a port that transmit data between two components.
Each Data Port has a Put operation for the emitter and a Get operation
- fot the receiver.
+ for the receiver.
+
+ \note Data_Port is currently empty but it permits to identified
+ the behaviour of a port.
*/
interface Data_Port : Ports::Port {};
- /*!
- \interface Data_And_Control_Port
- This interface (currently empty) defines a combination of
- a Control_Port and a Data_Port.
+ /*! \brief Data_And_Control_Port.
+ This interface defines a combination of a Control_Port and a Data_Port.
+
+ \note Like Control_Port, Data_And_Control_Port can not employed since it is
+ not recognized by the supervisor. But this type can be used to classified the port.
*/
interface Data_And_Control_Port : Ports::Port {};
+
+ /*!
+ This exception indicates that the property doesn't not exist.
+ */
+ exception NotDefined {};
+
+ /*!
+ This exception indicates that the value gived to the property is not
+ of a good type.
+ */
+ exception BadType {};
+
+ /*! \brief Interface of a PortProperties.
+ This interface permits to set and get properties
+ associated to a port. Each uses or provides port have a
+ PortProperties object. But this object could be empty.
+ */
+ interface PortProperties {
+
+ /*!
+ This operation permits to set a value of a property.
+
+ \param name property's name.
+ \param value value of the property.
+
+ \exception Ports::BadType
+ \exception Ports::NotDefined
+ */
+ void set_property(in string name, in any value) raises (Ports::BadType,
+ Ports::NotDefined);
+
+ /*!
+ This operation permits to get property's value.
+
+ \param name property's name.
+ \return value of the property.
+
+ \exception Ports::NotDefined
+ */
+ any get_property(in string name) raises (Ports::NotDefined);
+ };
+
};
#endif