1 #ifndef multififo_regionizer_ref_h 2 #define multififo_regionizer_ref_h 13 class EGInputSelectorEmulator;
14 struct EGInputSelectorEmuConfig;
32 unsigned int nHCalLinks,
33 unsigned int nECalLinks,
55 bool step(
bool newEvent,
56 const std::vector<l1ct::TkObjEmu>&
links,
57 std::vector<l1ct::TkObjEmu>&
out,
59 bool step(
bool newEvent,
60 const std::vector<l1ct::EmCaloObjEmu>&
links,
61 std::vector<l1ct::EmCaloObjEmu>&
out,
63 bool step(
bool newEvent,
64 const std::vector<l1ct::HadCaloObjEmu>&
links,
65 std::vector<l1ct::HadCaloObjEmu>&
out,
67 bool step(
bool newEvent,
68 const std::vector<l1ct::MuObjEmu>&
links,
69 std::vector<l1ct::MuObjEmu>&
out,
71 bool step(
bool newEvent,
72 const std::vector<l1ct::TkObjEmu>& links_tk,
73 const std::vector<l1ct::HadCaloObjEmu>& links_hadCalo,
74 const std::vector<l1ct::EmCaloObjEmu>& links_emCalo,
75 const std::vector<l1ct::MuObjEmu>& links_mu,
76 std::vector<l1ct::TkObjEmu>& out_tk,
77 std::vector<l1ct::HadCaloObjEmu>& out_hadCalo,
78 std::vector<l1ct::EmCaloObjEmu>& out_emCalo,
79 std::vector<l1ct::MuObjEmu>& out_mu,
82 const std::vector<l1ct::TkObjEmu>& tk_out,
83 const std::vector<l1ct::EmCaloObjEmu>& em_out,
84 const std::vector<l1ct::HadCaloObjEmu>& calo_out,
85 const std::vector<l1ct::MuObjEmu>& mu_out,
115 template <
typename T>
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::unique_ptr< EGInputSelectorEmulator > interceptor_
const unsigned int NMU_LINKS
void fillCaloLinks_(unsigned int iclock, const std::vector< DetectorSector< T >> &in, std::vector< T > &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
const unsigned int NTK_LINKS
bool step(bool newEvent, const std::vector< l1ct::TkObjEmu > &links, std::vector< l1ct::TkObjEmu > &out, bool mux=true)
void run(const RegionizerDecodedInputs &in, std::vector< PFInputRegion > &out) override
const unsigned int HCAL_LINKS
const unsigned int NCALO_SECTORS
std::vector< l1ct::multififo_regionizer::Route > tkRoutes_
void toFirmware(const std::vector< l1ct::TkObjEmu > &emu, TkObj fw[])
MultififoRegionizerEmulator(unsigned int nendcaps, unsigned int nclocks, unsigned int ntk, unsigned int ncalo, unsigned int nem, unsigned int nmu, bool streaming, unsigned int outii, bool useAlsoVtxCoords)
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_
multififo_regionizer::Regionizer< l1ct::EmCaloObjEmu > emCaloRegionizer_
~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_