CMS 3D CMS Logo

List of all members | Public Member Functions | Private Attributes
edm::ProductResolverIndexHelper::Matches Class Reference

#include <ProductResolverIndexHelper.h>

Public Member Functions

ProductResolverIndex index (unsigned int i) const
 
bool isFullyResolved (unsigned int i) const
 
 Matches (ProductResolverIndexHelper const *productResolverIndexHelper, unsigned int startInIndexAndNames, unsigned int numberOfMatches)
 
char const * moduleLabel (unsigned int i) const
 
unsigned int numberOfMatches () const
 
char const * processName (unsigned int i) const
 

Private Attributes

unsigned int numberOfMatches_
 
ProductResolverIndexHelper const * productResolverIndexHelper_
 
unsigned int startInIndexAndNames_
 

Detailed Description

Definition at line 127 of file ProductResolverIndexHelper.h.

Constructor & Destructor Documentation

edm::ProductResolverIndexHelper::Matches::Matches ( ProductResolverIndexHelper const *  productResolverIndexHelper,
unsigned int  startInIndexAndNames,
unsigned int  numberOfMatches 
)

Definition at line 101 of file ProductResolverIndexHelper.cc.

References Exception, edm::ProductResolverIndexHelper::indexAndNames_, edm::errors::LogicError, numberOfMatches_, productResolverIndexHelper_, and startInIndexAndNames_.

Referenced by edm::ProductResolverIndexHelper::relatedIndexes().

103  :
104  productResolverIndexHelper_(productResolverIndexHelper),
105  startInIndexAndNames_(startInIndexAndNames),
109  << "ProductResolverIndexHelper::Matches::Matches - Arguments exceed vector bounds.\n";
110  }
111  }
std::vector< IndexAndNames > indexAndNames_
ProductResolverIndexHelper const * productResolverIndexHelper_

Member Function Documentation

ProductResolverIndex edm::ProductResolverIndexHelper::Matches::index ( unsigned int  i) const
bool edm::ProductResolverIndexHelper::Matches::isFullyResolved ( unsigned int  i) const
char const * edm::ProductResolverIndexHelper::Matches::moduleLabel ( unsigned int  i) const

Definition at line 142 of file ProductResolverIndexHelper.cc.

References edm::ProductResolverIndexHelper::bigNamesContainer_, Exception, mps_fire::i, edm::ProductResolverIndexHelper::indexAndNames_, edm::errors::LogicError, numberOfMatches_, productResolverIndexHelper_, command_line::start, and startInIndexAndNames_.

Referenced by edm::ProductResolverIndexHelper::indexToIndexAndNames().

142  {
143  if (i >= numberOfMatches_) {
145  << "ProductResolverIndexHelper::Matches::moduleLabel - Argument is out of range.\n";
146  }
147  unsigned int start = productResolverIndexHelper_->indexAndNames_[startInIndexAndNames_ + i].startInBigNamesContainer();
149  }
Definition: start.py:1
std::vector< IndexAndNames > indexAndNames_
ProductResolverIndexHelper const * productResolverIndexHelper_
unsigned int edm::ProductResolverIndexHelper::Matches::numberOfMatches ( ) const
inline
char const * edm::ProductResolverIndexHelper::Matches::processName ( unsigned int  i) const

Definition at line 132 of file ProductResolverIndexHelper.cc.

References Exception, mps_fire::i, edm::ProductResolverIndexHelper::indexAndNames_, edm::errors::LogicError, numberOfMatches_, edm::ProductResolverIndexHelper::processNames_, productResolverIndexHelper_, and startInIndexAndNames_.

132  {
133  if (i >= numberOfMatches_) {
135  << "ProductResolverIndexHelper::Matches::processName - Argument is out of range.\n";
136  }
137  unsigned int startInProcessNames = productResolverIndexHelper_->indexAndNames_[startInIndexAndNames_ + i].startInProcessNames();
138  return &productResolverIndexHelper_->processNames_[startInProcessNames];
139  }
std::vector< IndexAndNames > indexAndNames_
ProductResolverIndexHelper const * productResolverIndexHelper_

Member Data Documentation

unsigned int edm::ProductResolverIndexHelper::Matches::numberOfMatches_
private
ProductResolverIndexHelper const* edm::ProductResolverIndexHelper::Matches::productResolverIndexHelper_
private
unsigned int edm::ProductResolverIndexHelper::Matches::startInIndexAndNames_
private