CMS 3D CMS Logo

Public Member Functions

JetTracksAssociationExplicit Class Reference

#include <JetTracksAssociationExplicit.h>

List of all members.

Public Member Functions

 JetTracksAssociationExplicit ()
void produce (reco::JetTracksAssociation::Container *fAssociation, const std::vector< edm::RefToBase< reco::Jet > > &fJets, const std::vector< reco::TrackRef > &fTracks) const
 ~JetTracksAssociationExplicit ()

Detailed Description

Definition at line 10 of file JetTracksAssociationExplicit.h.


Constructor & Destructor Documentation

JetTracksAssociationExplicit::JetTracksAssociationExplicit ( )

Definition at line 10 of file JetTracksAssociationExplicit.cc.

{}
JetTracksAssociationExplicit::~JetTracksAssociationExplicit ( ) [inline]

Definition at line 13 of file JetTracksAssociationExplicit.h.

{}

Member Function Documentation

void JetTracksAssociationExplicit::produce ( reco::JetTracksAssociation::Container fAssociation,
const std::vector< edm::RefToBase< reco::Jet > > &  fJets,
const std::vector< reco::TrackRef > &  fTracks 
) const

Definition at line 13 of file JetTracksAssociationExplicit.cc.

References Exception, reco::PFJet::getTrackRefs(), j, and reco::JetExtendedAssociation::setValue().

Referenced by JetTracksAssociatorExplicit::produce().

{
  for (unsigned j = 0; j < fJets.size(); ++j) { 
    reco::PFJet const * pfJet = dynamic_cast<reco::PFJet const *>( &* (fJets[j]) ) ;
    if ( pfJet != 0 ) {
      reco::TrackRefVector assoTracks = pfJet->getTrackRefs();
      reco::JetTracksAssociation::setValue (fAssociation, fJets[j], assoTracks);
    } else {
      throw cms::Exception("InvalidConfiguration") 
        << "From JetTracksAssociationExplicit::produce: Only PFJets are currently supported for this module" << std::endl;
    }
  }
}