00001 // ===================================================================== 00024 // ===================================================================== 00025 #ifndef CLDAQ__TRUN_HH 00026 #define CLDAQ__TRUN_HH 00027 00028 #include "Tglobals.h" 00029 #include "TEventStack.hh" 00030 00031 00051 class TRun 00052 { 00053 00054 private: 00055 Tint theRunID; 00056 TEventStack theEventStack; 00057 00058 public: 00059 TRun( Tint runid = 0 ); 00060 TRun( const TEventStack& eventstack ); 00061 TRun( Tint runid, const TEventStack& eventstack ); 00062 TRun( const TRun& right ); 00063 virtual ~TRun(); 00064 00065 public: 00066 const TRun& operator=( const TRun& right ); 00067 Tbool operator==( const TRun& right ) const; 00068 Tbool operator!=( const TRun& right ) const; 00069 00070 public: 00071 Tint GetRunID() const; 00072 Tvoid SetRunID( Tint runid ); 00073 const TEventStack& GetEventStack() const; 00074 TEventStack& GetEventStack(); 00075 Tvoid SetEventStack( const TEventStack& eventstack ); 00076 00077 public: 00078 virtual Tvoid Clear(); 00079 virtual Tstring GetStringRunID( Tint digits = 6 ) const; 00080 00081 }; 00082 00083 inline Tint TRun::GetRunID() const 00084 { 00085 return theRunID; 00086 } 00087 inline const TEventStack& TRun::GetEventStack() const 00088 { 00089 return theEventStack; 00090 } 00091 00092 inline TEventStack& TRun::GetEventStack() 00093 { 00094 return theEventStack; 00095 } 00096 00097 inline Tvoid TRun::SetRunID( Tint runid ) 00098 { 00099 theRunID = runid; 00100 return; 00101 } 00102 00103 inline Tvoid TRun::SetEventStack( const TEventStack& eventstack ) 00104 { 00105 theEventStack = eventstack; 00106 return; 00107 } 00108 00109 #endif