CMS 3D CMS Logo

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
JetExtendedAssociation.h
Go to the documentation of this file.
1 #ifndef JetReco_JetExtendedAssociation_h
2 #define JetReco_JetExtendedAssociation_h
3 
18 
19 namespace fwlite {
20  class Event;
21 }
22 
23 namespace reco {
28  typedef std::vector<Value> Values;
35 
37  int tracksAtVertexNumber(const Container&, const reco::JetBaseRef&);
39  int tracksAtVertexNumber(const Container&, const reco::Jet&);
41  const LorentzVector& tracksAtVertexP4(const Container&, const reco::JetBaseRef&);
42  const LorentzVector& tracksAtVertexP4(const Container&, const reco::Jet&);
44  int tracksAtCaloNumber(const Container&, const reco::JetBaseRef&);
46  int tracksAtCaloNumber(const Container&, const reco::Jet&);
48  const LorentzVector& tracksAtCaloP4(const Container&, const reco::JetBaseRef&);
50  const LorentzVector& tracksAtCaloP4(const Container&, const reco::Jet&);
51 
53  bool setValue(Container&, const reco::JetBaseRef&, const JetExtendedData&);
55  bool setValue(Container*, const reco::JetBaseRef&, const JetExtendedData&);
57  const JetExtendedData& getValue(const Container&, const reco::JetBaseRef&);
59  const JetExtendedData& getValue(const Container&, const reco::Jet&);
61  std::vector<reco::JetBaseRef> allJets(const Container&);
63  bool hasJet(const Container&, const reco::JetBaseRef&);
65  bool hasJet(const Container&, const reco::Jet&);
66 
68  public:
72  LorentzVector mTracksAtVertexP4;
74  LorentzVector mTracksAtCaloP4;
75  };
76  } // namespace JetExtendedAssociation
77 } // namespace reco
78 
79 #endif
std::vector< reco::JetBaseRef > allJets(const Container &)
fill list of all jets associated with values. Return # of jets in the list
bool setValue(Container *, const reco::JetBaseRef &, const JetExtendedData &)
associate jet with value. Returns false and associate nothing if jet is already associated ...
Base class for all types of Jets.
Definition: Jet.h:20
int tracksAtVertexNumber(const Container &, const reco::Jet &)
Number of tracks associated in the vertex.
std::vector< value_type > transient_vector_type
const JetExtendedData & getValue(const Container &, const reco::Jet &)
get value for the association. Throw exception if no association found
const LorentzVector & tracksAtCaloP4(const Container &, const reco::Jet &)
p4 of tracks associated at calo face
std::pair< KeyRef, typename CVal::value_type > value_type
ROOT::Math::LorentzVector< ROOT::Math::PtEtaPhiE4D< float > > PtEtaPhiELorentzVectorF
Lorentz vector with cartesian internal representation.
Definition: LorentzVector.h:20
reco::JetExtendedAssociation::JetExtendedData Value
Association between jets and extended Jet information.
Container::transient_vector_type transient_vector_type
edm::RefProd< Container > RefProd
bool hasJet(const Container &, const reco::Jet &)
check if jet is associated
fixed size matrix
const LorentzVector & tracksAtVertexP4(const Container &, const reco::Jet &)
int tracksAtCaloNumber(const Container &, const reco::Jet &)
Number of tracks associated at calo face.
edm::AssociationVector< reco::JetRefBaseProd, Values > Container
edm::RefVector< Container > RefVector
math::PtEtaPhiELorentzVectorF LorentzVector