00001 // ===================================================================== 00002 // $Id: TInputObjectFile.hh,v 1.2 2003/07/30 16:19:30 goiwai Exp $ 00003 // $Name: CLDAQ-1-07-01 $ 00004 // 00005 // $Log: TInputObjectFile.hh,v $ 00006 // Revision 1.2 2003/07/30 16:19:30 goiwai 00007 // ファイルにコミットログをつけることにしました. 00008 // 00009 // ===================================================================== 00010 #ifndef __TINPUTOBJECTFILE_HH 00011 #define __TINPUTOBJECTFILE_HH 00012 00013 #include "Tglobals.h" 00014 #include "TObjectFile.hh" 00015 #include "TInputObjectStream.hh" 00016 00017 class TStreamableObject; 00018 class TDataRecord; 00019 class TDataSection; 00020 class TDataSegment; 00021 class TDataElement; 00022 class TObjectFilter; 00023 00024 class TInputObjectFile 00025 : public TObjectFile, public TInputObjectStream 00026 { 00027 00028 public: 00029 TInputObjectFile( const Tstring& filename, const Tstring& mode = "r" ); 00030 TInputObjectFile( TObjectFilter* filter, const Tstring& filename, const Tstring& mode = "r" ); 00031 ~TInputObjectFile(); 00032 00033 public: 00034 Tint Read( TStreamableObject& object ); 00035 00036 private: 00037 TDataRecord getDataRecord(); 00038 TDataSection getDataSection(); 00039 TDataSegment getDataSegment(); 00040 TDataElement getDataElement(); 00041 Tvoid readProperties( Tint& recsize, Tobject_t& type, Tstring& id, Tsize_t& entries ); 00042 00043 }; 00044 00045 #endif