CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
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 {
30 public:
31 
32  virtual ~ME0DigiPreRecoModel() {}
33 
35 
36  const ME0Geometry* getGeometry() {return geometry_;}
37 
38  virtual void simulateSignal(const ME0EtaPartition*, const edm::PSimHitContainer&, CLHEP::HepRandomEngine* engine) = 0;
39 
40  virtual void simulateNoise(const ME0EtaPartition*, CLHEP::HepRandomEngine* engine) = 0;
41 
42  // virtual std::vector<std::pair<int,int> >
43  // simulateClustering(const ME0EtaPartition*, const PSimHit*, const int) = 0;
44 
45  void fillDigis(int rollDetId, ME0DigiPreRecoCollection&);
46 
47  virtual void setup() = 0;
48 
49 protected:
50  std::set< ME0DigiPreReco> digi_;
51 
53 
55 
56  // DetectorHitMap detectorHitMap_;
57 };
58 #endif
virtual void setup()=0
void fillDigis(int rollDetId, ME0DigiPreRecoCollection &)
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::set< ME0DigiPreReco > digi_
std::vector< PSimHit > PSimHitContainer