#include <AssociationVector.h>
Public Types | |
typedef KeyRefProd::product_type | CKey |
typedef transient_vector_type::const_iterator | const_iterator |
typedef value_type const & | const_reference |
typedef KeyRef::value_type | key_type |
typedef KeyRefProd | refprod_type |
typedef SizeType | size_type |
typedef std::vector< value_type > | transient_vector_type |
typedef std::pair< KeyRef, typename CVal::value_type > | value_type |
Public Member Functions | |
AssociationVector () | |
AssociationVector (KeyRefProd const &ref, CKey const *=0) | |
AssociationVector (AssociationVector const &) | |
const_iterator | begin () const |
void | clear () |
bool | empty () const |
const_iterator | end () const |
void | fillView (ProductID const &id, std::vector< void const * > &pointers, helper_vector &helpers) const |
KeyRef | key (size_type i) const |
KeyRefProd const & | keyProduct () const |
self & | operator= (self const &) |
CVal::const_reference | operator[] (KeyRef const &k) const |
CVal::reference | operator[] (KeyRef const &k) |
const_reference | operator[] (size_type n) const |
void | setValue (size_type i, typename CVal::value_type const &val) |
size_type | size () const |
void | swap (self &other) |
CVal::value_type const | value (size_type i) const |
~AssociationVector () | |
Private Types | |
typedef AssociationVector < KeyRefProd, CVal, KeyRef, SizeType, KeyReferenceHelper > | self |
Private Member Functions | |
BOOST_STATIC_ASSERT ((boost::is_convertible< SizeType, typename CVal::size_type >::value)) | |
void | fixup () const |
transient_vector_type const & | transientVector () const |
Private Attributes | |
CVal | data_ |
bool | fixed_ |
KeyRefProd | ref_ |
transient_vector_type | transientVector_ |
Definition at line 58 of file AssociationVector.h.
typedef KeyRefProd::product_type edm::AssociationVector< KeyRefProd, CVal, KeyRef, SizeType, KeyReferenceHelper >::CKey |
Definition at line 64 of file AssociationVector.h.
typedef transient_vector_type::const_iterator edm::AssociationVector< KeyRefProd, CVal, KeyRef, SizeType, KeyReferenceHelper >::const_iterator |
Definition at line 93 of file AssociationVector.h.
typedef value_type const& edm::AssociationVector< KeyRefProd, CVal, KeyRef, SizeType, KeyReferenceHelper >::const_reference |
Definition at line 69 of file AssociationVector.h.
typedef KeyRef::value_type edm::AssociationVector< KeyRefProd, CVal, KeyRef, SizeType, KeyReferenceHelper >::key_type |
Definition at line 66 of file AssociationVector.h.
typedef KeyRefProd edm::AssociationVector< KeyRefProd, CVal, KeyRef, SizeType, KeyReferenceHelper >::refprod_type |
Definition at line 63 of file AssociationVector.h.
typedef AssociationVector<KeyRefProd, CVal, KeyRef, SizeType, KeyReferenceHelper> edm::AssociationVector< KeyRefProd, CVal, KeyRef, SizeType, KeyReferenceHelper >::self [private] |
Definition at line 60 of file AssociationVector.h.
typedef SizeType edm::AssociationVector< KeyRefProd, CVal, KeyRef, SizeType, KeyReferenceHelper >::size_type |
Definition at line 65 of file AssociationVector.h.
typedef std::vector<value_type> edm::AssociationVector< KeyRefProd, CVal, KeyRef, SizeType, KeyReferenceHelper >::transient_vector_type |
Definition at line 68 of file AssociationVector.h.
typedef std::pair<KeyRef, typename CVal::value_type> edm::AssociationVector< KeyRefProd, CVal, KeyRef, SizeType, KeyReferenceHelper >::value_type |
Definition at line 67 of file AssociationVector.h.
edm::AssociationVector< KeyRefProd, CVal, KeyRef, SizeType, KeyReferenceHelper >::AssociationVector | ( | ) | [inline] |
Definition at line 111 of file AssociationVector.h.
: data_(), ref_(), transientVector_(), fixed_(false) { }
edm::AssociationVector< KeyRefProd, CVal, KeyRef, SizeType, KeyReferenceHelper >::AssociationVector | ( | KeyRefProd const & | ref, |
CKey const * | coll = 0 |
||
) | [inline] |
Definition at line 115 of file AssociationVector.h.
edm::AssociationVector< KeyRefProd, CVal, KeyRef, SizeType, KeyReferenceHelper >::AssociationVector | ( | AssociationVector< KeyRefProd, CVal, KeyRef, SizeType, KeyReferenceHelper > const & | o | ) | [inline] |
Definition at line 122 of file AssociationVector.h.
edm::AssociationVector< KeyRefProd, CVal, KeyRef, SizeType, KeyReferenceHelper >::~AssociationVector | ( | ) | [inline] |
Definition at line 126 of file AssociationVector.h.
{ }
const_iterator edm::AssociationVector< KeyRefProd, CVal, KeyRef, SizeType, KeyReferenceHelper >::begin | ( | void | ) | const [inline] |
Definition at line 95 of file AssociationVector.h.
References edm::AssociationVector< KeyRefProd, CVal, KeyRef, SizeType, KeyReferenceHelper >::transientVector().
Referenced by BTagPerformanceAnalyzerOnData::analyze(), and BTagPerformanceAnalyzerMC::analyze().
{ return transientVector().begin(); }
edm::AssociationVector< KeyRefProd, CVal, KeyRef, SizeType, KeyReferenceHelper >::BOOST_STATIC_ASSERT | ( | (boost::is_convertible< SizeType, typename CVal::size_type >::value) | ) | [private] |
void edm::AssociationVector< KeyRefProd, CVal, KeyRef, SizeType, KeyReferenceHelper >::clear | ( | void | ) | [inline] |
Definition at line 184 of file AssociationVector.h.
{ data_.clear(); transientVector_.clear(); ref_ = KeyRefProd(); fixed_ = true; }
bool edm::AssociationVector< KeyRefProd, CVal, KeyRef, SizeType, KeyReferenceHelper >::empty | ( | ) | const [inline] |
Definition at line 179 of file AssociationVector.h.
{ return data_.empty(); }
const_iterator edm::AssociationVector< KeyRefProd, CVal, KeyRef, SizeType, KeyReferenceHelper >::end | ( | void | ) | const [inline] |
Definition at line 96 of file AssociationVector.h.
References edm::AssociationVector< KeyRefProd, CVal, KeyRef, SizeType, KeyReferenceHelper >::transientVector().
Referenced by BTagPerformanceAnalyzerOnData::analyze(), and BTagPerformanceAnalyzerMC::analyze().
{ return transientVector().end(); }
void edm::AssociationVector< KeyRefProd, CVal, KeyRef, SizeType, KeyReferenceHelper >::fillView | ( | ProductID const & | id, |
std::vector< void const * > & | pointers, | ||
helper_vector & | helpers | ||
) | const |
Definition at line 211 of file AssociationVector.h.
References edm::detail::reallyFillView().
Referenced by edm::fillView().
{ detail::reallyFillView(*this, id, pointers, helpers); // pointers.reserve(this->size()); // for(typename CVal::const_iterator i=data_.begin(), e=data_.end(); i!=e; ++i) // pointers.push_back(&(*i)); // // helpers is not yet filled in. // //Exception::throwThis(errors::UnimplementedFeature, "AssociationVector<T>::fillView(...)"); }
void edm::AssociationVector< KeyRefProd, CVal, KeyRef, SizeType, KeyReferenceHelper >::fixup | ( | ) | const [inline, private] |
Definition at line 200 of file AssociationVector.h.
References i, and findQualityFiles::size.
Referenced by edm::AssociationVector< KeyRefProd, CVal, KeyRef, SizeType, KeyReferenceHelper >::transientVector().
KeyRef edm::AssociationVector< KeyRefProd, CVal, KeyRef, SizeType, KeyReferenceHelper >::key | ( | size_type | i | ) | const [inline] |
Definition at line 86 of file AssociationVector.h.
References edm::AssociationVector< KeyRefProd, CVal, KeyRef, SizeType, KeyReferenceHelper >::ref_.
KeyRefProd const& edm::AssociationVector< KeyRefProd, CVal, KeyRef, SizeType, KeyReferenceHelper >::keyProduct | ( | ) | const [inline] |
Definition at line 85 of file AssociationVector.h.
References edm::AssociationVector< KeyRefProd, CVal, KeyRef, SizeType, KeyReferenceHelper >::ref_.
Referenced by reco::tau::RecoTauDiscriminantFromDiscriminator::operator()().
{ return ref_; }
AssociationVector< KeyRefProd, CVal, KeyRef, SizeType, KeyReferenceHelper > & edm::AssociationVector< KeyRefProd, CVal, KeyRef, SizeType, KeyReferenceHelper >::operator= | ( | self const & | o | ) | [inline] |
Definition at line 154 of file AssociationVector.h.
References python::connectstrParser::o.
AssociationVector< KeyRefProd, CVal, KeyRef, SizeType, KeyReferenceHelper >::const_reference edm::AssociationVector< KeyRefProd, CVal, KeyRef, SizeType, KeyReferenceHelper >::operator[] | ( | size_type | n | ) | const [inline] |
Definition at line 130 of file AssociationVector.h.
References n.
{ return transientVector()[ n ]; }
CVal::const_reference edm::AssociationVector< KeyRefProd, CVal, KeyRef, SizeType, KeyReferenceHelper >::operator[] | ( | KeyRef const & | k | ) | const [inline] |
Definition at line 136 of file AssociationVector.h.
References edm::checkForWrongProduct(), and reco::get().
{ KeyRef keyRef = KeyReferenceHelper::get(k, ref_.id()); checkForWrongProduct(keyRef.id(), ref_.id()); return data_[ keyRef.key() ]; }
CVal::reference edm::AssociationVector< KeyRefProd, CVal, KeyRef, SizeType, KeyReferenceHelper >::operator[] | ( | KeyRef const & | k | ) | [inline] |
Definition at line 145 of file AssociationVector.h.
References edm::checkForWrongProduct(), and reco::get().
{ KeyRef keyRef = KeyReferenceHelper::get(k, ref_.id()); fixed_ = false; checkForWrongProduct(keyRef.id(), ref_.id()); return data_[ keyRef.key() ]; }
void edm::AssociationVector< KeyRefProd, CVal, KeyRef, SizeType, KeyReferenceHelper >::setValue | ( | size_type | i, |
typename CVal::value_type const & | val | ||
) | [inline] |
Definition at line 165 of file AssociationVector.h.
References i.
Referenced by ElectronSqPtTkIsolationProducer::produce().
{ data_[ i ] = val; KeyRef ref(ref_, i); transientVector_[ i ].first = ref; transientVector_[ i ].second = data_[ i ]; }
AssociationVector< KeyRefProd, CVal, KeyRef, SizeType, KeyReferenceHelper >::size_type edm::AssociationVector< KeyRefProd, CVal, KeyRef, SizeType, KeyReferenceHelper >::size | ( | void | ) | const [inline] |
Definition at line 174 of file AssociationVector.h.
Referenced by HLTBJet::analyseLifetime(), HLTBJet::analyseLifetimeSingleTrack(), HLTBJet::analysePerformance(), BTagPerformanceAnalyzerOnData::analyze(), BTagPerformanceAnalyzerMC::analyze(), and BjetAnalysis::analyze().
{ return data_.size(); }
void edm::AssociationVector< KeyRefProd, CVal, KeyRef, SizeType, KeyReferenceHelper >::swap | ( | self & | other | ) | [inline] |
Definition at line 192 of file AssociationVector.h.
References edm::swap().
Referenced by edm::swap().
{ data_.swap(other.data_); transientVector_.swap(other.transientVector_); ref_.swap(other.ref_); std::swap(fixed_, other.fixed_); }
transient_vector_type const& edm::AssociationVector< KeyRefProd, CVal, KeyRef, SizeType, KeyReferenceHelper >::transientVector | ( | ) | const [inline, private] |
Definition at line 106 of file AssociationVector.h.
References edm::AssociationVector< KeyRefProd, CVal, KeyRef, SizeType, KeyReferenceHelper >::fixup(), and edm::AssociationVector< KeyRefProd, CVal, KeyRef, SizeType, KeyReferenceHelper >::transientVector_.
Referenced by edm::AssociationVector< KeyRefProd, CVal, KeyRef, SizeType, KeyReferenceHelper >::begin(), and edm::AssociationVector< KeyRefProd, CVal, KeyRef, SizeType, KeyReferenceHelper >::end().
{ fixup(); return transientVector_; }
CVal::value_type const edm::AssociationVector< KeyRefProd, CVal, KeyRef, SizeType, KeyReferenceHelper >::value | ( | size_type | i | ) | const [inline] |
Definition at line 87 of file AssociationVector.h.
References edm::AssociationVector< KeyRefProd, CVal, KeyRef, SizeType, KeyReferenceHelper >::data_, and i.
CVal edm::AssociationVector< KeyRefProd, CVal, KeyRef, SizeType, KeyReferenceHelper >::data_ [private] |
Definition at line 102 of file AssociationVector.h.
Referenced by edm::AssociationVector< KeyRefProd, CVal, KeyRef, SizeType, KeyReferenceHelper >::value().
bool edm::AssociationVector< KeyRefProd, CVal, KeyRef, SizeType, KeyReferenceHelper >::fixed_ [mutable, private] |
Definition at line 105 of file AssociationVector.h.
KeyRefProd edm::AssociationVector< KeyRefProd, CVal, KeyRef, SizeType, KeyReferenceHelper >::ref_ [private] |
Definition at line 103 of file AssociationVector.h.
Referenced by edm::AssociationVector< KeyRefProd, CVal, KeyRef, SizeType, KeyReferenceHelper >::key(), and edm::AssociationVector< KeyRefProd, CVal, KeyRef, SizeType, KeyReferenceHelper >::keyProduct().
transient_vector_type edm::AssociationVector< KeyRefProd, CVal, KeyRef, SizeType, KeyReferenceHelper >::transientVector_ [mutable, private] |
Definition at line 104 of file AssociationVector.h.
Referenced by edm::AssociationVector< KeyRefProd, CVal, KeyRef, SizeType, KeyReferenceHelper >::transientVector().