CMS 3D CMS Logo

reco::JetTrackMatch< JetC > Class Template Reference

Association between Jets from jet collection and tracks from track collection. More...

#include <DataFormats/JetReco/interface/JetTrackMatch.h>

List of all members.

Public Types

typedef edm::Ref< JetC > JetRef
typedef edm::AssociationMap
< edm::OneToMany< JetC,
reco::TrackCollection > > 
Map
typedef edm::Ref
< reco::TrackCollection
TrackRef

Public Member Functions

std::vector< JetRefallJets () const
 get list of all jats in the map
std::vector< TrackRefgetTracks (const JetRef &mJet) const
 get all tracks associated with jet
void insert (const JetRef &fJet, const TrackRef &fTrack)
 assign track to jet.
void insert (const JetRef &fJet)
 insert orphan jet
 JetTrackMatch ()
 ~JetTrackMatch ()

Private Attributes

Map mMap


Detailed Description

template<typename JetC>
class reco::JetTrackMatch< JetC >

Association between Jets from jet collection and tracks from track collection.

Every jet may have several tracks associated with it

class definition:

template <typename jetc>=""> class JetTrackMatch { public: typedef edm::Ref<JetC> JetRef; typedef edm::Ref<reco::TrackCollection> TrackRef; JetTrackMatch (); ~JetTrackMatch (); // insert orphan jet void insert (const JetRef& fJet); // assign track to jet. void insert (const JetRef& fJet, const TrackRef& fTrack); // get list of all tracks in the map std::vector <JetRef> allJets () const; // get all tracks associated with jet std::vector <TrackRef> getTracks (const JetRef& mJet) const; };

Author:
Fedor Ratnikov, UMd
Version:
Id
JetTrackMatch.h,v 1.2 2007/09/18 13:35:24 ratnik Exp

Definition at line 40 of file JetTrackMatch.h.


Member Typedef Documentation

template<typename JetC>
typedef edm::Ref<JetC> reco::JetTrackMatch< JetC >::JetRef

Definition at line 42 of file JetTrackMatch.h.

template<typename JetC>
typedef edm::AssociationMap<edm::OneToMany<JetC, reco::TrackCollection> > reco::JetTrackMatch< JetC >::Map

Definition at line 44 of file JetTrackMatch.h.

template<typename JetC>
typedef edm::Ref<reco::TrackCollection> reco::JetTrackMatch< JetC >::TrackRef

Definition at line 43 of file JetTrackMatch.h.


Constructor & Destructor Documentation

template<typename JetC>
reco::JetTrackMatch< JetC >::JetTrackMatch (  )  [inline]

Definition at line 49 of file JetTrackMatch.h.

00049 {}

template<typename JetC>
reco::JetTrackMatch< JetC >::~JetTrackMatch (  )  [inline]

Definition at line 50 of file JetTrackMatch.h.

00050 {}


Member Function Documentation

template<typename JetC>
std::vector<JetRef> reco::JetTrackMatch< JetC >::allJets (  )  const [inline]

get list of all jats in the map

Definition at line 63 of file JetTrackMatch.h.

References edm::AssociationMap< Tag >::begin(), edm::AssociationMap< Tag >::end(), it, reco::JetTrackMatch< JetC >::mMap, and HLT_VtxMuL3::result.

00063                                         {
00064       std::vector <JetRef> result;
00065       typename Map::const_iterator it = mMap.begin ();
00066       for (; it != mMap.end(); ++it) {
00067         result.push_back (it->key);
00068       }
00069       return result;
00070     }

template<typename JetC>
std::vector<TrackRef> reco::JetTrackMatch< JetC >::getTracks ( const JetRef mJet  )  const [inline]

get all tracks associated with jet

Definition at line 72 of file JetTrackMatch.h.

References i, reco::JetTrackMatch< JetC >::mMap, HLT_VtxMuL3::result, edm::RefVector< C, T, F >::size(), and tracks.

00072                                                               {
00073       std::vector <TrackRef> result;
00074       reco::TrackRefVector tracks = mMap [mJet];
00075       int i = tracks.size();
00076       while (--i >= 0) {
00077         if (!tracks [i].isNull ()) result.push_back (tracks [i]);
00078       }
00079       return result;
00080     }

template<typename JetC>
void reco::JetTrackMatch< JetC >::insert ( const JetRef fJet,
const TrackRef fTrack 
) [inline]

assign track to jet.

Definition at line 58 of file JetTrackMatch.h.

References edm::AssociationMap< Tag >::insert(), and reco::JetTrackMatch< JetC >::mMap.

00058                                                              {
00059       mMap.insert (fJet, fTrack);
00060     }

template<typename JetC>
void reco::JetTrackMatch< JetC >::insert ( const JetRef fJet  )  [inline]

insert orphan jet

Definition at line 53 of file JetTrackMatch.h.

References edm::AssociationMap< Tag >::insert(), and reco::JetTrackMatch< JetC >::mMap.

Referenced by JetTrackAssociator< std::vector< CaloJet > >::buildMap().

00053                                      {
00054       mMap.insert (fJet, TrackRef());
00055     }


Member Data Documentation

template<typename JetC>
Map reco::JetTrackMatch< JetC >::mMap [private]

Definition at line 46 of file JetTrackMatch.h.

Referenced by reco::JetTrackMatch< JetC >::allJets(), reco::JetTrackMatch< JetC >::getTracks(), and reco::JetTrackMatch< JetC >::insert().


The documentation for this class was generated from the following file:
Generated on Tue Jun 9 18:51:14 2009 for CMSSW by  doxygen 1.5.4