00001
00002
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00031
00032 #ifndef RCSC_RCG_PARSER_V3_H
00033 #define RCSC_RCG_PARSER_V3_H
00034
00035 #include <rcsc/rcg/parser.h>
00036 #include <rcsc/rcg/types.h>
00037
00038 namespace rcsc {
00039 namespace rcg {
00040
00045 class ParserV3
00046 : public Parser {
00047 public:
00048
00053 int version() const
00054 {
00055 return REC_VERSION_3;
00056 }
00057
00065 bool parse( std::istream & is,
00066 Handler & handler ) const;
00067
00068 private:
00079 bool parseData( std::istream & is,
00080 Handler & handler ) const;
00081
00089 bool parseShowInfo( std::istream & is,
00090 Handler & handler ) const;
00091
00099 bool parseMsgInfo( std::istream & is,
00100 Handler & handler ) const;
00101
00109 bool parsePlayMode( std::istream & is,
00110 Handler & handler ) const;
00111
00119 bool parseTeamInfo( std::istream & is,
00120 Handler & handler ) const;
00121
00129 bool parsePlayerType( std::istream & is,
00130 Handler & handler ) const;
00131
00139 bool parseServerParam( std::istream & is,
00140 Handler & handler ) const;
00141
00149 bool parsePlayerParam( std::istream & is,
00150 Handler & handler ) const;
00151 };
00152
00153 }
00154 }
00155
00156 #endif