X-Git-Url: https://git.llucax.com/z.facultad/75.42/plaqui.git/blobdiff_plain/ad06ae2e40db5ce588092d90e1e089f527c27f84..e46a2c7e43af9156a434d9cf41c2beb5b25b36d1:/Server/include/plaqui/server/controlclient.h diff --git a/Server/include/plaqui/server/controlclient.h b/Server/include/plaqui/server/controlclient.h index 95682c5..d046c8f 100644 --- a/Server/include/plaqui/server/controlclient.h +++ b/Server/include/plaqui/server/controlclient.h @@ -30,6 +30,7 @@ #include "plaqui/server/command.h" #include "plaqui/server/connection.h" +#include "plaqui/server/receiver.h" // TODO TEMPRORAL #include namespace PlaQui { @@ -43,22 +44,31 @@ namespace Server { public: + /// Tipo de señal para indicar que se conectó. + typedef SigC::Signal0 SignalConnected; + /// Tipo de señal para indicar que se recibió una respuesta OK. - typedef SigC::Signal0 SignalOKReceived; + typedef SigC::Signal1 SignalOKReceived; /// Tipo de señal para indicar que se recibió un error. - typedef SigC::Signal0 SignalErrorReceived; + typedef SigC::Signal1 SignalErrorReceived; // Atributos. protected: + /// Señal para indicar que se conectó. + SignalConnected connected; + /// Señal para indicar que se recibió una respuesta OK. SignalOKReceived ok_received; /// Señal para indicar que se recibió un error. SignalErrorReceived error_received; + /// Receptor del estado de la planta TODO Temporal. + Receiver* receiver; + // Métodos. private: @@ -78,11 +88,24 @@ namespace Server { /** * Constructor. * - * \param host Host al cual conectarse para enviar comandos de + * \param _host Host al cual conectarse para enviar comandos de * control. - * \param port Puerto al cual conectarse. + * \param _port Puerto al cual conectarse. */ - ControlClient(std::string host = "localhost", int port = 7522); + ControlClient(const std::string& _host = "localhost", + const Connection::Port& _port = 7522) throw(sockerr); + + /** + * Envía un comando al servidor. + * + * \param command Comando a enviar. + */ + void send(const Command& command); + + /** + * Obtiene la señal para indicar que se conectó. + */ + SignalConnected& signal_connected(void); /** * Obtiene la señal para indicar que se recibió una respuesta OK. @@ -95,11 +118,9 @@ namespace Server { SignalErrorReceived& signal_error_received(void); /** - * Envía un comando al servidor. - * - * \param command Comando a enviar. + * Obtiene la señal que avisa cuando se recibió un cuadro. */ - void send(const Command& command); + Receiver::SignalFrameReceived& signal_frame_received(void); };