00001
00007 #ifndef _Q_MSG_CLIENT_HH_
00008 #define _Q_MSG_CLIENT_HH_
00009
00010 #include "QCuore.hh"
00011 #include "QMessageDefs.hh"
00012 #include "QDaqCommonDefs.hh"
00013 #include "QBaseClient.hh"
00014
00015 #include <sys/types.h>
00016 #include <list>
00017
00018 class QMsgClient: public QBaseClient
00019 {
00020 public:
00021
00026 QMsgClient();
00027
00033 QMsgClient(const std::string& address, const std::string& port);
00034
00036 virtual ~QMsgClient();
00037
00048 bool RegisterProcess(const std::string& processName,
00049 const std::string& host,
00050 pid_t processPid);
00051
00052
00059 bool UnregisterProcess(const std::string& processName);
00060
00068 bool SendStatus(const std::string& processName, ProcessStatus_t status);
00069
00078 bool SendLog(const std::string& processName,
00079 const std::string& message,
00080 MsgLevel level = InfoMsg);
00081
00090 bool GetStatus(const std::string& processName, ProcessStatus_t& status);
00091
00097 bool GetRegisteredProcesses(std::list<std::string>& processes);
00098
00108 bool IsRegistered(const std::string& processName, bool& isReg);
00109
00110 };
00111
00112 #endif