CMS 3D CMS Logo

Public Member Functions | Private Attributes

JetTagComputer::TagInfoHelper Class Reference

#include <JetTagComputer.h>

List of all members.

Public Member Functions

template<class T >
const Tget (unsigned int index=0) const
const reco::BaseTagInfogetBase (unsigned int index) const
 TagInfoHelper (const std::vector< const reco::BaseTagInfo * > &infos)
 ~TagInfoHelper ()

Private Attributes

const std::vector< const
reco::BaseTagInfo * > & 
m_tagInfos

Detailed Description

Definition at line 14 of file JetTagComputer.h.


Constructor & Destructor Documentation

JetTagComputer::TagInfoHelper::TagInfoHelper ( const std::vector< const reco::BaseTagInfo * > &  infos) [inline]

Definition at line 16 of file JetTagComputer.h.

JetTagComputer::TagInfoHelper::~TagInfoHelper ( ) [inline]

Definition at line 18 of file JetTagComputer.h.

{}

Member Function Documentation

template<class T >
const T& JetTagComputer::TagInfoHelper::get ( unsigned int  index = 0) const [inline]

Definition at line 39 of file JetTagComputer.h.

References Exception, getBase(), getHLTprescales::index, and info.

Referenced by ElectronTagger::discriminator(), JetBProbabilityComputer::discriminator(), LeptonTaggerByIP::discriminator(), SimpleSecondaryVertexComputer::discriminator(), NegativeTrackCountingComputer::discriminator(), LeptonTaggerDistance::discriminator(), TrackCountingComputer::discriminator(), LeptonTaggerByPt::discriminator(), JetProbabilityComputer::discriminator(), PromptTrackCountingComputer::discriminator(), MuonTaggerNoIP::discriminator(), MuonTagger::discriminator(), GenericMVAJetTagComputerWrapper< Provider, TI1, ti1, TI2, ti2, TI3, ti3, TI4, ti4 >::taggingVariables(), GenericMVAJetTagComputerWrapper< Provider, TI1, ti1, btau_dummy::Null, btau_dummy::none, btau_dummy::Null, btau_dummy::none, btau_dummy::Null, btau_dummy::none >::taggingVariables(), GenericMVAJetTagComputerWrapper< Provider, TI1, ti1, TI2, ti2, TI3, ti3, btau_dummy::Null, btau_dummy::none >::taggingVariables(), GenericMVAJetTagComputerWrapper< Provider, TI1, btau_dummy::none, btau_dummy::Null, btau_dummy::none, btau_dummy::Null, btau_dummy::none, btau_dummy::Null, btau_dummy::none >::taggingVariables(), and GenericMVAJetTagComputerWrapper< Provider, TI1, ti1, TI2, ti2, btau_dummy::Null, btau_dummy::none, btau_dummy::Null, btau_dummy::none >::taggingVariables().

                {
                        const reco::BaseTagInfo *info = &getBase(index);
                        const T *castInfo = dynamic_cast<const T*>(info);
                        if (!castInfo)
                                throw cms::Exception("InvalidCast")
                                        << "Invalid TagInfo cast "
                                           "in call to JetTagComputer::get."
                                        << std::endl;

                        return *castInfo;
                }
const reco::BaseTagInfo& JetTagComputer::TagInfoHelper::getBase ( unsigned int  index) const [inline]

Definition at line 20 of file JetTagComputer.h.

References Exception, getHLTprescales::index, info, and m_tagInfos.

Referenced by JetTagComputer::discriminator(), get(), GenericMVAJetTagComputer::taggingVariables(), and CombinedMVAJetTagComputer::taggingVariables().

                {
                        if (index >= m_tagInfos.size())
                                throw cms::Exception("InvalidIndex")
                                        << "Invalid index " << index << " "
                                           "in call to JetTagComputer::get."
                                        << std::endl;

                        const reco::BaseTagInfo *info = m_tagInfos[index];
                        if (!info)
                                throw cms::Exception("ProductMissing")
                                        << "Missing TagInfo "
                                           "in call to JetTagComputer::get."
                                        << std::endl;

                        return *info;
                }

Member Data Documentation

const std::vector<const reco::BaseTagInfo*>& JetTagComputer::TagInfoHelper::m_tagInfos [private]

Definition at line 53 of file JetTagComputer.h.

Referenced by getBase().