#ifndef PLAQUI_CONTROLCLIENT_H
#define PLAQUI_CONTROLCLIENT_H
+#include "plaqui/server/command.h"
#include "plaqui/server/connection.h"
#include <string>
public:
+ /// Tipo de señal para indicar que se conectó.
+ typedef SigC::Signal0<void> SignalConnected;
+
/// Tipo de señal para indicar que se recibió una respuesta OK.
- typedef SigC::signal0<void> SignalOKReceived;
+ typedef SigC::Signal1<void, const std::string&> SignalOKReceived;
/// Tipo de señal para indicar que se recibió un error.
- typedef SigC::signal0<void> SignalErrorReceived;
+ typedef SigC::Signal1<void, unsigned> 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;
* control.
* \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);
+
+ /**
+ * 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.
*/
SignalErrorReceived& signal_error_received(void);
- /**
- * Envía un comando al servidor.
- *
- * \param command Comando a enviar.
- */
- void send(const Command& command);
-
};
}