Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:21:26

0001 #ifndef PFALGO2HGC_REF_H
0002 #define PFALGO2HGC_REF_H
0003 
0004 #include "pfalgo_common_ref.h"
0005 
0006 namespace edm {
0007   class ParameterSet;
0008   class ParameterSetDescription;
0009 }  // namespace edm
0010 
0011 namespace l1ct {
0012 
0013   class PFAlgo2HGCEmulator : public PFAlgoEmulatorBase {
0014   public:
0015     PFAlgo2HGCEmulator(unsigned int nTrack,
0016                        unsigned int nCalo,
0017                        unsigned int nMu,
0018                        unsigned int nSelCalo,
0019                        unsigned int dR2Max_Tk_Mu,
0020                        unsigned int dR2Max_Tk_Calo,
0021                        pt_t tk_MaxInvPt_Loose,
0022                        pt_t tk_MaxInvPt_Tight)
0023         : PFAlgoEmulatorBase(
0024               nTrack, nCalo, nMu, nSelCalo, dR2Max_Tk_Mu, dR2Max_Tk_Calo, tk_MaxInvPt_Loose, tk_MaxInvPt_Tight) {}
0025 
0026     // note: this one will work only in CMSSW
0027     PFAlgo2HGCEmulator(const edm::ParameterSet& iConfig);
0028 
0029     ~PFAlgo2HGCEmulator() override {}
0030 
0031     static edm::ParameterSetDescription getParameterSetDescription();
0032 
0033     void run(const PFInputRegion& in, OutputRegion& out) const override;
0034 
0035     /// moves all objects from out.pfphoton to the beginning of out.pfneutral: nothing to do for this algo
0036     void mergeNeutrals(OutputRegion& out) const override {}
0037 
0038     void toFirmware(const PFInputRegion& in,
0039                     PFRegion& region,
0040                     HadCaloObj calo[/*nCALO*/],
0041                     TkObj track[/*nTRACK*/],
0042                     MuObj mu[/*nMU*/]) const;
0043     void toFirmware(const OutputRegion& out,
0044                     PFChargedObj outch[/*nTRACK*/],
0045                     PFNeutralObj outne[/*nSELCALO*/],
0046                     PFChargedObj outmu[/*nMU*/]) const;
0047   };
0048 
0049 }  // namespace l1ct
0050 
0051 #endif