メインページ | ネームスペース一覧 | クラス階層 | アルファベット順一覧 | 構成 | ファイル一覧 | ネームスペースメンバ | 構成メンバ | ファイルメンバ

chat.hh

説明を見る。
00001 #ifndef CHAT_HH_
00002 # define CHAT_HH_
00003 
00004 # include "incoming-packet.hh"
00005 # include "packets_fwd.hh"
00006 
00007 namespace infos
00008 {
00009   class CustomChat : public packets::IncomingPacket
00010   {
00011   public:
00012     CustomChat(int size);
00013 
00014     int get_id();
00015     std::string get_name();
00016     std::string get_text();
00017   };
00018 
00019   template <int OP, int SIZE>
00020   class Chat : public CustomChat
00021   {
00022   public:
00023     Chat(int size = SIZE) : CustomChat(size)
00024     {
00025     }
00026 
00027     const static int op = OP;
00028 
00029     void print_tag(std::ostream &os) const
00030     {
00031       os << "chat<" << OP << ">";
00032     }
00033 
00034     void print_data(std::ostream &os) const
00035     {
00036       const char *str = _data.c_str();
00037       os 
00038         << "id: " << *(short *)(str + 1)
00039         << ", name: " << str + 5
00040         << ", text: " << str + 20;
00041     }
00042 
00043     void process(packets::PacketVisitor &ph)
00044     {
00045       ph(*this);
00046     }
00047   };
00048 };
00049 
00050 #endif

Cronous Emulatorに対してWed Aug 17 06:01:21 2005に生成されました。  doxygen 1.4.2-20050421