00001 // ===================================================================== 00002 // $Id: TInputObjectFile.hh,v 1.1.1.1 2003/06/27 02:56:41 goiwai Exp $ 00003 // $Name: CLDAQ-1-06-00 $ 00004 // ===================================================================== 00005 #ifndef __TINPUTOBJECTFILE_HH 00006 #define __TINPUTOBJECTFILE_HH 00007 00008 #include "Tglobals.h" 00009 #include "TObjectFile.hh" 00010 #include "TInputObjectStream.hh" 00011 00012 class TStreamableObject; 00013 class TDataRecord; 00014 class TDataSection; 00015 class TDataSegment; 00016 class TDataElement; 00017 class TObjectFilter; 00018 00019 class TInputObjectFile 00020 : public TObjectFile, public TInputObjectStream 00021 { 00022 00023 public: 00024 TInputObjectFile( const Tstring& filename, const Tstring& mode = "r" ); 00025 TInputObjectFile( TObjectFilter* filter, const Tstring& filename, const Tstring& mode = "r" ); 00026 ~TInputObjectFile(); 00027 00028 public: 00029 Tint Read( TStreamableObject& object ); 00030 00031 private: 00032 TDataRecord getDataRecord(); 00033 TDataSection getDataSection(); 00034 TDataSegment getDataSegment(); 00035 TDataElement getDataElement(); 00036 Tvoid readProperties( Tint& recsize, Tobject_t& type, Tstring& id, Tsize_t& entries ); 00037 00038 }; 00039 00040 #endif