]> git.llucax.com Git - z.facultad/75.42/plaqui.git/blobdiff - Model/include/iconector.h
* Se agrega carga de lineas entre compuertas.
[z.facultad/75.42/plaqui.git] / Model / include / iconector.h
index 44e1e32295ab00cbaa23851803d6658e273c4b61..98455fca00c0fae6564c56fa489b5559f91c0af9 100644 (file)
@@ -7,23 +7,34 @@
 
 namespace PlaQui {
 
+namespace Model {
 /** Conector genérico de elementos
+ *
+ *  El conector es un interfaz común que permite a objetos de distinto
+ *  tipo comunicarse entre sí sin la necesidad de conocerse.
+ *  Maneja una lista de elementos conectados a uno, que pueden estar
+ *  tanto conectados a una entrada como a una salida.
  */
 class IConector {
 public:
-       /// Constructor
+       /** Constructor
+        *
+        *  \param in Cantidad de entradas
+        *  \param out Cantidad de salidas
+        */
        IConector(unsigned in, unsigned out);
        /// Destructor
        virtual ~IConector();
 
        /** Envía un mensage a los elementos conectados
         *
-        *  Esvía un mensage a los elementos conectados a la entrada o
+        *  Envía un mensage a los elementos conectados a la entrada o
         *  a la salida.
         *  \param where Donde enviar el mensage, IConector::IN o IConector::OUT
         *  \param msg Mensage a enviar
+        *  \param data Dato opcional a mandar, según el mensage que se envíe
         */
-       void send_msg(int where, int msg);
+       void send_msg(int where, int msg, void *data=NULL);
        
        /** Recibe un mensage
         *
@@ -52,7 +63,7 @@ public:
 
        /// Constantes de posición donde conectar
        enum {
-               IN, ///< conectar a la entrada
+               IN=0, ///< conectar a la entrada
                OUT ///< conectar a la salida
        };
 
@@ -63,13 +74,13 @@ public:
         *  de evitar solapamiento de mensajes.
         *  Por ejemplo, si tenemos una clase B con un mensaje TEST se declararía
         *  como :
-        *  \verbatim
+        *  \code
         *      class B:public IConector {
         *              enum {
         *                      MSG_TEST=IConector::MSG_LAST,
         *                      MSG_LAST
         *      };
-        *  \endverbatim
+        *  \endcode
         */
        enum {
                MSG_DISCONECT=0, ///< Desconectar el objeto que envía el mensaje
@@ -92,6 +103,8 @@ private:
        IConector &operator = (const IConector &) { return (*this); }
 };
 
-}
+} // namespace Model
+} // namespace PlaQui
 
 #endif // _I_CONECTOR_H_
+