CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
DIPLumiProducer.h
Go to the documentation of this file.
1 #ifndef RecoLuminosity_LumiProducer_DIPLumiProducer_h
2 #define RecoLuminosity_LumiProducer_DIPLumiProducer_h
3 
9 #include "boost/shared_ptr.hpp"
10 namespace edm{
11  class IOVSyncValue;
12 }
13 namespace coral{
14  class ISchema;
15 }
16 class DIPLuminosityRcd;
17 class DIPLumiSummary;
18 class DIPLumiDetail;
23  public:
25  typedef boost::shared_ptr<DIPLumiSummary> ReturnSummaryType;
27  typedef boost::shared_ptr<DIPLumiDetail> ReturnDetailType;
30 
31  protected:
33  const edm::IOVSyncValue&,
35  private:
36  unsigned int maxavailableLSforRun(coral::ISchema& schema,const std::string&tablename,unsigned int runnumber);
37  private:
38  std::string m_connectStr;
39  std::map< unsigned int,boost::shared_ptr<DIPLumiSummary> > m_summarycache;
40  std::map< unsigned int,boost::shared_ptr<DIPLumiDetail> > m_detailcache;
41  bool m_isNullRun; //if lumi data exist for this run
42  unsigned int m_summarycachedrun;
43  unsigned int m_detailcachedrun;
44  unsigned int m_cachesize;
45  boost::shared_ptr<DIPLumiSummary> m_summaryresult;
46  boost::shared_ptr<DIPLumiDetail> m_detailresult;
48  private:
49  void fillsummarycache(unsigned int runnumber,unsigned int startlsnum);
50  void filldetailcache(unsigned int runnumber,unsigned int startlsnum);
51 };
52 #endif
unsigned int m_detailcachedrun
boost::shared_ptr< DIPLumiSummary > m_summaryresult
DIPLumiProducer(const edm::ParameterSet &)
std::string m_connectStr
boost::shared_ptr< DIPLumiDetail > m_detailresult
std::map< unsigned int, boost::shared_ptr< DIPLumiDetail > > m_detailcache
ReturnDetailType produceDetail(const DIPLuminosityRcd &)
std::map< unsigned int, boost::shared_ptr< DIPLumiSummary > > m_summarycache
list tablename
Definition: asciidump.py:411
virtual void setIntervalFor(const edm::eventsetup::EventSetupRecordKey &, const edm::IOVSyncValue &, edm::ValidityInterval &)
boost::shared_ptr< DIPLumiDetail > ReturnDetailType
unsigned int m_summarycachedrun
boost::shared_ptr< DIPLumiSummary > ReturnSummaryType
unsigned int m_cachesize
unsigned int maxavailableLSforRun(coral::ISchema &schema, const std::string &tablename, unsigned int runnumber)
void filldetailcache(unsigned int runnumber, unsigned int startlsnum)
const edm::IOVSyncValue * m_pcurrentTime
void fillsummarycache(unsigned int runnumber, unsigned int startlsnum)
ReturnSummaryType produceSummary(const DIPLuminosityRcd &)