1 #ifndef L1Trigger_Phase2L1ParticleFlow_RegionMapper_h
2 #define L1Trigger_Phase2L1ParticleFlow_RegionMapper_h
12 #include <unordered_map>
14 namespace l1tpf_impl {
36 std::unique_ptr<l1t::PFCandidateCollection>
fetch(
bool puppi =
true,
float ptMin = 0.01)
const;
37 std::unique_ptr<l1t::PFCandidateCollection>
fetchCalo(
float ptMin = 0.01,
bool emcalo =
false)
const;
38 std::unique_ptr<l1t::PFCandidateCollection>
fetchTracks(
float ptMin = 0.01,
bool fromPV =
false)
const;
42 std::unique_ptr<std::vector<unsigned>>
vecInput(
int type)
const;
51 std::unordered_map<const l1t::PFCluster *, l1t::PFClusterRef>
clusterRefMap_;
52 std::unordered_map<const l1t::PFTrack *, l1t::PFTrackRef>
trackRefMap_;
53 std::unordered_map<const l1t::Muon *, l1t::PFCandidate::MuonRef>
muonRefMap_;
bool useRelativeRegionalCoordinates_
void addMuon(const l1t::Muon &t)
std::unordered_map< const l1t::PFTrack *, l1t::PFTrackRef > trackRefMap_
enum l1tpf_impl::RegionMapper::TrackAssoMode trackRegionMode_
RegionMapper(const edm::ParameterSet &)
std::unordered_map< const l1t::PFCluster *, l1t::PFClusterRef > clusterRefMap_
std::unique_ptr< std::vector< unsigned > > vecInput(int type) const
std::pair< unsigned, unsigned > totAndMaxInput(int type) const
std::pair< unsigned, unsigned > totAndMaxOutput(int type, bool puppi) const
std::unique_ptr< l1t::PFCandidateCollection > fetchTracks(float ptMin=0.01, bool fromPV=false) const
void addTrack(const l1t::PFTrack &t)
std::vector< Region > regions_
void addCalo(const l1t::PFCluster &t)
std::unique_ptr< l1t::PFCandidateCollection > fetch(bool puppi=true, float ptMin=0.01) const
std::unique_ptr< std::vector< unsigned > > vecOutput(int type, bool puppi) const
std::unordered_map< const l1t::Muon *, l1t::PFCandidate::MuonRef > muonRefMap_
std::vector< Region > & regions()
void addEmCalo(const l1t::PFCluster &t)
std::unique_ptr< l1t::PFCandidateCollection > fetchCalo(float ptMin=0.01, bool emcalo=false) const