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

TInputObjectStream.hh

解説を見る。
00001 // =====================================================================
00025 // =====================================================================
00026 #ifndef __TINPUTOBJECTSTREAM_HH
00027 #define __TINPUTOBJECTSTREAM_HH
00028 
00029 #include "Tglobals.h"
00030 #include "TObjectStream.hh"
00031 
00032 class TStreamableObject;
00033 class TObjectFilter;
00034 
00035 
00055 class TInputObjectStream
00056   : public TObjectStream
00057 {
00058 
00059   public:
00060     TInputObjectStream( Tstream_t streamtype = tUnknownStream );
00061     TInputObjectStream( TObjectFilter* filter, Tstream_t streamtype = tUnknownStream );
00062     virtual ~TInputObjectStream();
00063 
00064   public:
00065     virtual Tint Read( TStreamableObject& object ) = 0;
00066     friend Tint operator>>( TInputObjectStream& left, TStreamableObject& object );
00067     friend Tint operator>>( TInputObjectStream& left, const TStreamableObject& object );
00068 
00069 };
00070 
00071 inline Tint operator>>( TInputObjectStream& left, TStreamableObject& object )
00072 {
00073   return left.Read( object );
00074 }
00075 
00076 inline Tint operator>>( TInputObjectStream& left, const TStreamableObject& object )
00077 {
00078   return left.Read( *(TStreamableObject*)(&object) );
00079 }
00080 
00081 #endif

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