CMS 3D CMS Logo

SiPileUpSignals.h
Go to the documentation of this file.
1 #ifndef Tracker_SiPileUpSignals_h
2 #define Tracker_SiPileUpSignals_h
3 
4 #include <map>
5 #include <vector>
8 
9 class SimHit;
15 public:
16  // type used to describe the amplitude on a strip
17  typedef float Amplitude;
18  // associates to each strip a vector of amplitudes.
19  // That allows later to comput the fraction of the contribution of each simhit to the ADC value
20  typedef std::map<int, Amplitude> SignalMapType;
21  typedef std::map<uint32_t, SignalMapType> signalMaps;
22 
24 
25  virtual ~SiPileUpSignals() {}
26 
27  virtual void add(uint32_t detID,
28  const std::vector<float>& locAmpl,
29  const size_t& firstChannelWithSignal,
30  const size_t& lastChannelWithSignal);
31 
32  void reset() { resetSignals(); }
33 
34  const SignalMapType* getSignal(uint32_t detID) const {
35  auto where = signal_.find(detID);
36  if (where == signal_.end()) {
37  return nullptr;
38  }
39  return &where->second;
40  }
41 
42 private:
43  void resetSignals();
45 };
46 #endif
SiPileUpSignals::reset
void reset()
Definition: SiPileUpSignals.h:32
SiPileUpSignals::add
virtual void add(uint32_t detID, const std::vector< float > &locAmpl, const size_t &firstChannelWithSignal, const size_t &lastChannelWithSignal)
Definition: SiPileUpSignals.cc:6
Map.h
PSimHit.h
SiPileUpSignals::SiPileUpSignals
SiPileUpSignals()
Definition: SiPileUpSignals.h:23
SiPileUpSignals::getSignal
const SignalMapType * getSignal(uint32_t detID) const
Definition: SiPileUpSignals.h:34
SiPileUpSignals::Amplitude
float Amplitude
Definition: SiPileUpSignals.h:17
SiPileUpSignals::resetSignals
void resetSignals()
Definition: SiPileUpSignals.cc:4
SiPileUpSignals::SignalMapType
std::map< int, Amplitude > SignalMapType
Definition: SiPileUpSignals.h:20
SiPileUpSignals::signalMaps
std::map< uint32_t, SignalMapType > signalMaps
Definition: SiPileUpSignals.h:21
SiPileUpSignals
Definition: SiPileUpSignals.h:14
SiPileUpSignals::signal_
signalMaps signal_
Definition: SiPileUpSignals.h:44
SiPileUpSignals::~SiPileUpSignals
virtual ~SiPileUpSignals()
Definition: SiPileUpSignals.h:25