CMS 3D CMS Logo

pfalgo2hgc_ref.h
Go to the documentation of this file.
1 #ifndef PFALGO2HGC_REF_H
2 #define PFALGO2HGC_REF_H
3 
4 #include "pfalgo_common_ref.h"
5 
6 namespace edm {
7  class ParameterSet;
9 } // namespace edm
10 
11 namespace l1ct {
12 
14  public:
15  PFAlgo2HGCEmulator(unsigned int nTrack,
16  unsigned int nCalo,
17  unsigned int nMu,
18  unsigned int nSelCalo,
19  unsigned int dR2Max_Tk_Mu,
20  unsigned int dR2Max_Tk_Calo,
21  pt_t tk_MaxInvPt_Loose,
22  pt_t tk_MaxInvPt_Tight)
24  nTrack, nCalo, nMu, nSelCalo, dR2Max_Tk_Mu, dR2Max_Tk_Calo, tk_MaxInvPt_Loose, tk_MaxInvPt_Tight) {}
25 
26  // note: this one will work only in CMSSW
27  PFAlgo2HGCEmulator(const edm::ParameterSet& iConfig);
28 
29  ~PFAlgo2HGCEmulator() override {}
30 
32 
33  void run(const PFInputRegion& in, OutputRegion& out) const override;
34 
36  void mergeNeutrals(OutputRegion& out) const override {}
37 
38  void toFirmware(const PFInputRegion& in,
40  HadCaloObj calo[/*nCALO*/],
41  TkObj track[/*nTRACK*/],
42  MuObj mu[/*nMU*/]) const;
43  void toFirmware(const OutputRegion& out,
44  PFChargedObj outch[/*nTRACK*/],
45  PFNeutralObj outne[/*nSELCALO*/],
46  PFChargedObj outmu[/*nMU*/]) const;
47  };
48 
49 } // namespace l1ct
50 
51 #endif
void run(const PFInputRegion &in, OutputRegion &out) const override
void toFirmware(const PFInputRegion &in, PFRegion &region, HadCaloObj calo[], TkObj track[], MuObj mu[]) const
static edm::ParameterSetDescription getParameterSetDescription()
void mergeNeutrals(OutputRegion &out) const override
moves all objects from out.pfphoton to the beginning of out.pfneutral: nothing to do for this algo ...
PFAlgo2HGCEmulator(unsigned int nTrack, unsigned int nCalo, unsigned int nMu, unsigned int nSelCalo, unsigned int dR2Max_Tk_Mu, unsigned int dR2Max_Tk_Calo, pt_t tk_MaxInvPt_Loose, pt_t tk_MaxInvPt_Tight)
ap_ufixed< 14, 12, AP_TRN, AP_SAT > pt_t
Definition: datatypes.h:19
HLT enums.
Definition: Common.h:9
Definition: datatypes.h:17