メインページ   モジュール   クラス階層   アルファベット順一覧   構成   ファイル一覧   構成メンバ   ファイルメンバ   関連ページ    

TMacroFileParser.hh

解説を見る。
00001 // =====================================================================
00021 // =====================================================================
00022 #ifndef __TMACROFILEPARSER_HH
00023 #define __TMACROFILEPARSER_HH
00024 
00025 #include "Tglobals.h"
00026 
00027 
00047 class TMacroFileParser
00048 {
00049 
00050   private:
00051     Tstring theMacroFileName;
00052     TstringList theCommentStringList;
00053     Tifstream theMacroFileStream;
00054 
00055   public:
00056     TMacroFileParser();
00057     TMacroFileParser( const Tstring& input );
00058     TMacroFileParser( const Tstring& input, const TstringList& comment );
00059     TMacroFileParser( const TMacroFileParser& right );
00060     ~TMacroFileParser();
00061 
00062   public:
00063     Tvoid Open();
00064     Tvoid Open( const Tstring& filename );
00065     Tbool IsOpen();
00066     Tbool IsGood() const;
00067     Tbool IsFail() const;
00068     Tbool IsEndOfFile() const;
00069     Tbool IsSuccess();
00070     Tvoid Close();
00071     TstringList ReadLine();
00072     Tbool IsExecutable( const TstringList& readbuf ) const;
00073     Tstring GetCommand( const TstringList& readbuf ) const;
00074     TstringList GetArguments( const TstringList& readbuf ) const;
00075 
00076   public:
00077     const Tstring& GetMacroFileName() const;
00078     Tvoid SetMacroFileName( const Tstring& filename );
00079     const TstringList& GetCommentStringList() const;
00080     TstringList GetCommentStringList();
00081     Tvoid SetCommentStringList( const TstringList& list );
00082     Tifstream& GetMacroFileStream();
00083 
00084   private:
00085     Tvoid checkFileStream();
00086     TstringList divideLine( Tstring& readline ) const;
00087     const Tstring& eraseComment( Tstring& readline ) const;
00088 
00089 };
00090 
00091 inline const Tstring& TMacroFileParser::GetMacroFileName() const
00092 {
00093   return theMacroFileName;
00094 }
00095 
00096 inline Tvoid TMacroFileParser::SetMacroFileName( const Tstring& filename )
00097 {
00098   theMacroFileName = filename;
00099   return;
00100 }
00101 
00102 inline const TstringList& TMacroFileParser::GetCommentStringList() const
00103 {
00104   return theCommentStringList;
00105 }
00106 
00107 inline TstringList TMacroFileParser::GetCommentStringList()
00108 {
00109   return theCommentStringList;
00110 }
00111 
00112 inline Tvoid TMacroFileParser::SetCommentStringList( const TstringList& list )
00113 {
00114   theCommentStringList = list;
00115   return;
00116 }
00117 
00118 inline Tifstream& TMacroFileParser::GetMacroFileStream()
00119 {
00120   return theMacroFileStream;
00121 }
00122 
00123 
00124 #endif

CLDAQ - a Class Library for Data AcQuisition (Version 1.11.0)
Go IWAI <goiwai@users.sourceforge.jp>