00001 // ===================================================================== 00021 // ===================================================================== 00022 #ifndef __TSOFTWARERUNINFORMATIONMODULE_HH 00023 #define __TSOFTWARERUNINFORMATIONMODULE_HH 00024 00025 #include "Tglobals.h" 00026 #include "TSoftwareModule.hh" 00027 #include "TRunInformationTable.hh" 00028 00029 class TDataSegment; 00030 class TDataElement; 00031 00032 00052 class TSoftwareRunInformationModule 00053 : public TSoftwareModule 00054 { 00055 00056 private: 00057 TRunInformationTable theRunInformationTable; 00058 00059 public: 00060 TSoftwareRunInformationModule(); 00061 TSoftwareRunInformationModule( const TRunInformationTable& table ); 00062 TSoftwareRunInformationModule( const TSoftwareRunInformationModule& right ); 00063 ~TSoftwareRunInformationModule(); 00064 00065 public: 00066 Tint Clear(); 00067 Tint Update(); 00068 Tint Initialize(); 00069 Tvoid FillData( TDataElement& element, Tint channel ); 00070 00071 public: 00072 const TSoftwareRunInformationModule& operator=( const TSoftwareRunInformationModule& right ); 00073 Tbool operator==( const TSoftwareRunInformationModule& right ) const; 00074 Tbool operator!=( const TSoftwareRunInformationModule& right ) const; 00075 00076 public: 00077 TRunInformationTable& GetRunInformationTable(); 00078 const TRunInformationTable& GetRunInformationTable() const; 00079 Tvoid SetRunInformationTable( const TRunInformationTable& table ); 00080 00081 }; 00082 00083 inline TRunInformationTable& TSoftwareRunInformationModule::GetRunInformationTable() 00084 { 00085 return theRunInformationTable; 00086 } 00087 00088 inline const TRunInformationTable& TSoftwareRunInformationModule::GetRunInformationTable() const 00089 { 00090 return theRunInformationTable; 00091 } 00092 00093 inline Tvoid TSoftwareRunInformationModule::SetRunInformationTable( const TRunInformationTable& table ) 00094 { 00095 theRunInformationTable = table; 00096 theNumberOfChannels = theRunInformationTable.GetNumberOfRows(); 00097 return; 00098 } 00099 00100 #endif