
#ifndef AggreGateDeviceControllerH
#define AggreGateDeviceControllerH

#include "util/RemoteConnector.h"

class AggreGateDeviceController : public RemoteConnector
{
public:
    virtual AggreGateDevicePtr getDevice() = 0;
    virtual void connect() = 0;
    virtual void disconnect() = 0;
    virtual void login() = 0;
    virtual void start() = 0;
    virtual bool isActive() = 0;
    virtual CommandProcessorStatisticsPtr getStatistics() = 0;
    virtual CommandPtr sendCommand(CommandPtr cmd) = 0;
    virtual std::list<ReplyMonitorPtr>  getActiveCommands() = 0;

};

#endif
