00001 // ===================================================================== 00021 // ===================================================================== 00022 #ifndef __TRUNACTION_HH 00023 #define __TRUNACTION_HH 00024 00025 #include "Tglobals.h" 00026 00027 class TRun; 00028 class TRunManager; 00029 class TEventManager; 00030 class TReadoutBook; 00031 class TCrate; 00032 00033 00053 class TRunAction 00054 { 00055 00056 protected: 00057 TRunManager* theRunManager; 00058 TEventManager* theEventManager; 00059 TReadoutBook* theReadoutBook; 00060 TCrate* theCrate; 00061 00062 public: 00063 TRunAction(); 00064 virtual ~TRunAction(); 00065 00066 public: 00067 virtual Tvoid BeginOfRunAction( TRun& aRun ); 00068 virtual Tvoid EndOfRunAction( TRun& aRun ); 00069 00070 public: 00071 TRunManager* GetRunManager() const; 00072 TEventManager* GetEventManager() const; 00073 TReadoutBook* GetReadoutBook() const; 00074 TCrate* GetCrate() const; 00075 Tvoid SetRunManager( TRunManager* manager ); 00076 Tvoid SetEventManager( TEventManager* manager ); 00077 Tvoid SetReadoutBook( TReadoutBook* book ); 00078 Tvoid SetCrate( TCrate* crate ); 00079 00080 }; 00081 00082 inline TRunManager* TRunAction::GetRunManager() const 00083 { 00084 return theRunManager; 00085 } 00086 00087 inline TEventManager* TRunAction::GetEventManager() const 00088 { 00089 return theEventManager; 00090 } 00091 00092 inline TReadoutBook* TRunAction::GetReadoutBook() const 00093 { 00094 return theReadoutBook; 00095 } 00096 00097 inline TCrate* TRunAction::GetCrate() const 00098 { 00099 return theCrate; 00100 } 00101 00102 inline Tvoid TRunAction::SetRunManager( TRunManager* manager ) 00103 { 00104 theRunManager = manager; 00105 return; 00106 } 00107 00108 inline Tvoid TRunAction::SetEventManager( TEventManager* manager ) 00109 { 00110 theEventManager = manager; 00111 return; 00112 } 00113 00114 inline Tvoid TRunAction::SetReadoutBook( TReadoutBook* book ) 00115 { 00116 theReadoutBook = book; 00117 return; 00118 } 00119 00120 inline Tvoid TRunAction::SetCrate( TCrate* crate ) 00121 { 00122 theCrate = crate; 00123 return; 00124 } 00125 00126 #endif