File indexing completed on 2023-03-17 11:24:06
0001 #ifndef __SimFastTiming_FastTimingCommon_ETLDeviceSim_h__
0002 #define __SimFastTiming_FastTimingCommon_ETLDeviceSim_h__
0003
0004 #include "FWCore/Framework/interface/Event.h"
0005 #include "FWCore/Framework/interface/EventSetup.h"
0006 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0007
0008 #include "SimDataFormats/TrackingHit/interface/PSimHit.h"
0009 #include "SimDataFormats/TrackingHit/interface/PSimHitContainer.h"
0010 #include "SimFastTiming/FastTimingCommon/interface/MTDDigitizerTypes.h"
0011
0012 #include "Geometry/Records/interface/MTDDigiGeometryRecord.h"
0013 #include "Geometry/MTDGeometryBuilder/interface/MTDGeometry.h"
0014
0015 #include <tuple>
0016
0017 namespace CLHEP {
0018 class HepRandomEngine;
0019 }
0020
0021 class ETLDeviceSim {
0022 public:
0023 ETLDeviceSim(const edm::ParameterSet& pset, edm::ConsumesCollector iC);
0024
0025 void getEvent(const edm::Event& evt) {}
0026
0027 void getEventSetup(const edm::EventSetup& evt);
0028
0029 void getHitsResponse(const std::vector<std::tuple<int, uint32_t, float> >& hitRefs,
0030 const edm::Handle<edm::PSimHitContainer>& hits,
0031 mtd_digitizer::MTDSimHitDataAccumulator* simHitAccumulator,
0032 CLHEP::HepRandomEngine* hre);
0033
0034 private:
0035 const edm::ESGetToken<MTDGeometry, MTDDigiGeometryRecord> geomToken_;
0036 const MTDGeometry* geom_;
0037
0038 float MIPPerMeV_;
0039 float bxTime_;
0040 float tofDelay_;
0041 };
0042
0043 #endif