CMS 3D CMS Logo

/afs/cern.ch/work/a/aaltunda/public/www/CMSSW_5_3_13_patch3/src/OnlineDB/EcalCondDB/interface/CaliGeneralDat.h

Go to the documentation of this file.
00001 #ifndef CALIGENERALDAT_H
00002 #define CALIGENERALDAT_H
00003 
00004 #include <map>
00005 #include <stdexcept>
00006 
00007 #include "OnlineDB/EcalCondDB/interface/IDataItem.h"
00008 #include "OnlineDB/EcalCondDB/interface/CaliTag.h"
00009 #include "OnlineDB/EcalCondDB/interface/CaliIOV.h"
00010 #include "OnlineDB/EcalCondDB/interface/EcalLogicID.h"
00011 
00012 class CaliGeneralDat : public IDataItem {
00013  public:
00014   friend class EcalCondDBInterface;
00015   CaliGeneralDat();
00016   ~CaliGeneralDat();
00017   
00018   // User data methods
00019   inline std::string getTable() { return "CALI_GENERAL_DAT"; }
00020 
00021   inline void setNumEvents(int n) { m_numEvents = n; }
00022   inline int getNumEvents() const { return m_numEvents; }
00023   
00024   inline void setComments(std::string comments) { m_comments = comments; }
00025   inline std::string getComments() const  { return m_comments; }
00026   
00027  private:
00028   void prepareWrite() 
00029     throw(std::runtime_error);
00030   
00031   void writeDB(const EcalLogicID* ecid, const CaliGeneralDat* item, CaliIOV* iov)
00032     throw(std::runtime_error);
00033   
00034   void fetchData(std::map< EcalLogicID, CaliGeneralDat >* fillVec, CaliIOV* iov)
00035     throw(std::runtime_error);
00036   
00037   // User data
00038   int m_numEvents;
00039   std::string m_comments;
00040   
00041 };
00042 
00043 #endif