ATLAS Offline Software
xAODJetCollector.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef TRIGLHLTJETHYPO_XAODJETCOLLECTOR_H
6 #define TRIGLHLTJETHYPO_XAODJETCOLLECTOR_H
7 
8 #include "xAODJet/Jet.h"
10 
11 #include <string>
12 #include <vector>
13 #include <map>
14 
15 // xAODJetCollector - an object send to a (possibly recursive)
16 // TrigJetHypoToolHelpers to obtain xAOD jets
17 
18 using CI = std::map<std::string, HypoJetVector>::const_iterator;
19 
21 
22 public:
23 
24  void addJets(const HypoJetCIter& begin,
25  const HypoJetCIter& end,
26  int chainPartInd = -1);
27 
28  std::vector<const xAOD::Jet*> xAODJets() const;
29 
30  std::vector<const xAOD::Jet*> xAODJets(int chainPartInd) const;
31 
32  HypoJetVector hypoJets() const;
33  HypoJetVector hypoJets(int chainPartInd) const;
34 
35 
36  std::size_t size() const;
37  bool empty() const;
38 
39  std::vector<int> legInds() const;
40 
41  private:
42 
43  // store passing jets by chainPart index. this defaults to -1
44  // only leaf nodes have indices >= 0
45  std::map<int, HypoJetVector> m_jets;
46 
47 
48  std::vector<const xAOD::Jet*>
49 
50  xAODJets_(const HypoJetVector::const_iterator begin,
51  const HypoJetVector::const_iterator end
52  ) const;
53 
54 };
55 
56 #endif
Jet.h
xAODJetCollector::hypoJets
HypoJetVector hypoJets() const
Definition: xAODJetCollector.cxx:44
xAODJetCollector::m_jets
std::map< int, HypoJetVector > m_jets
Definition: xAODJetCollector.h:45
HypoJetDefs.h
PlotCalibFromCool.begin
begin
Definition: PlotCalibFromCool.py:94
CI
std::map< std::string, HypoJetVector >::const_iterator CI
Definition: xAODJetCollector.h:18
mergePhysValFiles.end
end
Definition: DataQuality/DataQualityUtils/scripts/mergePhysValFiles.py:93
xAODJetCollector::xAODJets
std::vector< const xAOD::Jet * > xAODJets() const
Definition: xAODJetCollector.cxx:18
xAODJetCollector::size
std::size_t size() const
Definition: xAODJetCollector.cxx:66
xAODJetCollector::addJets
void addJets(const HypoJetCIter &begin, const HypoJetCIter &end, int chainPartInd=-1)
Definition: xAODJetCollector.cxx:10
HypoJetCIter
HypoJetVector::const_iterator HypoJetCIter
Definition: HypoJetDefs.h:29
xAODJetCollector::legInds
std::vector< int > legInds() const
Definition: xAODJetCollector.cxx:95
HypoJetVector
std::vector< pHypoJet > HypoJetVector
Definition: HypoJetDefs.h:27
xAODJetCollector::empty
bool empty() const
Definition: xAODJetCollector.cxx:68
xAODJetCollector
Definition: xAODJetCollector.h:20
xAODJetCollector::xAODJets_
std::vector< const xAOD::Jet * > xAODJets_(const HypoJetVector::const_iterator begin, const HypoJetVector::const_iterator end) const
Definition: xAODJetCollector.cxx:71