00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef __EDELIB_SIPC_H__
00022 #define __EDELIB_SIPC_H__
00023
00024 #include "edelib-global.h"
00025
00026 EDELIB_NS_BEGIN
00027
00028 #ifndef SKIP_DOCS
00029 class SipcServerPrivate;
00030 class SipcClientPrivate;
00031 #endif
00032
00033
00037 typedef void (*SipcCallback)(const char*, void*);
00038
00083 class EDELIB_API SipcServer {
00084 private:
00085 SipcServerPrivate* priv;
00086 E_DISABLE_CLASS_COPY(SipcServer)
00087 public:
00091 SipcServer();
00092
00096 ~SipcServer();
00097
00105 bool request_name(const char* prefix);
00106
00113 void callback(SipcCallback cb, void* data);
00114 };
00115
00133 class EDELIB_API SipcClient {
00134 private:
00135 SipcClientPrivate* priv;
00136 E_DISABLE_CLASS_COPY(SipcClient)
00137 public:
00141 SipcClient();
00142
00146 ~SipcClient();
00147
00154 bool connect(const char* prefix);
00155
00161 void send(const char* msg);
00162 };
00163
00164 EDELIB_NS_END
00165 #endif