8 #ifndef CORE_PROTOCOL_BASE_ICOMM_HPP
9 #define CORE_PROTOCOL_BASE_ICOMM_HPP
12 #include <boost/variant.hpp>
18 #define REGISTER_COMM(T) static protocol::base::CommMaker<T> maker(#T)
61 virtual void Connect(
const std::string& device,
62 const std::string& address) = 0;
65 virtual void Rpc(
const std::string& obj,
66 const std::string& proc,
Definition dispatcher.hpp:17
virtual ~IComm()
Definition iComm.hpp:77
virtual void StartMonitorItem(const std::string &item)=0
virtual void Write(const VectorVariant ¶ms)=0
virtual void Read(VectorVariant ¶ms)=0
virtual void RegisterCB(protocol::base::Dispatcher< protocol::base::VectorVariant & > &dispatcher, protocol::base::Dispatcher<> &failure, protocol::base::Dispatcher<> &normal)=0
virtual void Connect(const std::string &device, const std::string &address)=0
virtual void StopMonitorItem(const std::string &item)=0
virtual void StartMonitorItems(const std::vector< std::string > &item_vector)=0
virtual void Rpc(const std::string &obj, const std::string &proc, const VectorVariant ¶ms, Variant &result)=0
virtual void Disconnect()=0
Definition commFactory.cpp:13
@ TYPE_INT
Definition iComm.hpp:39
@ TYPE_SHORT
Definition iComm.hpp:41
@ TYPE_FLOAT
Definition iComm.hpp:45
@ TYPE_STRING
Definition iComm.hpp:43
@ TYPE_BYTE
Definition iComm.hpp:47
@ TYPE_SBYTE
Definition iComm.hpp:46
@ TYPE_BOOL
Definition iComm.hpp:38
@ TYPE_USHORT
Definition iComm.hpp:44
@ TYPE_UINT
Definition iComm.hpp:40
@ TYPE_DOUBLE
Definition iComm.hpp:42
boost::variant< bool, int, unsigned int, short, double, std::string, unsigned short, float, int8_t, uint8_t > Variant
Definition iComm.hpp:24
std::list< PairVariant > ListVariant
Definition iComm.hpp:55
std::vector< PairVariant > VectorVariant
Definition iComm.hpp:56
std::pair< std::string, Variant > PairVariant
Definition iComm.hpp:54