00001 // ===================================================================== 00024 // ===================================================================== 00025 #ifndef CLDAQ__TEVENT_HH 00026 #define CLDAQ__TEVENT_HH 00027 00028 #include "Tglobals.h" 00029 #include "TDataRecord.hh" 00030 00031 class TDataRecord; 00032 00033 00053 class TEvent 00054 { 00055 00056 private: 00057 Tint theEventID; 00058 TDataRecord theDataRecord; 00059 00060 public: 00061 TEvent( Tint eventID = 0 ); 00062 TEvent( const TDataRecord& eventData ); 00063 TEvent( Tint eventID, const TDataRecord& eventData ); 00064 TEvent( const TEvent& right ); 00065 ~TEvent(); 00066 00067 public: 00068 const TEvent& operator=( const TEvent& right ); 00069 Tbool operator==( const TEvent& right ) const; 00070 Tbool operator!=( const TEvent& right ) const; 00071 00072 public: 00073 Tint GetEventID() const; 00074 const TDataRecord& GetDataRecord() const; 00075 TDataRecord& GetDataRecord(); 00076 Tvoid SetEventID( Tint eventID ); 00077 Tvoid SetDataRecord( const TDataRecord& record ); 00078 00079 public: 00080 Tvoid Clear(); 00081 Tstring GetStringEventID( Tint digits = 6 ) const; 00082 00083 }; 00084 00085 inline Tint TEvent::GetEventID() const 00086 { 00087 return theEventID; 00088 } 00089 00090 inline const TDataRecord& TEvent::GetDataRecord() const 00091 { 00092 return theDataRecord; 00093 } 00094 00095 inline TDataRecord& TEvent::GetDataRecord() 00096 { 00097 return theDataRecord; 00098 } 00099 00100 inline Tvoid TEvent::SetEventID( Tint eventID ) 00101 { 00102 theEventID = eventID; 00103 return; 00104 } 00105 00106 inline Tvoid TEvent::SetDataRecord( const TDataRecord& record ) 00107 { 00108 theDataRecord = record; 00109 return; 00110 } 00111 00112 #endif