CMS 3D CMS Logo

Public Types | Public Member Functions | Private Attributes

reco::SoftLeptonTagInfo Class Reference

#include <SoftLeptonTagInfo.h>

Inheritance diagram for reco::SoftLeptonTagInfo:
reco::JetTagInfo reco::BaseTagInfo

List of all members.

Public Types

typedef std::vector< std::pair
< edm::RefToBase< reco::Track >
, SoftLeptonProperties > > 
LeptonMap

Public Member Functions

virtual SoftLeptonTagInfoclone (void) const
 clone
void insert (const edm::RefToBase< reco::Track > &lepton, const SoftLeptonProperties &properties)
const edm::RefToBase
< reco::Track > & 
lepton (size_t i) const
unsigned int leptons (void) const
const SoftLeptonPropertiesproperties (size_t i) const
 SoftLeptonTagInfo (void)
virtual TaggingVariableList taggingVariables (void) const
 returns a description of the extended informations in a TaggingVariableList
virtual ~SoftLeptonTagInfo (void)

Private Attributes

LeptonMap m_leptons

Detailed Description

Definition at line 105 of file SoftLeptonTagInfo.h.


Member Typedef Documentation

Definition at line 107 of file SoftLeptonTagInfo.h.


Constructor & Destructor Documentation

reco::SoftLeptonTagInfo::SoftLeptonTagInfo ( void  ) [inline]

Definition at line 109 of file SoftLeptonTagInfo.h.

Referenced by clone().

: m_leptons() {}
virtual reco::SoftLeptonTagInfo::~SoftLeptonTagInfo ( void  ) [inline, virtual]

Definition at line 111 of file SoftLeptonTagInfo.h.

{}

Member Function Documentation

virtual SoftLeptonTagInfo* reco::SoftLeptonTagInfo::clone ( void  ) const [inline, virtual]

clone

Reimplemented from reco::JetTagInfo.

Definition at line 113 of file SoftLeptonTagInfo.h.

References SoftLeptonTagInfo().

{ return new SoftLeptonTagInfo(*this); }
void reco::SoftLeptonTagInfo::insert ( const edm::RefToBase< reco::Track > &  lepton,
const SoftLeptonProperties properties 
) [inline]

Definition at line 127 of file SoftLeptonTagInfo.h.

References m_leptons.

Referenced by SoftLepton::tag().

                                                                                                 {
        m_leptons.push_back( std::pair< edm::RefToBase<reco::Track>, SoftLeptonProperties > (lepton, properties) );
    }
const edm::RefToBase<reco::Track>& reco::SoftLeptonTagInfo::lepton ( size_t  i) const [inline]

Definition at line 119 of file SoftLeptonTagInfo.h.

References i, and m_leptons.

Referenced by HLTMonBTagMuSource::analyze(), SoftLeptonTagPlotter::analyzeTag(), and L6SLBCorrector::correction().

                                                           {
        return m_leptons[i].first;
    }
unsigned int reco::SoftLeptonTagInfo::leptons ( void  ) const [inline]
const SoftLeptonProperties& reco::SoftLeptonTagInfo::properties ( size_t  i) const [inline]
TaggingVariableList reco::SoftLeptonTagInfo::taggingVariables ( void  ) const [virtual]

returns a description of the extended informations in a TaggingVariableList

Reimplemented from reco::BaseTagInfo.

Definition at line 64 of file SoftLeptonTagInfo.cc.

References reco::SoftLeptonProperties::quality::btagLeptonCands, runTheMatrix::data, reco::SoftLeptonProperties::deltaR, reco::LeafCandidate::energy(), reco::LeafCandidate::et(), reco::LeafCandidate::eta(), reco::TrackBase::eta(), reco::SoftLeptonProperties::etaRel, reco::TaggingVariableList::finalize(), i, reco::TaggingVariableList::insert(), metsig::jet, reco::btau::jetEnergy, reco::btau::jetEta, reco::btau::jetPhi, reco::btau::jetPt, reco::SoftLeptonProperties::quality::leptonId, reco::btau::leptonQuality, reco::btau::leptonQuality2, list(), reco::TrackBase::normalizedChi2(), reco::TrackBase::p(), reco::LeafCandidate::phi(), reco::TrackBase::phi(), reco::SoftLeptonProperties::ptRel, reco::SoftLeptonProperties::quality(), reco::SoftLeptonProperties::ratioRel, reco::SoftLeptonProperties::sip2d, reco::SoftLeptonProperties::sip3d, reco::btau::trackChi2, reco::btau::trackDeltaR, reco::btau::trackEta, reco::btau::trackEtaRel, reco::btau::trackMomentum, reco::btau::trackP0Par, reco::btau::trackPhi, reco::btau::trackPParRatio, reco::btau::trackPtRel, reco::btau::trackSip2dSig, and reco::btau::trackSip3dSig.

                                                                  {
  TaggingVariableList list;

  const Jet & jet = *( this->jet() );
  list.insert( TaggingVariable(jetEnergy, jet.energy()), true );
  list.insert( TaggingVariable(jetPt,     jet.et()),     true );
  list.insert( TaggingVariable(jetEta,    jet.eta()),    true );
  list.insert( TaggingVariable(jetPhi,    jet.phi()),    true );

  for (unsigned int i = 0; i < m_leptons.size(); ++i) {
    const Track & track = *(m_leptons[i].first);
    list.insert( TaggingVariable(trackMomentum,  track.p()),     true );
    list.insert( TaggingVariable(trackEta,       track.eta()),   true );
    list.insert( TaggingVariable(trackPhi,       track.phi()),   true );
    list.insert( TaggingVariable(trackChi2,      track.normalizedChi2()), true );
    const SoftLeptonProperties & data = m_leptons[i].second;
    list.insert( TaggingVariable(leptonQuality,  data.quality(SoftLeptonProperties::quality::leptonId, false)), true );
    list.insert( TaggingVariable(leptonQuality2, data.quality(SoftLeptonProperties::quality::btagLeptonCands, false)), true );
    list.insert( TaggingVariable(trackSip2dSig,  data.sip2d),    true );
    list.insert( TaggingVariable(trackSip3dSig,  data.sip3d),    true );
    list.insert( TaggingVariable(trackPtRel,     data.ptRel),    true );
    list.insert( TaggingVariable(trackP0Par,     data.ptRel),    true );
    list.insert( TaggingVariable(trackEtaRel,    data.etaRel),   true );
    list.insert( TaggingVariable(trackDeltaR,    data.deltaR),   true );
    list.insert( TaggingVariable(trackPParRatio, data.ratioRel), true );
  }

  list.finalize();
  return list;
}

Member Data Documentation

Definition at line 135 of file SoftLeptonTagInfo.h.

Referenced by insert(), lepton(), leptons(), and properties().