LArSoft
v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
|
Iterator to the sparse vector values. More...
#include "sparse_vector.h"
Classes | |
struct | special |
Namespace for special initialization. More... | |
Public Types | |
typedef std::forward_iterator_tag | iterator_category |
typedef container_t::value_type | value_type |
typedef container_t::difference_type | difference_type |
typedef container_t::pointer | pointer |
typedef container_t::reference | reference |
typedef vector_t::const_reference | const_reference |
Public Member Functions | |
const_iterator () | |
Default constructor, does not iterate anywhere. More... | |
const_iterator (const container_t &c, size_type offset) | |
Constructor from a container and a offset. More... | |
const_iterator (const container_t &c, const typename special::begin) | |
Special constructor: initializes at the beginning of the container. More... | |
const_iterator (const container_t &c, const typename special::end) | |
Special constructor: initializes at the end of the container. More... | |
const_reference | operator[] (size_type offset) const |
Random access. More... | |
const_reference | operator* () const |
Constant dereferenciation operator. More... | |
difference_type | operator- (const const_iterator &iter) const |
Distance operator. More... | |
range_const_iterator | get_current_range () const |
Returns the current range internal value; use it at your own risk!! More... | |
const_iterator & | operator++ () |
Increment and decrement operators. More... | |
const_iterator | operator++ (int) |
Increment and decrement operators. More... | |
const_iterator & | operator+= (difference_type delta) |
Increment and decrement operators. More... | |
const_iterator & | operator-= (difference_type delta) |
Increment and decrement operators. More... | |
const_iterator | operator+ (difference_type delta) const |
Increment and decrement operators. More... | |
const_iterator | operator- (difference_type delta) const |
Increment and decrement operators. More... | |
bool | operator== (const const_iterator &as) const |
Iterator comparisons. More... | |
bool | operator!= (const const_iterator &as) const |
Iterator comparisons. More... | |
bool | operator< (const const_iterator &than) const |
Iterator comparisons. More... | |
bool | operator> (const const_iterator &than) const |
Iterator comparisons. More... | |
bool | operator<= (const const_iterator &than) const |
Iterator comparisons. More... | |
bool | operator>= (const const_iterator &than) const |
Iterator comparisons. More... | |
Protected Types | |
typedef sparse_vector< T > | container_t |
typedef container_t::size_type | size_type |
typedef container_t::range_list_t::const_iterator | ranges_const_iterator |
Protected Member Functions | |
void | refresh_state () |
Reassigns the internal state according to the index. More... | |
Protected Attributes | |
const container_t * | cont |
pointer to the container More... | |
size_type | index |
pointer to the current value, as absolute index More... | |
ranges_const_iterator | currentRange |
pointer to the current (or next) range More... | |
Friends | |
class | container_t |
Iterator to the sparse vector values.
Definition at line 1459 of file sparse_vector.h.
typedef vector_t::const_reference lar::sparse_vector< T >::const_iterator::const_reference |
Definition at line 1489 of file sparse_vector.h.
|
protected |
Definition at line 1467 of file sparse_vector.h.
typedef container_t::difference_type lar::sparse_vector< T >::const_iterator::difference_type |
Definition at line 1484 of file sparse_vector.h.
typedef std::forward_iterator_tag lar::sparse_vector< T >::const_iterator::iterator_category |
Definition at line 1474 of file sparse_vector.h.
typedef container_t::pointer lar::sparse_vector< T >::const_iterator::pointer |
Definition at line 1485 of file sparse_vector.h.
|
protected |
Definition at line 1469 of file sparse_vector.h.
typedef container_t::reference lar::sparse_vector< T >::const_iterator::reference |
Definition at line 1486 of file sparse_vector.h.
|
protected |
Definition at line 1468 of file sparse_vector.h.
typedef container_t::value_type lar::sparse_vector< T >::const_iterator::value_type |
Definition at line 1483 of file sparse_vector.h.
|
inline |
Default constructor, does not iterate anywhere.
Definition at line 1492 of file sparse_vector.h.
|
inline |
Constructor from a container and a offset.
Definition at line 1495 of file sparse_vector.h.
|
inline |
Special constructor: initializes at the beginning of the container.
Definition at line 1502 of file sparse_vector.h.
|
inline |
Special constructor: initializes at the end of the container.
Definition at line 1507 of file sparse_vector.h.
|
inline |
Returns the current range internal value; use it at your own risk!!
Definition at line 1568 of file sparse_vector.h.
Referenced by lar::sparse_vector< T >::make_void().
|
inline |
Iterator comparisons.
Definition at line 1545 of file sparse_vector.h.
References lar::sparse_vector< T >::const_iterator::cont, and lar::sparse_vector< T >::const_iterator::index.
lar::sparse_vector< T >::const_iterator::const_reference lar::sparse_vector< T >::const_iterator::operator* | ( | ) | const |
Constant dereferenciation operator.
Definition at line 2423 of file sparse_vector.h.
lar::sparse_vector< T >::const_iterator lar::sparse_vector< T >::const_iterator::operator+ | ( | difference_type | delta | ) | const |
Increment and decrement operators.
Definition at line 2458 of file sparse_vector.h.
References lar::sparse_vector< T >::const_iterator::index.
lar::sparse_vector< T >::const_iterator & lar::sparse_vector< T >::const_iterator::operator++ | ( | ) |
Increment and decrement operators.
Definition at line 2403 of file sparse_vector.h.
|
inline |
Increment and decrement operators.
Definition at line 1520 of file sparse_vector.h.
References lar::sparse_vector< T >::const_iterator::cont, lar::sparse_vector< T >::const_iterator::index, lar::operator+(), shims::map< Key, T, Compare, Allocator >::iter< Category, TT, Distance, Pointer, Reference >::operator++(), lar::dump::operator+=(), operator-(), and util::details::operator==().
lar::sparse_vector< T >::const_iterator & lar::sparse_vector< T >::const_iterator::operator+= | ( | difference_type | delta | ) |
Increment and decrement operators.
Definition at line 2441 of file sparse_vector.h.
|
inline |
Increment and decrement operators.
Definition at line 2470 of file sparse_vector.h.
References lar::operator+().
|
inline |
Distance operator.
distance operator
Definition at line 2478 of file sparse_vector.h.
References lar::sparse_vector< T >::const_iterator::cont, and lar::sparse_vector< T >::const_iterator::index.
|
inline |
Increment and decrement operators.
Definition at line 2452 of file sparse_vector.h.
References lar::dump::operator+=().
|
inline |
Iterator comparisons.
Definition at line 1549 of file sparse_vector.h.
References lar::sparse_vector< T >::const_iterator::cont, and lar::sparse_vector< T >::const_iterator::index.
|
inline |
Iterator comparisons.
Definition at line 1557 of file sparse_vector.h.
References lar::sparse_vector< T >::const_iterator::cont, and lar::sparse_vector< T >::const_iterator::index.
|
inline |
Iterator comparisons.
Definition at line 1541 of file sparse_vector.h.
|
inline |
Iterator comparisons.
Definition at line 1553 of file sparse_vector.h.
References lar::sparse_vector< T >::const_iterator::cont, and lar::sparse_vector< T >::const_iterator::index.
|
inline |
Iterator comparisons.
Definition at line 1561 of file sparse_vector.h.
References lar::sparse_vector< T >::const_iterator::cont, and lar::sparse_vector< T >::const_iterator::index.
|
inline |
Random access.
Definition at line 1512 of file sparse_vector.h.
References operator*().
|
protected |
Reassigns the internal state according to the index.
Definition at line 2488 of file sparse_vector.h.
|
friend |
Definition at line 1465 of file sparse_vector.h.
|
protected |
pointer to the container
Definition at line 1601 of file sparse_vector.h.
Referenced by lar::sparse_vector< T >::make_void(), lar::sparse_vector< T >::const_iterator::operator!=(), lar::sparse_vector< T >::const_iterator::operator++(), lar::sparse_vector< T >::const_iterator::operator-(), lar::sparse_vector< T >::const_iterator::operator<(), lar::sparse_vector< T >::const_iterator::operator<=(), lar::sparse_vector< T >::const_iterator::operator>(), and lar::sparse_vector< T >::const_iterator::operator>=().
|
protected |
pointer to the current (or next) range
Definition at line 1603 of file sparse_vector.h.
|
protected |
pointer to the current value, as absolute index
Definition at line 1602 of file sparse_vector.h.
Referenced by lar::sparse_vector< T >::make_void(), lar::sparse_vector< T >::const_iterator::operator!=(), lar::sparse_vector< T >::const_iterator::operator+(), lar::sparse_vector< T >::const_iterator::operator++(), lar::sparse_vector< T >::const_iterator::operator-(), lar::sparse_vector< T >::const_iterator::operator<(), lar::sparse_vector< T >::const_iterator::operator<=(), lar::sparse_vector< T >::const_iterator::operator>(), and lar::sparse_vector< T >::const_iterator::operator>=().