Rosetta
|
Keyed-access map with key subset map for each client class. More...
#include <ClassKeyMap.hh>
Public Member Functions | |
ClassKeyMap ()=default | |
Default constructor. More... | |
ClassKeyMap (ClassKeyMap const &a) | |
Copy constructor. More... | |
template<typename InputIterator > | |
ClassKeyMap (InputIterator const beg, InputIterator const end) | |
Iterator range constructor. More... | |
~ClassKeyMap () | |
Destructor. More... | |
ClassKeyMap & | operator= (ClassKeyMap const &a) |
Copy assignment. More... | |
ClassKeyMap & | operator= (Mapped const &mapped) |
Uniform value assignment to current elements. More... | |
ClassKeyMap & | assign (Key const &key, Mapped const &mapped) |
Assign a value to an element with a key. More... | |
ClassKeyMap & | assign (Value const &value) |
Assign a value to an element. More... | |
template<typename InputIterator > | |
void | assign (InputIterator const beg, InputIterator const end) |
Iterator assignment. More... | |
ClassKeyMap & | add (Key const &key) |
Add an element with a key if not present: Activate key if inactive. More... | |
ClassKeyMap & | insert (Value const &value) |
Insert an element. More... | |
template<typename InputIterator > | |
void | insert (InputIterator const beg, InputIterator const end) |
Insert elements from iterator range [beg,end) More... | |
void | reserve (Size const num) |
Reserve space for a given number of elements. More... | |
void | shrink () |
Shrink the vector to remove unused capacity. More... | |
void | swap (ClassKeyMap &a) |
swap( ClassKeyMap ) More... | |
void | clear () |
Clear the vector. More... | |
Size | size () const |
Size. More... | |
bool | empty () const |
Empty? More... | |
Size | max_size () const |
Max size. More... | |
Size | capacity () const |
Capacity. More... | |
bool | has (Key const &key) const |
Is an element with a key present? More... | |
ConstIterator | find (Key const &key) const |
Iterator to element with a key. More... | |
Iterator | find (Key const &key) |
Iterator to element with a key. More... | |
MappedReference | operator() (Key const &key) |
ClassKeyMap( key ) More... | |
MappedConstReference | operator[] (Key const &key) const |
ClassKeyMap[ key ] const. More... | |
MappedReference | operator[] (Key const &key) |
ClassKeyMap[ key ]. More... | |
MappedConstReference | operator[] (Index const &i) const |
ClassKeyMap[ index ] const. More... | |
MappedReference | operator[] (Index const &i) |
ClassKeyMap[ index ]. More... | |
ConstReference | operator() (Index const &i) const |
ClassKeyMap( index ) const. More... | |
Reference | operator() (Index const &i) |
ClassKeyMap( index ) More... | |
ConstIterator | begin () const |
Begin iterator. More... | |
Iterator | begin () |
Begin iterator. More... | |
ConstIterator | end () const |
End iterator. More... | |
Iterator | end () |
End iterator. More... | |
ConstReverseIterator | rbegin () const |
Begin reverse iterator. More... | |
ReverseIterator | rbegin () |
Begin reverse iterator. More... | |
ConstReverseIterator | rend () const |
End reverse iterator. More... | |
ReverseIterator | rend () |
End reverse iterator. More... | |
Static Public Member Functions | |
static Index const & | index (Key const &key) |
Index of a key. More... | |
static bool | active (Key const &key) |
Is a key active? More... | |
static bool | inactive (Key const &key) |
Is a key inactive? More... | |
static void | activate (Key const &key) |
Activate a key if inactive. More... | |
Private Types | |
typedef vector1< std::pair< K, T > > | Vector |
typedef vector1< typename Vector::Index > | IndexMap |
typedef IndexMap::Size | IndexMapSize |
typedef IndexMap::Index | IndexMapIndex |
Private Member Functions | |
Index const & | add_key (Key const &key) |
Add an element with a key if not present and return its index: Activate key if inactive. More... | |
Static Private Member Functions | |
static IndexMap & | m () |
Index map from keys into v_: Zero => inactive key. More... | |
static Index & | u () |
Upper active index of active keys. More... | |
static Index & | activated_index (Key const &key) |
Activate a key if inactive and return its index. More... | |
static void | map_shrink () |
Shrink the index map to remove unused capacity. More... | |
Private Attributes | |
Vector | v_ |
Vector of values indexed by a subset of the possible keys. More... | |
Friends | |
template<typename UK , typename UT , typename UC > | |
void | swap (ClassKeyMap< UK, UT, UC > &a, ClassKeyMap< UK, UT, UC > &b) |
swap( ClassKeyMap, ClassKeyMap ) More... | |
bool | operator== (ClassKeyMap const &a, ClassKeyMap const &b) |
ClassKeyMap == ClassKeyMap. More... | |
bool | operator!= (ClassKeyMap const &a, ClassKeyMap const &b) |
ClassKeyMap != ClassKeyMap. More... | |
bool | operator< (ClassKeyMap const &a, ClassKeyMap const &b) |
ClassKeyMap < ClassKeyMap. More... | |
bool | operator> (ClassKeyMap const &a, ClassKeyMap const &b) |
ClassKeyMap > ClassKeyMap. More... | |
bool | operator<= (ClassKeyMap const &a, ClassKeyMap const &b) |
ClassKeyMap <= ClassKeyMap. More... | |
bool | operator>= (ClassKeyMap const &a, ClassKeyMap const &b) |
ClassKeyMap >= ClassKeyMap. More... | |
Keyed-access map with key subset map for each client class.
typedef Vector::Allocator utility::keys::ClassKeyMap< K, T, C >::Allocator |
typedef Vector::allocator_type utility::keys::ClassKeyMap< K, T, C >::allocator_type |
typedef C utility::keys::ClassKeyMap< K, T, C >::Client |
typedef C utility::keys::ClassKeyMap< K, T, C >::client_type |
typedef Vector::const_iterator utility::keys::ClassKeyMap< K, T, C >::const_iterator |
typedef Vector::const_pointer utility::keys::ClassKeyMap< K, T, C >::const_pointer |
typedef Vector::const_reference utility::keys::ClassKeyMap< K, T, C >::const_reference |
typedef Vector::const_reverse_iterator utility::keys::ClassKeyMap< K, T, C >::const_reverse_iterator |
typedef Vector::ConstIterator utility::keys::ClassKeyMap< K, T, C >::ConstIterator |
typedef Vector::ConstPointer utility::keys::ClassKeyMap< K, T, C >::ConstPointer |
typedef Vector::ConstReference utility::keys::ClassKeyMap< K, T, C >::ConstReference |
typedef Vector::ConstReverseIterator utility::keys::ClassKeyMap< K, T, C >::ConstReverseIterator |
typedef Vector::Difference utility::keys::ClassKeyMap< K, T, C >::Difference |
typedef Vector::difference_type utility::keys::ClassKeyMap< K, T, C >::difference_type |
typedef Vector::Index utility::keys::ClassKeyMap< K, T, C >::Index |
typedef Vector::index_type utility::keys::ClassKeyMap< K, T, C >::index_type |
|
private |
|
private |
|
private |
typedef Vector::iterator utility::keys::ClassKeyMap< K, T, C >::iterator |
typedef Vector::Iterator utility::keys::ClassKeyMap< K, T, C >::Iterator |
typedef K utility::keys::ClassKeyMap< K, T, C >::Key |
typedef K utility::keys::ClassKeyMap< K, T, C >::key_type |
typedef T utility::keys::ClassKeyMap< K, T, C >::Mapped |
typedef T const* utility::keys::ClassKeyMap< K, T, C >::mapped_const_pointer |
typedef T const& utility::keys::ClassKeyMap< K, T, C >::mapped_const_reference |
typedef T* utility::keys::ClassKeyMap< K, T, C >::mapped_pointer |
typedef T& utility::keys::ClassKeyMap< K, T, C >::mapped_reference |
typedef T utility::keys::ClassKeyMap< K, T, C >::mapped_type |
typedef T const* utility::keys::ClassKeyMap< K, T, C >::MappedConstPointer |
typedef T const& utility::keys::ClassKeyMap< K, T, C >::MappedConstReference |
typedef T* utility::keys::ClassKeyMap< K, T, C >::MappedPointer |
typedef T& utility::keys::ClassKeyMap< K, T, C >::MappedReference |
typedef Vector::pointer utility::keys::ClassKeyMap< K, T, C >::pointer |
typedef Vector::Pointer utility::keys::ClassKeyMap< K, T, C >::Pointer |
typedef Vector::reference utility::keys::ClassKeyMap< K, T, C >::reference |
typedef Vector::Reference utility::keys::ClassKeyMap< K, T, C >::Reference |
typedef Vector::reverse_iterator utility::keys::ClassKeyMap< K, T, C >::reverse_iterator |
typedef Vector::ReverseIterator utility::keys::ClassKeyMap< K, T, C >::ReverseIterator |
typedef Vector::Size utility::keys::ClassKeyMap< K, T, C >::Size |
typedef Vector::size_type utility::keys::ClassKeyMap< K, T, C >::size_type |
typedef Vector::Value utility::keys::ClassKeyMap< K, T, C >::Value |
typedef Vector::value_type utility::keys::ClassKeyMap< K, T, C >::value_type |
|
private |
|
inlinedefault |
Default constructor.
|
inline |
Copy constructor.
|
inline |
Iterator range constructor.
References utility::keys::ClassKeyMap< K, T, C >::add_key(), test.T009_Exceptions::e, create_a3b_hbs::first, create_a3b_hbs::i, and utility::keys::ClassKeyMap< K, T, C >::v_.
|
inline |
Destructor.
|
inlinestatic |
Activate a key if inactive.
References debug_assert, utility::vectorL< L, T, A >::has(), subloop_histogram::key, utility::keys::ClassKeyMap< K, T, C >::m(), and utility::keys::ClassKeyMap< K, T, C >::u().
Referenced by utility::keys::ClassKeyMap< K, T, C >::activated_index().
|
inlinestaticprivate |
Activate a key if inactive and return its index.
References utility::keys::ClassKeyMap< K, T, C >::activate(), subloop_histogram::key, and utility::keys::ClassKeyMap< K, T, C >::m().
Referenced by utility::keys::ClassKeyMap< K, T, C >::add_key().
|
inlinestatic |
Is a key active?
References utility::keys::ClassKeyMap< K, T, C >::has(), subloop_histogram::key, and utility::keys::ClassKeyMap< K, T, C >::m().
Referenced by utility::keys::ClassKeyMap< K, T, C >::find(), utility::keys::ClassKeyMap< K, T, C >::index(), and utility::keys::ClassKeyMap< K, T, C >::operator[]().
|
inline |
Add an element with a key if not present: Activate key if inactive.
References utility::keys::ClassKeyMap< K, T, C >::add_key(), and subloop_histogram::key.
Referenced by job_manager.MoveStatsWindow::__init__(), and pyrosetta.bindings.pose.ResidueLabelAccessor::discard().
|
inlineprivate |
Add an element with a key if not present and return its index: Activate key if inactive.
References utility::keys::ClassKeyMap< K, T, C >::activated_index(), debug_assert, create_a3b_hbs::i, subloop_histogram::key, and utility::keys::ClassKeyMap< K, T, C >::v_.
Referenced by utility::keys::ClassKeyMap< K, T, C >::add(), utility::keys::ClassKeyMap< K, T, C >::assign(), utility::keys::ClassKeyMap< K, T, C >::ClassKeyMap(), utility::keys::ClassKeyMap< K, T, C >::insert(), and utility::keys::ClassKeyMap< K, T, C >::operator()().
|
inline |
|
inline |
Assign a value to an element with a key.
References utility::keys::ClassKeyMap< K, T, C >::add_key(), subloop_histogram::key, and utility::keys::ClassKeyMap< K, T, C >::v_.
|
inline |
Assign a value to an element.
References utility::keys::ClassKeyMap< K, T, C >::add_key(), utility::keys::ClassKeyMap< K, T, C >::v_, and value.
|
inline |
Begin iterator.
References utility::keys::ClassKeyMap< K, T, C >::v_.
|
inline |
Begin iterator.
References utility::keys::ClassKeyMap< K, T, C >::v_.
|
inline |
Capacity.
References utility::keys::ClassKeyMap< K, T, C >::v_.
|
inline |
Clear the vector.
References utility::keys::ClassKeyMap< K, T, C >::v_.
Referenced by utility::keys::ClassKeyMap< K, T, C >::assign(), and pyrosetta.bindings.pose.ResidueLabelAccessor::discard().
|
inline |
Empty?
References utility::keys::ClassKeyMap< K, T, C >::v_.
|
inline |
End iterator.
References utility::keys::ClassKeyMap< K, T, C >::v_.
|
inline |
End iterator.
References utility::keys::ClassKeyMap< K, T, C >::v_.
Referenced by utility::keys::ClassKeyMap< K, T, C >::assign(), and utility::keys::ClassKeyMap< K, T, C >::insert().
|
inline |
Iterator to element with a key.
References utility::keys::ClassKeyMap< K, T, C >::active(), subloop_histogram::key, utility::keys::ClassKeyMap< K, T, C >::m(), and utility::keys::ClassKeyMap< K, T, C >::v_.
|
inline |
Iterator to element with a key.
References utility::keys::ClassKeyMap< K, T, C >::active(), subloop_histogram::key, utility::keys::ClassKeyMap< K, T, C >::m(), and utility::keys::ClassKeyMap< K, T, C >::v_.
|
inline |
Is an element with a key present?
References utility::vectorL< L, T, A >::has(), subloop_histogram::key, utility::keys::ClassKeyMap< K, T, C >::m(), and utility::keys::ClassKeyMap< K, T, C >::v_.
Referenced by utility::keys::ClassKeyMap< K, T, C >::active(), and utility::keys::ClassKeyMap< K, T, C >::inactive().
|
inlinestatic |
Is a key inactive?
References utility::keys::ClassKeyMap< K, T, C >::has(), subloop_histogram::key, and utility::keys::ClassKeyMap< K, T, C >::m().
|
inlinestatic |
Index of a key.
References utility::keys::ClassKeyMap< K, T, C >::active(), debug_assert, subloop_histogram::key, and utility::keys::ClassKeyMap< K, T, C >::m().
|
inline |
Insert elements from iterator range [beg,end)
References utility::keys::ClassKeyMap< K, T, C >::end(), create_a3b_hbs::i, and utility::keys::ClassKeyMap< K, T, C >::insert().
|
inline |
Insert an element.
References utility::keys::ClassKeyMap< K, T, C >::add_key(), utility::keys::ClassKeyMap< K, T, C >::v_, and value.
Referenced by utility::keys::ClassKeyMap< K, T, C >::insert().
|
inlinestaticprivate |
Index map from keys into v_: Zero => inactive key.
Referenced by utility::keys::ClassKeyMap< K, T, C >::activate(), utility::keys::ClassKeyMap< K, T, C >::activated_index(), utility::keys::ClassKeyMap< K, T, C >::active(), utility::keys::ClassKeyMap< K, T, C >::find(), utility::keys::ClassKeyMap< K, T, C >::has(), utility::keys::ClassKeyMap< K, T, C >::inactive(), utility::keys::ClassKeyMap< K, T, C >::index(), utility::keys::ClassKeyMap< K, T, C >::map_shrink(), and utility::keys::ClassKeyMap< K, T, C >::operator[]().
|
inlinestaticprivate |
Shrink the index map to remove unused capacity.
References utility::keys::ClassKeyMap< K, T, C >::m(), and utility::vectorL< L, T, A >::shrink().
|
inline |
Max size.
References utility::keys::ClassKeyMap< K, T, C >::v_.
|
inline |
ClassKeyMap( index )
References create_a3b_hbs::i, and utility::keys::ClassKeyMap< K, T, C >::v_.
|
inline |
ClassKeyMap( index ) const.
References create_a3b_hbs::i, and utility::keys::ClassKeyMap< K, T, C >::v_.
|
inline |
ClassKeyMap( key )
References utility::keys::ClassKeyMap< K, T, C >::add_key(), subloop_histogram::key, and utility::keys::ClassKeyMap< K, T, C >::v_.
|
inline |
Copy assignment.
References a, and utility::keys::ClassKeyMap< K, T, C >::v_.
|
inline |
Uniform value assignment to current elements.
References test.T009_Exceptions::e, create_a3b_hbs::i, and utility::keys::ClassKeyMap< K, T, C >::v_.
|
inline |
ClassKeyMap[ index ].
References create_a3b_hbs::i, and utility::keys::ClassKeyMap< K, T, C >::v_.
|
inline |
ClassKeyMap[ index ] const.
References create_a3b_hbs::i, and utility::keys::ClassKeyMap< K, T, C >::v_.
|
inline |
|
inline |
|
inline |
Begin reverse iterator.
References utility::keys::ClassKeyMap< K, T, C >::v_.
|
inline |
Begin reverse iterator.
References utility::keys::ClassKeyMap< K, T, C >::v_.
|
inline |
End reverse iterator.
References utility::keys::ClassKeyMap< K, T, C >::v_.
|
inline |
End reverse iterator.
References utility::keys::ClassKeyMap< K, T, C >::v_.
|
inline |
Reserve space for a given number of elements.
References utility::keys::ClassKeyMap< K, T, C >::v_.
|
inline |
Shrink the vector to remove unused capacity.
References utility::vectorL< L, T, A >::shrink(), and utility::keys::ClassKeyMap< K, T, C >::v_.
|
inline |
Size.
References utility::keys::ClassKeyMap< K, T, C >::v_.
|
inline |
swap( ClassKeyMap )
References a, utility::vectorL< L, T, A >::swap(), and utility::keys::ClassKeyMap< K, T, C >::v_.
|
inlinestaticprivate |
Upper active index of active keys.
Referenced by utility::keys::ClassKeyMap< K, T, C >::activate().
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
swap( ClassKeyMap, ClassKeyMap )
|
private |
Vector of values indexed by a subset of the possible keys.
Referenced by utility::keys::ClassKeyMap< K, T, C >::add_key(), utility::keys::ClassKeyMap< K, T, C >::assign(), utility::keys::ClassKeyMap< K, T, C >::begin(), utility::keys::ClassKeyMap< K, T, C >::capacity(), utility::keys::ClassKeyMap< K, T, C >::ClassKeyMap(), utility::keys::ClassKeyMap< K, T, C >::clear(), utility::keys::ClassKeyMap< K, T, C >::empty(), utility::keys::ClassKeyMap< K, T, C >::end(), utility::keys::ClassKeyMap< K, T, C >::find(), utility::keys::ClassKeyMap< K, T, C >::has(), utility::keys::ClassKeyMap< K, T, C >::insert(), utility::keys::ClassKeyMap< K, T, C >::max_size(), utility::keys::ClassKeyMap< K, T, C >::operator()(), utility::keys::ClassKeyMap< K, T, C >::operator=(), utility::keys::ClassKeyMap< K, T, C >::operator[](), utility::keys::ClassKeyMap< K, T, C >::rbegin(), utility::keys::ClassKeyMap< K, T, C >::rend(), utility::keys::ClassKeyMap< K, T, C >::reserve(), utility::keys::ClassKeyMap< K, T, C >::shrink(), utility::keys::ClassKeyMap< K, T, C >::size(), and utility::keys::ClassKeyMap< K, T, C >::swap().