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