12345678910111213141516171819202122232425262728293031323334353637383940414243444546 |
- #ifndef CMessage__h
- #define CMessage__h
- #include <string>
- #include <iostream>
- #define MAX_TRANSFER_LEN (10*1024*1024)
- namespace Chromium {
- std::string UtfToGbk(const char* utf8);
- std::string ConvertGBKToUtf8(std::string &strGBK);
- class CMessage{
- public:
- CMessage();
- explicit CMessage(unsigned int length);
- explicit CMessage(CMessage *p);
- ~CMessage();
- const char* getPayload() const;
- const unsigned int getLength();
- char* getWriteableData();
- int getBufferLength();
- int getMessageType();
- int getSessionID();
- int getTransID();
- void exchangeSessionIdAndTransId();
- bool getIsEnd();
- int getEventID();
- int getSignatureID();
- unsigned int getCMessageLength();
- void clear();
- void setSessionID(int sessionid, bool hasTransId = true);
- void setTransID(int transid);
- private:
- int memoryDynamicGrowth();
- public:
- enum { HEADER_LENGTH = 4 };
- enum { SUGGEST_BUFFER_LENGTH = 1024 * 4 };
- private:
- char* _data;
- unsigned int _buf_length;
- };
- }
- #endif
|