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

TMacroFileParser.hh

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

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