Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:30:52

0001 #ifndef SimPPS_PPSPixelDigiProducer_RPix_PILE_UP_SIGNALS_H
0002 #define SimPPS_PPSPixelDigiProducer_RPix_PILE_UP_SIGNALS_H
0003 
0004 #include <map>
0005 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0006 
0007 class RPixPileUpSignals {
0008 public:
0009   RPixPileUpSignals(const edm::ParameterSet &params, uint32_t det_id);
0010 
0011   void reset();
0012 
0013   void add(const std::map<unsigned short, double> &charge_induced, int PSimHitIndex);
0014 
0015   inline const std::map<unsigned short, double> &dumpSignal() { return the_pixel_charge_piled_up_map_; }
0016 
0017   // for each pixel the indeces of PSimHit and amounts of charge generated by it is given
0018   inline std::map<unsigned short, std::vector<std::pair<int, double> > > &dumpLinks() {
0019     return the_pixel_charge_piled_up_map_links_;
0020   }
0021 
0022 private:
0023   std::map<unsigned short, double> the_pixel_charge_piled_up_map_;
0024   std::map<unsigned short, std::vector<std::pair<int, double> > > the_pixel_charge_piled_up_map_links_;
0025   bool links_persistence_;
0026   uint32_t det_id_;
0027   bool verbosity_;
0028 };
0029 
0030 #endif