|
UniSet
2.2.1
|
00001 // ------------------------------------------------------------------------- 00002 #ifndef LogServerTypes_H_ 00003 #define LogServerTypes_H_ 00004 // ------------------------------------------------------------------------- 00005 #include <ostream> 00006 #include <cstring> 00007 // ------------------------------------------------------------------------- 00008 namespace LogServerTypes 00009 { 00010 const unsigned int MAGICNUM = 0x20150531; 00011 enum Command 00012 { 00013 cmdNOP, 00014 cmdSetLevel, 00015 cmdAddLevel, 00016 cmdDelLevel, 00017 cmdRotate, 00018 cmdOffLogFile, 00019 cmdOnLogFile, 00021 // команды требующий ответа.. 00022 cmdList, 00023 cmdFilterMode 00024 // cmdSetLogFile 00025 }; 00026 00027 std::ostream& operator<<(std::ostream& os, Command c ); 00028 00029 struct lsMessage 00030 { 00031 lsMessage(): magic(MAGICNUM), cmd(cmdNOP), data(0) 00032 { 00033 std::memset(logname, 0, sizeof(logname)); 00034 } 00035 unsigned int magic; 00036 Command cmd; 00037 unsigned int data; 00038 00039 static const size_t MAXLOGNAME = 30; 00040 char logname[MAXLOGNAME + 1]; // +1 reserverd for '\0' 00041 00042 void setLogName( const std::string& name ); 00043 00044 // для команды 'cmdSetLogFile' 00045 // static const size_t MAXLOGFILENAME = 200; 00046 // char logfile[MAXLOGFILENAME]; 00047 } __attribute__((packed)); 00048 00049 std::ostream& operator<<(std::ostream& os, lsMessage& m ); 00050 } 00051 // ------------------------------------------------------------------------- 00052 #endif // LogServerTypes_H_ 00053 // -------------------------------------------------------------------------
1.7.6.1