CMS 3D CMS Logo

/data/doxygen/doxygen-1.7.3/gen/CMSSW_4_2_8/src/CalibMuon/CSCCalibration/plugins/CSCChipSpeedCorrectionDBConditions.cc

Go to the documentation of this file.
00001 #include <memory>
00002 #include "boost/shared_ptr.hpp"
00003 #include <fstream>
00004 
00005 #include "CondFormats/CSCObjects/interface/CSCDBChipSpeedCorrection.h"
00006 #include "CondFormats/DataRecord/interface/CSCDBChipSpeedCorrectionRcd.h"
00007 #include "CalibMuon/CSCCalibration/interface/CSCChipSpeedCorrectionDBConditions.h"
00008 
00009 
00010 CSCChipSpeedCorrectionDBConditions::CSCChipSpeedCorrectionDBConditions(const edm::ParameterSet& iConfig)
00011 {
00012   //the following line is needed to tell the framework what
00013   // data is being produced
00014   isForMC = iConfig.getUntrackedParameter<bool>("isForMC",true);
00015   dataCorrFileName= iConfig.getUntrackedParameter<std::string>("dataCorrFileName","empty.txt");
00016   dataOffset=170.;
00017   cndbChipCorr = prefillDBChipSpeedCorrection(isForMC,dataCorrFileName,dataOffset);
00018   // added by Zhen (changed since 1_2_0)
00019   setWhatProduced(this,&CSCChipSpeedCorrectionDBConditions::produceDBChipSpeedCorrection);
00020   findingRecord<CSCDBChipSpeedCorrectionRcd>();
00021   //now do what ever other initialization is needed
00022 
00023 }
00024 
00025 
00026 CSCChipSpeedCorrectionDBConditions::~CSCChipSpeedCorrectionDBConditions()
00027 {
00028  
00029    // do anything here that needs to be done at desctruction time
00030    // (e.g. close files, deallocate resources etc.)
00031   delete cndbChipCorr;
00032 }
00033 
00034 
00035 //
00036 // member functions
00037 //
00038 
00039 // ------------ method called to produce the data  ------------
00040 CSCChipSpeedCorrectionDBConditions::ReturnType
00041 CSCChipSpeedCorrectionDBConditions::produceDBChipSpeedCorrection(const CSCDBChipSpeedCorrectionRcd& iRecord)
00042 {
00043   //need a new object so to not be deleted at exit
00044   CSCDBChipSpeedCorrection* mydata=new CSCDBChipSpeedCorrection( *cndbChipCorr );
00045   return mydata;
00046   
00047 }
00048 
00049 void CSCChipSpeedCorrectionDBConditions::setIntervalFor(const edm::eventsetup::EventSetupRecordKey &, const edm::IOVSyncValue&,
00050                                                         edm::ValidityInterval & oValidity)
00051 {
00052   oValidity = edm::ValidityInterval(edm::IOVSyncValue::beginOfTime(),edm::IOVSyncValue::endOfTime());
00053   
00054 }