00001 // ===================================================================== 00002 // $Id: TOutputObjectSocket.hh,v 1.2 2003/07/30 16:19:31 goiwai Exp $ 00003 // $Name: CLDAQ-1-08-02 $ 00004 // 00005 // $Log: TOutputObjectSocket.hh,v $ 00006 // Revision 1.2 2003/07/30 16:19:31 goiwai 00007 // ファイルにコミットログをつけることにしました. 00008 // 00009 // ===================================================================== 00010 #ifndef __TOUTPUTOBJECTSOCKET_HH 00011 #define __TOUTPUTOBJECTSOCKET_HH 00012 00013 #include "Tglobals.h" 00014 #include "TObjectSocket.hh" 00015 #include "TOutputObjectStream.hh" 00016 00017 class TStreamableObject; 00018 class TObjectFilter; 00019 00020 class TOutputObjectSocket 00021 : public TObjectSocket, public TOutputObjectStream 00022 { 00023 00024 private: 00025 Tstring theServerName; 00026 struct hostent* theHostInformation; 00027 00028 public: 00029 TOutputObjectSocket( const Tstring& hostname = "localhost", Tint port = tDefaultPortNumber ); 00030 TOutputObjectSocket( Tint port ); 00031 TOutputObjectSocket( TObjectFilter* filter, const Tstring& hostname = "localhost", Tint port = tDefaultPortNumber ); 00032 TOutputObjectSocket( TObjectFilter* filter, Tint port ); 00033 ~TOutputObjectSocket(); 00034 00035 public: 00036 Tint Write( TStreamableObject& object ); 00037 00038 public: 00039 const Tstring& GetServerName() const; 00040 00041 private: 00042 Tvoid initialize(); 00043 00044 }; 00045 00046 inline const Tstring& TOutputObjectSocket::GetServerName() const 00047 { 00048 return( theServerName ); 00049 } 00050 00051 #endif