parser_v4.h

説明を見る。
00001 // -*-c++-*-
00002 
00008 /*
00009  *Copyright:
00010 
00011  Copyright (C) Hidehisa AKIYAMA
00012 
00013  This code is free software; you can redistribute it and/or
00014  modify it under the terms of the GNU Lesser General Public
00015  License as published by the Free Software Foundation; either
00016  version 2.1 of the License, or (at your option) any later version.
00017 
00018  This library is distributed in the hope that it will be useful,
00019  but WITHOUT ANY WARRANTY; without even the implied warranty of
00020  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00021  Lesser General Public License for more details.
00022 
00023  You should have received a copy of the GNU Lesser General Public
00024  License along with this library; if not, write to the Free Software
00025  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
00026 
00027  *EndCopyright:
00028  */
00029 
00031 
00032 #ifndef RCSC_RCG_PARSER_V4_H
00033 #define RCSC_RCG_PARSER_V4_H
00034 
00035 #include <rcsc/rcg/parser.h>
00036 #include <rcsc/rcg/types.h>
00037 
00038 #include <string>
00039 
00040 namespace rcsc {
00041 namespace rcg {
00042 
00047 class ParserV4
00048     : public Parser {
00049 public:
00050 
00055     int version() const
00056       {
00057           return REC_VERSION_4;
00058       }
00059 
00067     bool parse( std::istream & is,
00068                 Handler & handler ) const;
00069 
00081     bool parseLine( const int n_line,
00082                     const std::string & line,
00083                     Handler & handler ) const;
00084 
00085 private:
00086 
00095     bool parseShow( const int n_line,
00096                     const std::string & line,
00097                     Handler & handler ) const;
00098 
00107     bool parseMsg( const int n_line,
00108                    const std::string & line,
00109                    Handler & handler ) const;
00110 
00119     bool parsePlayMode( const int n_line,
00120                         const std::string & line,
00121                         Handler & handler ) const;
00122 
00131     bool parseTeam( const int n_line,
00132                     const std::string & line,
00133                     Handler & handler ) const;
00134 
00143     bool parsePlayerType( const int n_line,
00144                           const std::string & line,
00145                           Handler & handler ) const;
00146 
00155     bool parseServerParam( const int n_line,
00156                            const std::string & line,
00157                            Handler & handler ) const;
00158 
00167     bool parsePlayerParam( const int n_line,
00168                            const std::string & line,
00169                            Handler & handler ) const;
00170 };
00171 
00172 } // end of namespace
00173 } // end of namespace
00174 
00175 #endif

librcscに対してThu May 1 15:41:21 2008に生成されました。  doxygen 1.5.0