1 #ifndef multififo_regionizer_ref_h 2 #define multififo_regionizer_ref_h 15 class EGInputSelectorEmulator;
16 struct EGInputSelectorEmuConfig;
24 unsigned int ntklinks,
25 unsigned int ncalolinks,
37 unsigned int ntklinks,
38 unsigned int nHCalLinks,
39 unsigned int nECalLinks,
66 bool step(
bool newEvent,
67 const std::vector<l1ct::TkObjEmu>&
links,
68 std::vector<l1ct::TkObjEmu>&
out,
70 bool step(
bool newEvent,
71 const std::vector<l1ct::EmCaloObjEmu>&
links,
72 std::vector<l1ct::EmCaloObjEmu>&
out,
74 bool step(
bool newEvent,
75 const std::vector<l1ct::HadCaloObjEmu>&
links,
76 std::vector<l1ct::HadCaloObjEmu>&
out,
78 bool step(
bool newEvent,
79 const std::vector<l1ct::MuObjEmu>&
links,
80 std::vector<l1ct::MuObjEmu>&
out,
82 bool step(
bool newEvent,
83 const std::vector<l1ct::TkObjEmu>& links_tk,
84 const std::vector<l1ct::HadCaloObjEmu>& links_hadCalo,
85 const std::vector<l1ct::EmCaloObjEmu>& links_emCalo,
86 const std::vector<l1ct::MuObjEmu>& links_mu,
87 std::vector<l1ct::TkObjEmu>& out_tk,
88 std::vector<l1ct::HadCaloObjEmu>& out_hadCalo,
89 std::vector<l1ct::EmCaloObjEmu>& out_emCalo,
90 std::vector<l1ct::MuObjEmu>& out_mu,
93 const std::vector<l1ct::TkObjEmu>& tk_out,
94 const std::vector<l1ct::EmCaloObjEmu>& em_out,
95 const std::vector<l1ct::HadCaloObjEmu>& calo_out,
96 const std::vector<l1ct::MuObjEmu>& mu_out,
102 std::vector<l1ct::TkObjEmu>&
links,
103 std::vector<bool>&
valid);
106 std::vector<l1ct::HadCaloObjEmu>&
links,
107 std::vector<bool>&
valid);
110 std::vector<l1ct::EmCaloObjEmu>&
links,
111 std::vector<bool>&
valid);
114 std::vector<l1ct::MuObjEmu>&
links,
115 std::vector<bool>&
valid);
116 template <
typename T>
118 std::vector<bool> unused;
145 template <
typename T>
148 std::vector<T>&
links,
149 std::vector<bool>&
valid);
std::vector< l1ct::multififo_regionizer::Route > emCaloRoutes_
const unsigned int NCALO_LINKS
void fillLinks(unsigned int iclock, const RegionizerDecodedInputs &in, std::vector< l1ct::TkObjEmu > &links, std::vector< bool > &valid)
std::unique_ptr< EGInputSelectorEmulator > interceptor_
const unsigned int NMU_LINKS
enum l1ct::MultififoRegionizerEmulator::EmInterceptMode emInterceptMode_
void setEgInterceptMode(bool afterFifo, const l1ct::EGInputSelectorEmuConfig &interceptorConfig)
multififo_regionizer::Regionizer< l1ct::TkObjEmu > tkRegionizer_
const unsigned int ECAL_LINKS
MultififoRegionizerEmulator(unsigned int nendcaps, unsigned int nclocks, unsigned int ntklinks, unsigned int ncalolinks, unsigned int ntk, unsigned int ncalo, unsigned int nem, unsigned int nmu, bool streaming, unsigned int outii, unsigned int pauseii, bool useAlsoVtxCoords)
const unsigned int NTK_LINKS
bool step(bool newEvent, const std::vector< l1ct::TkObjEmu > &links, std::vector< l1ct::TkObjEmu > &out, bool mux=true)
static edm::ParameterSetDescription getParameterSetDescriptionBarrel()
void run(const RegionizerDecodedInputs &in, std::vector< PFInputRegion > &out) override
const unsigned int HCAL_LINKS
void fillLinks(unsigned int iclock, const RegionizerDecodedInputs &in, std::vector< T > &links)
const unsigned int NCALO_SECTORS
std::vector< l1ct::multififo_regionizer::Route > tkRoutes_
void toFirmware(const std::vector< l1ct::TkObjEmu > &emu, TkObj fw[])
static BarrelSetup parseBarrelSetup(const std::string &setup)
void destream(int iclock, const std::vector< l1ct::TkObjEmu > &tk_out, const std::vector< l1ct::EmCaloObjEmu > &em_out, const std::vector< l1ct::HadCaloObjEmu > &calo_out, const std::vector< l1ct::MuObjEmu > &mu_out, PFInputRegion &out)
std::vector< l1ct::multififo_regionizer::Route > muRoutes_
const unsigned int NTK_SECTORS
std::vector< l1ct::multififo_regionizer::Route > caloRoutes_
static edm::ParameterSetDescription getParameterSetDescription()
multififo_regionizer::Regionizer< l1ct::EmCaloObjEmu > emCaloRegionizer_
void fillCaloLinks(unsigned int iclock, const std::vector< DetectorSector< T >> &in, std::vector< T > &links, std::vector< bool > &valid)
~MultififoRegionizerEmulator() override
void initSectorsAndRegions(const RegionizerDecodedInputs &in, const std::vector< PFInputRegion > &out) override
multififo_regionizer::Regionizer< l1ct::MuObjEmu > muRegionizer_
multififo_regionizer::Regionizer< l1ct::HadCaloObjEmu > hadCaloRegionizer_