CMS 3D CMS Logo

List of all members | Public Types | Public Member Functions | Private Attributes
reco::TaggingVariableList Class Reference

#include <TaggingVariable.h>

Public Types

typedef std::vector< TaggingVariable >::const_iterator const_iterator
 
typedef std::pair< const_iterator, const_iteratorrange
 

Public Member Functions

const_iterator begin () const
 
bool checkTag (TaggingVariableName tag) const
 
const_iterator end () const
 
void finalize (void)
 
TaggingValue get (TaggingVariableName tag) const
 
TaggingValue get (TaggingVariableName tag, TaggingValue defaultValue) const
 
std::vector< TaggingValuegetList (TaggingVariableName tag, bool throwOnEmptyList=true) const
 
range getRange (TaggingVariableName tag) const
 
void insert (const TaggingVariable &variable, bool delayed=false)
 
void insert (const TaggingVariableList &list)
 
void insert (TaggingVariableName tag, TaggingValue value, bool delayed=false)
 
void insert (TaggingVariableName tag, const std::vector< TaggingValue > &values, bool delayed=false)
 
TaggingValue operator[] (TaggingVariableName tag) const
 
void push_back (const TaggingVariable &t)
 
size_t size () const
 
 TaggingVariableList ()
 
 TaggingVariableList (const TaggingVariableList &list)
 
template<typename InputIterator >
 TaggingVariableList (const InputIterator begin, const InputIterator end)
 
 ~TaggingVariableList ()
 

Private Attributes

std::vector< TaggingVariablem_list
 

Detailed Description

Definition at line 203 of file TaggingVariable.h.

Member Typedef Documentation

STL-like accessors

Definition at line 219 of file TaggingVariable.h.

Definition at line 220 of file TaggingVariable.h.

Constructor & Destructor Documentation

reco::TaggingVariableList::TaggingVariableList ( )
inline

Definition at line 205 of file TaggingVariable.h.

205 : m_list() { }
std::vector< TaggingVariable > m_list
reco::TaggingVariableList::TaggingVariableList ( const TaggingVariableList list)
inline

Definition at line 206 of file TaggingVariable.h.

