CMS 3D CMS Logo

/data/doxygen/doxygen-1.7.3/gen/CMSSW_4_2_8/src/CalibMuon/DTCalibration/plugins/DTFakeT0ESProducer.h

Go to the documentation of this file.
00001 #ifndef _DTFAKET0_H
00002 #define _DTFAKET0_H
00003 
00004 /*
00005  *  See header file for a description of this class.
00006  *
00007  *  $Date: 2007/11/02 10:47:03 $
00008  *  $Revision: 1.1 $
00009  *  \author S. Bolognesi - INFN Torino
00010  */
00011 
00012 // system include files
00013 #include <memory>
00014 #include "boost/shared_ptr.hpp"
00015 
00016 // user include files
00017 #include "FWCore/Framework/interface/SourceFactory.h"
00018 
00019 #include "FWCore/Framework/interface/Frameworkfwd.h"
00020 #include "FWCore/Framework/interface/ESProducer.h"
00021 #include "FWCore/Framework/interface/EventSetupRecordIntervalFinder.h"
00022 
00023 #include "FWCore/Framework/interface/Event.h"
00024 #include "FWCore/Framework/interface/MakerMacros.h"
00025 
00026 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00027 //#include <pair>
00028 #include <map>
00029 
00030 class DTT0;
00031 class DTT0Rcd;
00032 class DTLayerId;
00033 
00034 class DTFakeT0ESProducer : public edm::ESProducer, public edm::EventSetupRecordIntervalFinder  {
00035 
00036 public:
00037 
00038   DTFakeT0ESProducer(const edm::ParameterSet& pset);
00039 
00040   virtual ~DTFakeT0ESProducer();
00041 
00042   DTT0* produce(const DTT0Rcd& iRecord);
00043 
00044 private:
00045 
00046   void parseDDD(const DTT0Rcd& iRecord);
00047 
00048   void setIntervalFor(const edm::eventsetup::EventSetupRecordKey &, const edm::IOVSyncValue&,
00049                       edm::ValidityInterval & oValidity);
00050 
00051   std::map<DTLayerId,std::pair<unsigned int,unsigned int> > theLayerIdWiresMap;
00052 
00053   //t0 mean and sigma values read from cfg
00054   double t0Mean;
00055   double t0Sigma;
00056 };
00057 #endif