#include "plaqui/server/connection.h"
#include "plaqui/server/command.h"
+#include "plaqui/server/response.h"
#include <socket++/sockinet.h>
+#include <sigc++/signal.h>
namespace PlaQui {
/// Conexión para recibir comandos de control para una planta.
class ControlServer: public Connection {
+ /////////////////////////////////////////////////////////////////////
// Tipos.
public:
/// Tipo de señal para indicar que se recibió un comando.
typedef SigC::Signal1<void, const Command&> SignalCommandReceived;
+ /////////////////////////////////////////////////////////////////////
// Atributos.
private:
/// Señal para indicar que se recibió un comando.
SignalCommandReceived command_received;
-
+ /////////////////////////////////////////////////////////////////////
// Métodos.
protected:
/**
* Atiende la conexión.
*/
- virtual void real_run(void);
+ virtual void real_run(void) throw();
public:
*/
ControlServer(const sockbuf::sockdesc& sd);
+ /**
+ * Envia una respuesta.
+ */
+ void send(const Response& response);
+
/**
* Obtiene la señal que avisa cuando se recibió un comando.
*/