CMS 3D CMS Logo

HGCalTriggerCellThresholdCodecImpl.h
Go to the documentation of this file.
1 #ifndef __L1Trigger_L1THGCal_HGCalTriggerCellThresholdCodecImpl_h__
2 #define __L1Trigger_L1THGCal_HGCalTriggerCellThresholdCodecImpl_h__
3 
4 
9 
10 #include <array>
11 #include <vector>
12 
13 
15 {
16  typedef std::vector<l1t::HGCalTriggerCell> trigger_cell_list; // list of trigger cell
17  trigger_cell_list payload;
18 
19  void reset()
20  {
21  payload.clear();
22  }
23 };
24 
25 
26 
28 {
29  public:
31 
33 
34  std::vector<bool> encode(const data_type&, const HGCalTriggerGeometryBase&) const ;
35  data_type decode(const std::vector<bool>&, const uint32_t, const HGCalTriggerGeometryBase&) const;
36 
37  void linearize(const std::vector<HGCDataFrame<HGCalDetId,HGCSample>>&,
38  std::vector<std::pair<HGCalDetId, uint32_t > >&);
39 
40  void triggerCellSums(const HGCalTriggerGeometryBase& ,
41  const std::vector<std::pair<HGCalDetId, uint32_t > >&,
42  data_type&);
43  void thresholdSelect(data_type&);
44 
45  // Retrieve parameters
46  size_t nCellsInModule() const {return nCellsInModule_;}
47  size_t dataLength() const {return dataLength_;}
48  double linLSB() const {return linLSB_;}
49  double adcsaturation() const {return adcsaturation_;}
50  uint32_t adcnBits() const {return adcnBits_;}
51  double tdcsaturation() const {return tdcsaturation_;}
52  uint32_t tdcnBits() const {return tdcnBits_;}
53  double tdcOnsetfC() const {return tdcOnsetfC_;}
54  uint32_t triggerCellTruncationBits() const {return triggerCellTruncationBits_;}
55  uint32_t triggerCellSaturationBits() const {return triggerCellSaturationBits_;}
56  int TCThreshold_ADC() const {return TCThreshold_ADC_;}
57  double TCThreshold_fC() const {return TCThreshold_fC_;}
58 
59  private:
60  size_t dataLength_;
62  double linLSB_;
64  uint32_t adcnBits_;
65  double tdcsaturation_ ;
66  uint32_t tdcnBits_ ;
67  double tdcOnsetfC_ ;
68  double adcLSB_;
69  double tdcLSB_;
74 
75 };
76 
77 #endif
std::vector< l1t::HGCalTriggerCell > trigger_cell_list
bool decode(bool &, std::string const &)
Definition: types.cc:62
def encode(args, files)
HGCalTriggerCellThresholdDataPayload data_type