CMS 3D CMS Logo

/afs/cern.ch/work/a/aaltunda/public/www/CMSSW_6_2_5/src/RecoLuminosity/LumiProducer/interface/DIPLumiSummary.h

Go to the documentation of this file.
00001 #ifndef RecoLuminosity_LumiProducer_DIPLumiSummary_h
00002 #define RecoLuminosity_LumiProducer_DIPLumiSummary_h
00003 #include <iosfwd>
00004 #include <string>
00005 #include "RecoLuminosity/LumiProducer/interface/DIPLuminosityRcd.h"
00006 #include "FWCore/Framework/interface/data_default_record_trait.h"
00007 class DIPLumiSummary {
00008  public:
00010   DIPLumiSummary():m_runnum(0),m_ls(0),m_instlumi(0.0),m_dellumi(0.0),m_reclumi(0.0),m_deadfrac(1.0),m_cmsalive(false){}
00011   
00013   DIPLumiSummary(float instlumi,float dellumi,float reclumi,unsigned short cmsalive):m_instlumi(instlumi),m_dellumi(dellumi),m_reclumi(reclumi),m_deadfrac(1.0),m_cmsalive(cmsalive){}
00014     
00016   ~DIPLumiSummary(){}
00017   bool isNull()const;
00022   float instDelLumi() const;
00027   float intgDelLumiByLS()const;
00032   float intgRecLumiByLS()const;
00037   float deadtimefraction() const;
00041   int cmsalive()const;
00042   //
00043   //setters
00044   //
00048   unsigned int fromRun()const;
00052   unsigned int fromLS()const;
00053   void setOrigin(unsigned int runnumber,unsigned int ls);
00054  private :
00055   unsigned int m_runnum;
00056   unsigned int m_ls;
00057   float m_instlumi;//avg inst lumi in LS
00058   float m_dellumi;//integrated luminosity of this ls
00059   float m_reclumi;
00060   mutable float m_deadfrac;
00061   unsigned short m_cmsalive;  
00062 }; 
00063 
00064 std::ostream& operator<<(std::ostream& s, const DIPLumiSummary& diplumiSummary);
00065 
00066 EVENTSETUP_DATA_DEFAULT_RECORD(DIPLumiSummary,DIPLuminosityRcd)
00067 
00068 #endif // RecoLuminosity_LuminosityProducer_DIPLumiSummary_h