Main Page   Modules   Namespace List   Class Hierarchy   Data Structures   File List   Namespace Members   Data Fields   Globals   Related Pages  

ScanHeader.h

Go to the documentation of this file.
00001 #ifndef SCANHEADER_H
00002 #define SCANHEADER_H
00003 
00004 #include <string>
00005 #include <boost/shared_ptr.hpp>
00006 #include "Sct/Serializable.h"
00007 #include "Sct/Streamable.h"
00008 
00009 using namespace std;
00010 using boost::shared_ptr;
00011 
00012 class TH1;
00013 class TH2;
00014 
00015 namespace SctData {
00016 
00017 class ConfigurationVariable;
00018 class DataStatus;
00019 
00026 class ScanHeader : public virtual Sct::Serializable {
00027 public:
00028     //Construct a scan from it's identifying information.
00029     ScanHeader(unsigned int scanNumber, unsigned int runNumber, string moduleName, const ConfigurationVariable& variable) throw() ;
00030 
00031     ScanHeader() throw() ;      
00032     
00036     virtual ~ScanHeader() throw();
00037 
00038     //Streamable and Serializable overrides
00039     virtual string getClassName() const throw() ;
00040     virtual string getUniqueID() const throw();
00041 
00042     static string getUniqueID(unsigned int runNumber, unsigned int scanNumber, const string& moduleName) throw();
00043 
00049     //const DataStatus& getStatus() const;
00050 
00054     unsigned int getScanNumber() const throw() {
00055         return scanNumber;
00056     }           
00057     
00060     unsigned int getRunNumber() const throw() {
00061         return runNumber;
00062     } 
00063     
00066     const string& getModuleName() const throw() {
00067         return moduleName;
00068     }  
00069     
00072     const ConfigurationVariable& getVariable() const throw() {
00073         return *variable;
00074     }         
00075 
00080     bool operator==(const ScanHeader& scan) const throw() ;
00081 
00082 
00083 protected:
00084     unsigned int scanNumber;                
00085     unsigned int runNumber;                 
00086     string moduleName;              
00087     const ConfigurationVariable* variable;      
00088 
00089     friend class ScanHeaderIOHelper;
00090 };
00091 }
00092 #endif //#ifndef SCANHEADER_H

Generated on Mon Dec 15 19:36:14 2003 for SCT DAQ/DCS Software by doxygen1.3-rc3