206 : m_list( list.m_list ) { }
How EventSelector::AcceptEvent() decides whether to accept an event for output otherwise it is excluding the probing of A single or multiple positive and the trigger will pass if any such matching triggers are PASS or EXCEPTION[A criterion thatmatches no triggers at all is detected and causes a throw.] A single negative with an expectation of appropriate bit checking in the decision and the trigger will pass if any such matching triggers are FAIL or EXCEPTION A wildcarded negative criterion that matches more than one trigger in the trigger list("!*","!HLTx*"if it matches 2 triggers or more) will accept the event if all the matching triggers are FAIL.It will reject the event if any of the triggers are PASS or EXCEPTION(this matches the behavior of"!*"before the partial wildcard feature was incorporated).Triggers which are in the READY state are completely ignored.(READY should never be returned since the trigger paths have been run
std::vector< TaggingVariable > m_list
template<typename InputIterator >
reco::TaggingVariableList::TaggingVariableList ( const InputIterator  begin,
const InputIterator  end 
)
inline

Definition at line 210 of file TaggingVariable.h.

References end, mps_fire::i, and edm::eventsetup::heterocontainer::insert().

210  : m_list() {
211  static_assert(( boost::is_convertible< const TaggingVariableList, typename boost::pointee<InputIterator>::type >::value ));
212  for (const InputIterator i = begin; i != end; i++)
213  insert(*i);
214  }
type
Definition: HCALResponse.h:21
const_iterator begin() const
const_iterator end() const
Definition: value.py:1
std::vector< TaggingVariable > m_list
void insert(const TaggingVariable &variable, bool delayed=false)
reco::TaggingVariableList::~TaggingVariableList ( )
inline

Definition at line 226 of file TaggingVariable.h.

226 { }

Member Function Documentation

const_iterator reco::TaggingVariableList::begin ( void  ) const
inline

Definition at line 222 of file TaggingVariable.h.

Referenced by HLTBTagPerformanceAnalyzer::analyze().

222 { return m_list.begin(); }
std::vector< TaggingVariable > m_list
bool reco::TaggingVariableList::checkTag ( TaggingVariableName  tag) const

Definition at line 290 of file TaggingVariable.cc.

References GlobalPosition_Frontier_DevDB_cff::tag.

Referenced by CombinedSVSoftLeptonComputer::operator()(), and TemplatedDeepNNTagInfoProducer< IPTag, SVTag >::produce().

290  {
291  return binary_search( m_list.begin(), m_list.end(), tag, TaggingVariableCompare() );
292 }
std::vector< TaggingVariable > m_list
const_iterator reco::TaggingVariableList::end ( void  ) const
inline

Definition at line 223 of file TaggingVariable.h.

Referenced by HLTBTagPerformanceAnalyzer::analyze(), Types.LuminosityBlockRange::cppID(), and Types.EventRange::cppID().

223 { return m_list.end(); }
std::vector< TaggingVariable > m_list
void reco::TaggingVariableList::finalize ( void  )
TaggingValue reco::TaggingVariableList::get ( TaggingVariableName  tag) const

Definition at line 321 of file TaggingVariable.cc.

References Exception, edm::errors::InvalidReference, and alignCSCRings::r.

Referenced by Options.Options::__getitem__(), betterConfigParser.BetterConfigParser::__updateDict(), MVAJetTagPlotter::analyzeTag(), btagbtvdeep::bTagToFeatures(), rrapi.RRApi::columns(), util.rrapi.RRApi::columns(), rrapi.RRApi::count(), util.rrapi.RRApi::count(), rrapi.RRApi::data(), util.rrapi.RRApi::data(), btagbtvdeep::doubleBTagToFeatures(), TagInfoMVACategorySelector::findCategory(), betterConfigParser.BetterConfigParser::getCompares(), betterConfigParser.BetterConfigParser::getGeneral(), betterConfigParser.BetterConfigParser::getResultingSection(), CombinedSVSoftLeptonComputer::operator()(), rrapi.RRApi::report(), util.rrapi.RRApi::report(), util.rrapi.RRApi::reports(), rrapi.RRApi::reports(), rrapi.RRApi::tables(), util.rrapi.RRApi::tables(), rrapi.RRApi::tags(), util.rrapi.RRApi::tags(), rrapi.RRApi::templates(), util.rrapi.RRApi::templates(), rrapi.RRApi::workspaces(), and util.rrapi.RRApi::workspaces().

321  {
322  range r = getRange(tag);
323  if (r.first == r.second)
325  << "TaggingVariable " << tag << " is not present in the collection";
326  return r.first->second;
327 }
range getRange(TaggingVariableName tag) const
std::pair< const_iterator, const_iterator > range
TaggingValue reco::TaggingVariableList::get ( TaggingVariableName  tag,
TaggingValue  defaultValue 
) const
std::vector< TaggingValue > reco::TaggingVariableList::getList ( TaggingVariableName  tag,
bool  throwOnEmptyList = true 
) const

Definition at line 336 of file TaggingVariable.cc.

References Exception, edm::errors::InvalidReference, list(), alignCSCRings::r, and create_public_lumi_plots::transform.

Referenced by TaggingVariablePlotter::analyzeTag(), btagbtvdeep::bTagToFeatures(), btagbtvdeep::dump_vector(), and TemplatedDeepNNTagInfoProducer< IPTag, SVTag >::produce().

336  {
337  range r = getRange( tag );
338  if ( throwOnEmptyList && r.first == r.second )
340  << "TaggingVariable " << tag << " is not present in the collection";
341  std::vector<TaggingValue> list( r.second - r.first );
342  transform( r.first, r.second, list.begin(), [](TaggingVariable const& x) { return x.second;} );
343  return list;
344 }
range getRange(TaggingVariableName tag) const
std::pair< TaggingVariableName, TaggingValue > TaggingVariable
std::pair< const_iterator, const_iterator > range
How EventSelector::AcceptEvent() decides whether to accept an event for output otherwise it is excluding the probing of A single or multiple positive and the trigger will pass if any such matching triggers are PASS or EXCEPTION[A criterion thatmatches no triggers at all is detected and causes a throw.] A single negative with an expectation of appropriate bit checking in the decision and the trigger will pass if any such matching triggers are FAIL or EXCEPTION A wildcarded negative criterion that matches more than one trigger in the trigger list("!*","!HLTx*"if it matches 2 triggers or more) will accept the event if all the matching triggers are FAIL.It will reject the event if any of the triggers are PASS or EXCEPTION(this matches the behavior of"!*"before the partial wildcard feature was incorporated).Triggers which are in the READY state are completely ignored.(READY should never be returned since the trigger paths have been run
TaggingVariableList::range reco::TaggingVariableList::getRange ( TaggingVariableName  tag) const

Definition at line 346 of file TaggingVariable.cc.

References GlobalPosition_Frontier_DevDB_cff::tag.

346  {
347  return equal_range( m_list.begin(), m_list.end(), tag, TaggingVariableCompare() );
348 }
std::vector< TaggingVariable > m_list
void reco::TaggingVariableList::insert ( const TaggingVariable variable,
bool  delayed = false 
)
void reco::TaggingVariableList::insert ( const TaggingVariableList list)

Definition at line 311 of file TaggingVariable.cc.

References m_list, and findQualityFiles::size.

Referenced by BeautifulSoup.PageElement::append().

311  {
313  m_list.insert( m_list.end(), list.m_list.begin(), list.m_list.end() );
314  inplace_merge( m_list.begin(), m_list.begin() + size, m_list.end(), TaggingVariableCompare() );
315 }
uint16_t size_type
How EventSelector::AcceptEvent() decides whether to accept an event for output otherwise it is excluding the probing of A single or multiple positive and the trigger will pass if any such matching triggers are PASS or EXCEPTION[A criterion thatmatches no triggers at all is detected and causes a throw.] A single negative with an expectation of appropriate bit checking in the decision and the trigger will pass if any such matching triggers are FAIL or EXCEPTION A wildcarded negative criterion that matches more than one trigger in the trigger list("!*","!HLTx*"if it matches 2 triggers or more) will accept the event if all the matching triggers are FAIL.It will reject the event if any of the triggers are PASS or EXCEPTION(this matches the behavior of"!*"before the partial wildcard feature was incorporated).Triggers which are in the READY state are completely ignored.(READY should never be returned since the trigger paths have been run
std::vector< TaggingVariable > m_list
void reco::TaggingVariableList::insert ( TaggingVariableName  tag,
TaggingValue  value,
bool  delayed = false 
)

Definition at line 299 of file TaggingVariable.cc.

Referenced by BeautifulSoup.PageElement::append().

299  {
300  m_list.push_back( TaggingVariable( tag, value ) );
301  if (not delayed) finalize();
302 }
Definition: value.py:1
std::pair< TaggingVariableName, TaggingValue > TaggingVariable
std::vector< TaggingVariable > m_list
void reco::TaggingVariableList::insert ( TaggingVariableName  tag,
const std::vector< TaggingValue > &  values,
bool  delayed = false 
)

Definition at line 304 of file TaggingVariable.cc.

References mps_fire::i.

Referenced by BeautifulSoup.PageElement::append().

304  {
305  for (std::vector<TaggingValue>::const_iterator i = values.begin(); i != values.end(); i++) {
306  m_list.push_back( TaggingVariable(tag, *i) );
307  }
308  if (not delayed) finalize();
309 }
std::pair< TaggingVariableName, TaggingValue > TaggingVariable
std::vector< TaggingVariable > m_list
TaggingValue reco::TaggingVariableList::operator[] ( TaggingVariableName  tag) const
inline

Definition at line 248 of file TaggingVariable.h.

References GlobalPosition_Frontier_DevDB_cff::tag.

248  {
249  return get( tag );
250  }
void reco::TaggingVariableList::push_back ( const TaggingVariable t)
inline

Definition at line 224 of file TaggingVariable.h.

Referenced by GenericMVAJetTagComputer::taggingVariables().

224 { m_list.push_back ( t ); }
std::vector< TaggingVariable > m_list
size_t reco::TaggingVariableList::size ( void  ) const
inline

Definition at line 221 of file TaggingVariable.h.

Referenced by ntupleDataFormat._Collection::__iter__(), and ntupleDataFormat._Collection::__len__().

221 { return m_list.size(); }
std::vector< TaggingVariable > m_list

Member Data Documentation

std::vector< TaggingVariable > reco::TaggingVariableList::m_list
private

Definition at line 230 of file TaggingVariable.h.

Referenced by insert().