ResultHeader.h

00001 #ifndef SCTDATA_RESULTHEADER_H
00002 #define SCTDATA_RESULTHEADER_H
00003 
00004 #include <string>
00005 #include <boost/shared_ptr.hpp>
00006 #include "Sct/Serializable.h"
00007 #include "Sct/Streamable.h"
00008 
00009 using boost::shared_ptr;
00010 
00011 class TH1;
00012 class TH2;
00013 
00014 namespace boost {
00015     namespace posix_time {
00016     class ptime;
00017     }
00018 }
00019 
00020 namespace SctData {
00021 
00022 class ConfigurationVariable;
00023 class DataStatus;
00024 
00031 class ResultHeader : public virtual Sct::Serializable {
00032 public:
00037     ResultHeader(unsigned int scanNumber, unsigned int runNumber, string moduleName, const ConfigurationVariable& variable) ;
00038 
00042     ResultHeader() ;        
00043     
00044     //Streamable and Serializable overrides
00045     virtual string getClassName() const throw() ;
00046     virtual Sct::UniqueID getUniqueID() const throw();
00047 
00048     static Sct::UniqueID getUniqueID(unsigned int runNumber, unsigned int scanNumber, const string& moduleName);
00049 
00054     unsigned int getScanNumber() const {
00055         return scanNumber;
00056     }       
00057     
00062     void setScanNumber(unsigned int scanNumber) {
00063     this->scanNumber = scanNumber;
00064     }
00065     
00069     unsigned int getRunNumber() const {
00070         return runNumber;
00071     } 
00072     
00077     void setRunNumber(unsigned int runNumber) {
00078     this->runNumber = runNumber;
00079     }
00080     
00084     const string& getModuleName() const {
00085         return moduleName;
00086     }
00087     
00092     void setModuleName(string name) {
00093     moduleName = name;
00094     }
00095     
00099     const ConfigurationVariable& getVariable() const {
00100         return *variable;
00101     }
00102  
00107     void setVariable(const ConfigurationVariable& var) {
00108     variable = &var;
00109     }
00110     
00115     boost::posix_time::ptime getStartTime() const;
00116     
00121     void setStartTime(boost::posix_time::ptime start);    
00122     
00127     boost::posix_time::ptime getEndTime() const;
00128     
00133     void setEndTime(boost::posix_time::ptime start);  
00134     
00139     string getStartTimeString() const {return startTime;}
00140 
00145     void setStartTimeString(string start) {startTime = start;}
00146     
00151     string getEndTimeString() const {return endTime;}
00152     
00157     void setEndTimeString(string end) {endTime = end;}
00158     
00159 
00165     bool operator==(const ResultHeader& scan) const;
00166 
00167 
00168 protected:
00169     unsigned int scanNumber;            
00170     unsigned int runNumber;             
00171     string moduleName;              
00172     string startTime;               
00173     string endTime;             
00174     const ConfigurationVariable* variable;      
00175 };
00176 }
00177 #endif //#ifndef SCTDATA_RESULTHEADER_H

Generated on Mon Feb 6 14:01:25 2006 for SCT DAQ/DCS Software - C++ by  doxygen 1.4.6