CMS 3D CMS Logo

/data/doxygen/doxygen-1.7.3/gen/CMSSW_4_2_8/src/DataFormats/Scalers/interface/LumiScalers.h

Go to the documentation of this file.
00001 /*
00002  *  File: DataFormats/Scalers/interface/LumiScalers.h   (W.Badgett)
00003  *
00004  *  Various Luminosity Scalers from the HF Lumi System
00005  *
00006  */
00007 
00008 #ifndef DATAFORMATS_SCALERS_LUMISCALERS_H
00009 #define DATAFORMATS_SCALERS_LUMISCALERS_H
00010 
00011 #include "DataFormats/Scalers/interface/TimeSpec.h"
00012 
00013 #include <ctime>
00014 #include <iosfwd>
00015 #include <vector>
00016 #include <string>
00017 
00026 
00027 
00028 
00029 class LumiScalers
00030 {
00031  public:
00032 
00033   LumiScalers();
00034   LumiScalers(const unsigned char * rawData);
00035   virtual ~LumiScalers();
00036 
00037   enum
00038   {
00039     nOcc = 2
00040   };
00041 
00043   std::string name() const { return "LumiScalers"; }
00044 
00046   bool empty() const { return false; }
00047 
00048   unsigned int trigType() const            { return(trigType_);}
00049   unsigned int eventID() const             { return(eventID_);}
00050   unsigned int sourceID() const            { return(sourceID_);}
00051   unsigned int bunchNumber() const         { return(bunchNumber_);}
00052 
00053   int version() const                      { return(version_);}
00054   timespec collectionTime() const          { return(collectionTime_.get_timespec());}
00055   float normalization() const              { return(normalization_);}
00056   float deadTimeNormalization() const  
00057   { return(deadTimeNormalization_);}
00058 
00059   float lumiFill() const                   { return(lumiFill_);}
00060   float lumiRun() const                    { return(lumiRun_);}
00061   float liveLumiFill() const               { return(liveLumiFill_);}
00062   float liveLumiRun() const                { return(liveLumiRun_);}
00063   float instantLumi() const                { return(instantLumi_);}
00064   float instantLumiErr() const             { return(instantLumiErr_);}
00065   unsigned char instantLumiQlty() const    { return(instantLumiQlty_);}
00066 
00067   float lumiETFill() const                 { return(lumiETFill_);}
00068   float lumiETRun() const                  { return(lumiETRun_);}
00069   float liveLumiETFill() const             { return(liveLumiETFill_);}
00070   float liveLumiETRun() const              { return(liveLumiETRun_);}
00071   float instantETLumi() const              { return(instantETLumi_);}
00072   float instantETLumiErr() const           { return(instantETLumiErr_);}
00073   unsigned char instantETLumiQlty() const  { return(instantETLumiQlty_);}
00074 
00075   std::vector<float> lumiOccFill() const      
00076   { return(lumiOccFill_);}
00077   std::vector<float> lumiOccRun() const      
00078   { return(lumiOccRun_);}
00079   std::vector<float> liveLumiOccFill() const      
00080   { return(liveLumiOccFill_);}
00081   std::vector<float> liveLumiOccRun() const      
00082   { return(liveLumiOccRun_);}
00083   std::vector<float> instantOccLumi() const      
00084   { return(instantOccLumi_);}
00085   std::vector<float> instantOccLumiErr() const   
00086   { return(instantOccLumiErr_);}
00087   std::vector<unsigned char> instantOccLumiQlty() const  
00088   { return(instantOccLumiQlty_);}
00089   std::vector<float> lumiNoise() const    { return(lumiNoise_);}
00090 
00091   unsigned int sectionNumber() const       { return(sectionNumber_);}
00092   unsigned int startOrbit() const          { return(startOrbit_);}
00093   unsigned int numOrbits() const           { return(numOrbits_);}
00094 
00096   int operator==(const LumiScalers& e) const { return false; }
00097 
00099   int operator!=(const LumiScalers& e) const { return false; }
00100 
00101 protected:
00102 
00103   unsigned int trigType_;
00104   unsigned int eventID_;
00105   unsigned int sourceID_;
00106   unsigned int bunchNumber_;
00107 
00108   int version_;
00109 
00110   TimeSpec collectionTime_;
00111 
00112   float normalization_;
00113   float deadTimeNormalization_;
00114 
00115   float lumiFill_;
00116   float lumiRun_;
00117   float liveLumiFill_;
00118   float liveLumiRun_;
00119   float instantLumi_;
00120   float instantLumiErr_;
00121   unsigned char instantLumiQlty_;
00122 
00123   float lumiETFill_;
00124   float lumiETRun_;
00125   float liveLumiETFill_;
00126   float liveLumiETRun_;
00127   float instantETLumi_;
00128   float instantETLumiErr_;
00129 
00130   unsigned char instantETLumiQlty_;
00131 
00132   std::vector<float> lumiOccFill_;
00133   std::vector<float> lumiOccRun_;
00134   std::vector<float> liveLumiOccFill_;
00135   std::vector<float> liveLumiOccRun_;
00136   std::vector<float> instantOccLumi_;
00137   std::vector<float> instantOccLumiErr_;
00138   std::vector<unsigned char> instantOccLumiQlty_;
00139   std::vector<float> lumiNoise_;
00140 
00141   unsigned int sectionNumber_;
00142   unsigned int startOrbit_;
00143   unsigned int numOrbits_;
00144 };
00145 
00146 
00148 std::ostream& operator<<(std::ostream& s, const LumiScalers& c);
00149 
00150 typedef std::vector<LumiScalers> LumiScalersCollection;
00151 
00152 #endif