00001 #ifndef RPCDBSimSetUp_h 00002 #define RPCDBSimSetUp_h 00003 00004 #include "FWCore/Framework/interface/EDProducer.h" 00005 #include "FWCore/Framework/interface/Event.h" 00006 #include "FWCore/Framework/interface/EventSetup.h" 00007 #include "FWCore/ParameterSet/interface/ParameterSet.h" 00008 #include "SimDataFormats/TrackingHit/interface/PSimHitContainer.h" 00009 #include <map> 00010 #include <vector> 00011 #include <fstream> 00012 #include <sstream> 00013 #include <iostream> 00014 #include<cstring> 00015 #include<string> 00016 #include<stdlib.h> 00017 #include <utility> 00018 00019 class RPCDigitizer; 00020 class RPCGeometry; 00021 class RPCDetId; 00022 00023 class RPCDBSimSetUp 00024 { 00025 public: 00026 00027 explicit RPCDBSimSetUp(const edm::ParameterSet& ps); 00028 virtual ~RPCDBSimSetUp(); 00029 00030 std::vector<float> getNoise(uint32_t id); 00031 std::vector<float> getEff(uint32_t id); 00032 float getTime(uint32_t id); 00033 std::map< int, std::vector<double> > getClsMap(); 00034 00036 void setGeometry(const RPCGeometry * geom) {theGeometry = geom;} 00037 const RPCGeometry * getGeometry() { return theGeometry; } 00038 00039 const RPCGeometry * theGeometry; 00040 00041 std::map<uint32_t, std::vector<float> > _mapDetIdNoise; 00042 std::map<uint32_t, std::vector<float> > _mapDetIdEff; 00043 std::map<RPCDetId, float> _bxmap; 00044 std::map< int, std::vector<double> > _clsMap; 00045 00046 std::ifstream *_infile1; 00047 std::ifstream *_infile2; 00048 std::ifstream *_infile3; 00049 std::ifstream *_infile4; 00050 00051 }; 00052 00053 #endif