CMS 3D CMS Logo

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 
36 
38  int tracksAtVertexNumber (const Container&, const reco::JetBaseRef&);
40  int tracksAtVertexNumber (const Container&, const reco::Jet&);
42  const LorentzVector& tracksAtVertexP4 (const Container&, const reco::JetBaseRef&);
43  const LorentzVector& tracksAtVertexP4 (const Container&, const reco::Jet&);
45  int tracksAtCaloNumber (const Container&, const reco::JetBaseRef&);
47  int tracksAtCaloNumber (const Container&, const reco::Jet&);
49  const LorentzVector& tracksAtCaloP4 (const Container&, const reco::JetBaseRef&);
51  const LorentzVector& tracksAtCaloP4 (const Container&, const reco::Jet&);
52 
54  bool setValue (Container&, const reco::JetBaseRef&, const JetExtendedData&);
56  bool setValue (Container*, const reco::JetBaseRef&, const JetExtendedData&);
58  const JetExtendedData& getValue (const Container&, const reco::JetBaseRef&);
60  const JetExtendedData& getValue (const Container&, const reco::Jet&);
62  std::vector<reco::JetBaseRef > allJets (const Container&);
64  bool hasJet (const Container&, const reco::JetBaseRef&);
66  bool hasJet (const Container&, const reco::Jet&);
67 
69  public:
70  JetExtendedData ();
73  LorentzVector mTracksAtVertexP4;
75  LorentzVector mTracksAtCaloP4;
76  };
77  }
78 }
79 
80 #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.
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< typename helper::RefFromRefProdTrait< reco::JetRefBaseProd >::ref_type, typename Values::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