1 #ifndef DataFormats_L1TParticleFlow_layer1_emulator_h 2 #define DataFormats_L1TParticleFlow_layer1_emulator_h 23 bool read(std::fstream &from);
24 bool write(std::fstream &
to)
const;
33 bool read(std::fstream &from);
34 bool write(std::fstream &
to)
const;
45 bool read(std::fstream &from);
46 bool write(std::fstream &
to)
const;
63 bool read(std::fstream &from);
64 bool write(std::fstream &
to)
const;
76 bool read(std::fstream &from);
77 bool write(std::fstream &
to)
const;
90 bool read(std::fstream &from);
91 bool write(std::fstream &
to)
const;
107 float localEta(
float globalEta)
const;
108 float localPhi(
float globalPhi)
const;
110 bool read(std::fstream &from);
111 bool write(std::fstream &
to)
const;
119 bool read(std::fstream &from);
120 bool write(std::fstream &
to)
const;
165 bool read(std::fstream &from);
166 bool write(std::fstream &
to)
const;
202 bool read(std::fstream &from);
203 bool write(std::fstream &
to)
const;
231 bool read(std::fstream &from);
232 bool write(std::fstream &
to)
const;
235 template <
typename T>
244 typedef typename std::vector<T>::iterator
iterator;
251 inline unsigned int size()
const {
return obj.size(); }
257 std::vector<DetectorSector<ap_uint<96>>>
track;
261 bool read(std::fstream &from);
262 bool write(std::fstream &
to)
const;
267 std::vector<DetectorSector<HadCaloObjEmu>>
hadcalo;
268 std::vector<DetectorSector<EmCaloObjEmu>>
emcalo;
269 std::vector<DetectorSector<TkObjEmu>>
track;
272 bool read(std::fstream &from);
273 bool write(std::fstream &
to)
const;
287 bool read(std::fstream &from);
288 bool write(std::fstream &
to)
const;
302 bool read(std::fstream &from);
303 bool write(std::fstream &
to)
const;
322 "",
"Charged",
"Neutral",
"Electron",
"Muon",
"ChargedHadron",
"NeutralHadron",
"Photon",
"EGIso",
"EGIsoEle"};
334 bool read(std::fstream &from);
335 bool write(std::fstream &
to)
const;
346 std::vector<PVObjEmu>
pvs;
348 std::vector<OutputRegion>
out;
353 bool read(std::fstream &from);
354 bool write(std::fstream &
to)
const;
359 if (ipv <
pvs.size())
365 inline ap_uint<64>
pv_emu(
unsigned int ipv = 0)
const {
373 template <
typename T1,
typename T2>
375 unsigned int n = std::min<unsigned>(
in.size(), NMAX);
376 for (
unsigned int i = 0;
i <
n; ++
i)
378 for (
unsigned int i =
n;
i < NMAX; ++
i)
const l1t::PFCluster * srcCluster
bool read(std::fstream &from)
std::vector< PVObjEmu > pvs
bool write(std::fstream &to) const
const l1t::PFCluster * srcCluster
void fill(const PFRegionEmu ®ion, const PFNeutralObjEmu &src, pt_t puppiPt, puppiWgt_t puppiWgt)
void setHwIso(IsoType type, iso_t value)
const_iterator begin() const
float floatIso(IsoType type) const
bool read(std::fstream &from)
bool containsHw(glbeta_t glbeta, glbphi_t phi) const
const l1t::PFTrack * srcTrack
unsigned int size() const
ret
prodAgent to be discontinued
std::vector< EGObjEmu > egsta
void toFirmware(const std::vector< T1 > &in, unsigned int NMAX, T2 out[])
bool write(std::fstream &to) const
bool write(std::fstream &to) const
std::vector< PFChargedObjEmu > pfcharged
float localEta(float globalEta) const
const l1t::SAMuon * srcMu
const T & operator[](unsigned int i) const
float localPhi(float globalPhi) const
const l1t::PFCandidate * srcCand
std::vector< unsigned int > region_index
std::vector< EGIsoEleObjEmu > egelectron
std::vector< OutputRegion > out
const l1t::PFCluster * srcCluster
DetectorSector(float etamin, float etamax, float phicenter, float phiwidth, float etaextra=0, float phiextra=0)
float hwIsoVar(IsoType type) const
float hwIsoVar(IsoType type) const
void init(uint32_t run, uint32_t lumi, uint64_t event)
const l1t::PFCandidate * srcCand
bool contains(float eta, float phi) const
bool write(std::fstream &to) const
void resize(unsigned int size)
std::vector< PuppiObjEmu > puppi
float floatRelIso(IsoType type) const
std::vector< EGIsoEleObjEmu > egelectron
std::vector< T >::iterator iterator
float floatRelIso(IsoType type) const
bool write(std::fstream &to) const
bool read(std::fstream &from)
bool write(std::fstream &to) const
std::vector< EGIsoObjEmu > egphoton
bool read(std::fstream &from)
bool write(std::fstream &to) const
std::vector< PFChargedObjEmu > pfmuon
float floatIso(IsoType type) const
ap_ufixed< 11, 9, AP_TRN, AP_SAT > iso_t
void setHwIso(IsoType type, iso_t value)
const l1t::SAMuon * srcMu
bool read(std::fstream &from)
bool write(std::fstream &to) const
bool read(std::fstream &from)
const l1t::PFCluster * srcCluster
RegionizerDecodedInputs decoded
bool read(std::fstream &from)
bool write(std::fstream &to) const
std::vector< T >::const_iterator const_iterator
ap_ufixed< 14, 12, AP_TRN, AP_SAT > pt_t
std::vector< PFNeutralObjEmu > pfneutral
bool write(std::fstream &to) const
bool read(std::fstream &from)
bool read(std::fstream &from)
const l1t::PFCluster * srcCluster
unsigned long long uint64_t
unsigned int nObj(ObjType type, bool puppi) const
void fill(const PFRegionEmu ®ion, const HadCaloObjEmu &src, pt_t puppiPt, puppiWgt_t puppiWgt)
bool write(std::fstream &to) const
bool read(std::fstream &from)
static constexpr const char * objTypeName[nObjTypes]
const l1t::PFCluster * src
bool read(std::fstream &from)
std::vector< EGIsoObjEmu > egphoton
T & operator[](unsigned int i)
bool read(std::fstream &from)
bool write(std::fstream &to) const
std::vector< PFNeutralObjEmu > pfphoton
bool read(std::fstream &from)
ap_uint< 64 > pv_emu(unsigned int ipv=0) const
const l1t::PFTrack * srcTrack
const l1t::PFCluster * srcCluster
void fill(const PFRegion ®ion, const PFChargedObj &src)
bool read(std::fstream &from)
bool write(std::fstream &to) const
const l1t::PFTrack * srcTrack
const_iterator end() const
float floatIso(iso_t iso)
l1ct::PVObjEmu pv(unsigned int ipv=0) const
std::vector< ap_uint< 64 > > pvs_emu
const l1t::PFCluster * src
bool write(std::fstream &to) const
void fill(const PFRegionEmu ®ion, const PFChargedObjEmu &src)
const l1t::PFCandidate * srcCand
std::vector< PFInputRegion > pfinputs
std::vector< OutputBoard > board_out