CMS 3D CMS Logo

ME0DigiPreRecoModel.h
Go to the documentation of this file.
1 #ifndef SimMuon_GEMDigitizer_ME0DigiPreRecoModel_h
2 #define SimMuon_GEMDigitizer_ME0DigiPreRecoModel_h
3 
16 
17 #include <map>
18 #include <set>
19 
20 namespace CLHEP {
21  class HepRandomEngine;
22 }
23 
24 class ME0EtaPartition;
25 class ME0Geometry;
26 class PSimHit;
27 
29 public:
30  virtual ~ME0DigiPreRecoModel() {}
31 
33 
34  const ME0Geometry* getGeometry() { return geometry_; }
35 
36  virtual void simulateSignal(const ME0EtaPartition*, const edm::PSimHitContainer&, CLHEP::HepRandomEngine* engine) = 0;
37 
38  virtual void simulateNoise(const ME0EtaPartition*, CLHEP::HepRandomEngine* engine) = 0;
39 
40  // virtual std::vector<std::pair<int,int> >
41  // simulateClustering(const ME0EtaPartition*, const PSimHit*, const int) = 0;
42 
43  void fillDigis(int rollDetId, ME0DigiPreRecoCollection&);
44 
45  virtual void setup() = 0;
46 
47 protected:
48  std::set<ME0DigiPreReco> digi_;
49 
51 
53 
54  // DetectorHitMap detectorHitMap_;
55 };
56 #endif
virtual void setup()=0
void fillDigis(int rollDetId, ME0DigiPreRecoCollection &)
std::set< ME0DigiPreReco > digi_
void setGeometry(const ME0Geometry *geom)
const ME0Geometry * geometry_
virtual void simulateNoise(const ME0EtaPartition *, CLHEP::HepRandomEngine *engine)=0
const ME0Geometry * getGeometry()
virtual void simulateSignal(const ME0EtaPartition *, const edm::PSimHitContainer &, CLHEP::HepRandomEngine *engine)=0
ME0DigiPreRecoModel(const edm::ParameterSet &)
std::vector< PSimHit > PSimHitContainer