CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Private Attributes
JetTagComputer::TagInfoHelper Class Reference

#include <JetTagComputer.h>

Public Member Functions

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

Private Attributes

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

Detailed Description

Definition at line 16 of file JetTagComputer.h.

Constructor & Destructor Documentation

JetTagComputer::TagInfoHelper::TagInfoHelper ( const std::vector< const reco::BaseTagInfo * > &  infos,
std::vector< std::string > &  labels 
)
inline

Definition at line 18 of file JetTagComputer.h.

18  :
20  m_labels(labels) {}
std::vector< std::string > m_labels
const std::vector< const reco::BaseTagInfo * > & m_tagInfos
JetTagComputer::TagInfoHelper::TagInfoHelper ( const std::vector< const reco::BaseTagInfo * > &  infos)
inline

Definition at line 22 of file JetTagComputer.h.

22  :
24  m_labels()
25  {}
std::vector< std::string > m_labels
const std::vector< const reco::BaseTagInfo * > & m_tagInfos
JetTagComputer::TagInfoHelper::~TagInfoHelper ( )
inline

Definition at line 28 of file JetTagComputer.h.

28 {}

Member Function Documentation

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

Definition at line 49 of file JetTagComputer.h.

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

Referenced by Options.Options::__getitem__(), betterConfigParser.BetterConfigParser::__updateDict(), TemplatedNegativeTrackCountingComputer< Container, Base >::discriminator(), MuonTagger::discriminator(), ElectronTagger::discriminator(), CandidateBoostedDoubleSecondaryVertexComputer::discriminator(), CharmTagger::discriminator(), LeptonTaggerDistance::discriminator(), LeptonTaggerByPt::discriminator(), MuonTaggerNoIP::discriminator(), LeptonTaggerByIP::discriminator(), TemplatedSimpleSecondaryVertexComputer< IPTI, VTX >::discriminator(), PromptTrackCountingComputer::discriminator(), TemplatedJetProbabilityComputer< Container, Base >::discriminator(), TemplatedJetBProbabilityComputer< Container, Base >::discriminator(), TemplatedTrackCountingComputer< Container, Base >::discriminator(), betterConfigParser.BetterConfigParser::getCompares(), betterConfigParser.BetterConfigParser::getGeneral(), betterConfigParser.BetterConfigParser::getResultingSection(), GenericMVAJetTagComputerWrapper< Provider, TI1, ti1, TI2, ti2, TI3, ti3, TI4, ti4 >::taggingVariables(), GenericMVAJetTagComputerWrapper< Provider, TI1, ti1, TI2, ti2, TI3, ti3, btau_dummy::Null, btau_dummy::none >::taggingVariables(), GenericMVAJetTagComputerWrapper< Provider, TI1, ti1, TI2, ti2, btau_dummy::Null, btau_dummy::none, btau_dummy::Null, btau_dummy::none >::taggingVariables(), GenericMVAJetTagComputerWrapper< Provider, TI1, ti1, btau_dummy::Null, btau_dummy::none, btau_dummy::Null, btau_dummy::none, btau_dummy::Null, btau_dummy::none >::taggingVariables(), and 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().

50  {
52  const T *castInfo = dynamic_cast<const T*>(info);
53  if (!castInfo)
54  throw cms::Exception("InvalidCast")
55  << "Invalid TagInfo cast "
56  "in call to JetTagComputer::get( index="<< index <<" )."
57  << std::endl;
58 
59  return *castInfo;
60  }
static const TGPicture * info(bool iBackgroundIsBlack)
const reco::BaseTagInfo & getBase(unsigned int index) const
long double T
template<class T >
const T& JetTagComputer::TagInfoHelper::get ( std::string  label) const
inline

Definition at line 63 of file JetTagComputer.h.

References Exception, customizeTrackingMonitorSeedNumber::idx, diffTwoXMLs::label, and m_labels.

Referenced by Options.Options::__getitem__(), betterConfigParser.BetterConfigParser::__updateDict(), betterConfigParser.BetterConfigParser::getCompares(), betterConfigParser.BetterConfigParser::getGeneral(), and betterConfigParser.BetterConfigParser::getResultingSection().

64  {
65  size_t idx=0;
66  for(; idx <= m_labels.size(); idx++){
67  if(idx < m_labels.size() && m_labels[idx] == label) break;
68  }
69 
70  if(idx == m_labels.size()) {
71  throw cms::Exception("ProductMissing")
72  << "Missing TagInfo with label: " << label <<
73  " in call to JetTagComputer::get." << std::endl;
74  }
75  return get<T>(idx);
76  }
std::vector< std::string > m_labels
tuple idx
DEBUGGING if hasattr(process,&quot;trackMonIterativeTracking2012&quot;): print &quot;trackMonIterativeTracking2012 D...
const reco::BaseTagInfo& JetTagComputer::TagInfoHelper::getBase ( unsigned int  index) const
inline

Definition at line 30 of file JetTagComputer.h.

References Exception, cmsHarvester::index, info(), and m_tagInfos.

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

31  {
32  if (index >= m_tagInfos.size())
33  throw cms::Exception("InvalidIndex")
34  << "Invalid index " << index << " "
35  "in call to JetTagComputer::get."
36  << std::endl;
37 
39  if (!info)
40  throw cms::Exception("ProductMissing")
41  << "Missing TagInfo "
42  "in call to JetTagComputer::get."
43  << std::endl;
44 
45  return *info;
46  }
static const TGPicture * info(bool iBackgroundIsBlack)
const std::vector< const reco::BaseTagInfo * > & m_tagInfos

Member Data Documentation

std::vector<std::string> JetTagComputer::TagInfoHelper::m_labels
private

Definition at line 80 of file JetTagComputer.h.

Referenced by get().

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

Definition at line 79 of file JetTagComputer.h.

Referenced by getBase().