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