All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Protected Attributes | Private Types | List of all members
lar::value_const_iterator< T > Class Template Reference

A constant iterator returning always the same value. More...

#include <sparse_vector.h>

Inheritance diagram for lar::value_const_iterator< T >:

Public Member Functions

 value_const_iterator ()
 Default constructor: use the default value. More...
 
 value_const_iterator (value_type new_value)
 Constructor: value that will be returned. More...
 
 value_const_iterator (value_type new_value, difference_type offset)
 Constructor: value to be returned and current iterator "position". More...
 
value_type operator* () const
 Returns a copy of the stored value. More...
 
value_type operator[] (difference_type) const
 Returns a copy of the stored value. More...
 
this_t & operator++ ()
 Increments the position of the iterator, returns the new position. More...
 
this_t operator++ (int)
 Increments the position of the iterator, returns the old position. More...
 
this_t & operator-- ()
 Decrements the position of the iterator, returns the new position. More...
 
this_t operator-- (int)
 Decrements the position of the iterator, returns the old position. More...
 
this_t & operator+= (difference_type ofs)
 Increments the position of the iterator by the specified steps. More...
 
this_t & operator-= (difference_type ofs)
 Decrements the position of the iterator by the specified steps. More...
 
this_t operator+ (difference_type ofs) const
 Returns an iterator pointing ahead of this one by the specified steps. More...
 
this_t operator- (difference_type ofs) const
 Returns an iterator pointing behind this one by the specified steps. More...
 
difference_type operator- (const this_t &iter) const
 Returns the distance between this iterator and the other. More...
 
bool operator== (const this_t &as) const
 Comparison operators: determined by the position pointed by the iterators. More...
 
bool operator!= (const this_t &as) const
 
bool operator< (const this_t &as) const
 
bool operator<= (const this_t &as) const
 
bool operator> (const this_t &as) const
 
bool operator>= (const this_t &as) const
 

Protected Attributes

difference_type index {0}
 (arbitrary) position pointed by the iterator More...
 
value_type value
 value to be returned when dereferencing More...
 

Private Types

typedef std::iterator
< std::random_access_iterator_tag,
T > 
base_t
 base type More...
 
typedef value_const_iterator< T > this_t
 alias for this type More...
 

Detailed Description

template<typename T>
class lar::value_const_iterator< T >

A constant iterator returning always the same value.

Template Parameters
Ttype of the value returned by dereferenciation

Definition at line 70 of file sparse_vector.h.

Member Typedef Documentation

template<typename T>
typedef std::iterator<std::random_access_iterator_tag, T> lar::value_const_iterator< T >::base_t
private

base type

Definition at line 73 of file sparse_vector.h.

template<typename T>
typedef value_const_iterator<T> lar::value_const_iterator< T >::this_t
private

alias for this type

Definition at line 74 of file sparse_vector.h.

Constructor & Destructor Documentation

template<typename T>
lar::value_const_iterator< T >::value_const_iterator ( )
inline

Default constructor: use the default value.

Definition at line 82 of file sparse_vector.h.

82 : value() {}
value_type value
value to be returned when dereferencing
template<typename T>
lar::value_const_iterator< T >::value_const_iterator ( value_type  new_value)
inline

Constructor: value that will be returned.

Definition at line 85 of file sparse_vector.h.

85 : value(new_value) {}
value_type value
value to be returned when dereferencing
template<typename T>
lar::value_const_iterator< T >::value_const_iterator ( value_type  new_value,
difference_type  offset 
)
inline

Constructor: value to be returned and current iterator "position".

Definition at line 88 of file sparse_vector.h.

88  :
89  index(offset), value(new_value) {}
BEGIN_PROLOG TPC Trig offset(g4 rise time) ProjectToHeight
Definition: CORSIKAGen.fcl:7
value_type value
value to be returned when dereferencing
difference_type index
(arbitrary) position pointed by the iterator

Member Function Documentation

template<typename T>
bool lar::value_const_iterator< T >::operator!= ( const this_t &  as) const
inline

Definition at line 131 of file sparse_vector.h.

131 { return index != as.index; }
difference_type index
(arbitrary) position pointed by the iterator
template<typename T>
value_type lar::value_const_iterator< T >::operator* ( ) const
inline

Returns a copy of the stored value.

Definition at line 92 of file sparse_vector.h.

92 { return value; }
value_type value
value to be returned when dereferencing
template<typename T>
this_t lar::value_const_iterator< T >::operator+ ( difference_type  ofs) const
inline

Returns an iterator pointing ahead of this one by the specified steps.

Definition at line 116 of file sparse_vector.h.

117  { return this_t(value, index + ofs); }
value_type value
value to be returned when dereferencing
difference_type index
(arbitrary) position pointed by the iterator
value_const_iterator< T > this_t
alias for this type
Definition: sparse_vector.h:74
template<typename T>
this_t& lar::value_const_iterator< T >::operator++ ( )
inline

Increments the position of the iterator, returns the new position.

Definition at line 98 of file sparse_vector.h.

98 { ++index; return *this; }
difference_type index
(arbitrary) position pointed by the iterator
template<typename T>
this_t lar::value_const_iterator< T >::operator++ ( int  )
inline

Increments the position of the iterator, returns the old position.

Definition at line 101 of file sparse_vector.h.

101 { this_t copy(*this); ++index; return copy; }
difference_type index
(arbitrary) position pointed by the iterator
value_const_iterator< T > this_t
alias for this type
Definition: sparse_vector.h:74
T copy(T const &v)
template<typename T>
this_t& lar::value_const_iterator< T >::operator+= ( difference_type  ofs)
inline

Increments the position of the iterator by the specified steps.

Definition at line 110 of file sparse_vector.h.

110 { index += ofs; return *this; }
difference_type index
(arbitrary) position pointed by the iterator
template<typename T>
this_t lar::value_const_iterator< T >::operator- ( difference_type  ofs) const
inline

Returns an iterator pointing behind this one by the specified steps.

Definition at line 120 of file sparse_vector.h.

121  { return this_t(value, index - ofs); }
value_type value
value to be returned when dereferencing
difference_type index
(arbitrary) position pointed by the iterator
value_const_iterator< T > this_t
alias for this type
Definition: sparse_vector.h:74
template<typename T>
difference_type lar::value_const_iterator< T >::operator- ( const this_t &  iter) const
inline

Returns the distance between this iterator and the other.

Returns
how many steps this iterator is ahead of the other

Definition at line 125 of file sparse_vector.h.

126  { return index - iter.index; }
difference_type index
(arbitrary) position pointed by the iterator
template<typename T>
this_t& lar::value_const_iterator< T >::operator-- ( )
inline

Decrements the position of the iterator, returns the new position.

Definition at line 104 of file sparse_vector.h.

104 { --index; return *this; }
difference_type index
(arbitrary) position pointed by the iterator
template<typename T>
this_t lar::value_const_iterator< T >::operator-- ( int  )
inline

Decrements the position of the iterator, returns the old position.

Definition at line 107 of file sparse_vector.h.

107 { this_t copy(*this); --index; return copy; }
difference_type index
(arbitrary) position pointed by the iterator
value_const_iterator< T > this_t
alias for this type
Definition: sparse_vector.h:74
T copy(T const &v)
template<typename T>
this_t& lar::value_const_iterator< T >::operator-= ( difference_type  ofs)
inline

Decrements the position of the iterator by the specified steps.

Definition at line 113 of file sparse_vector.h.

113 { index -= ofs; return *this; }
difference_type index
(arbitrary) position pointed by the iterator
template<typename T>
bool lar::value_const_iterator< T >::operator< ( const this_t &  as) const
inline

Definition at line 133 of file sparse_vector.h.

133 { return index < as.index; }
difference_type index
(arbitrary) position pointed by the iterator
template<typename T>
bool lar::value_const_iterator< T >::operator<= ( const this_t &  as) const
inline

Definition at line 134 of file sparse_vector.h.

134 { return index <= as.index; }
difference_type index
(arbitrary) position pointed by the iterator
template<typename T>
bool lar::value_const_iterator< T >::operator== ( const this_t &  as) const
inline

Comparison operators: determined by the position pointed by the iterators.

Definition at line 130 of file sparse_vector.h.

130 { return index == as.index; }
difference_type index
(arbitrary) position pointed by the iterator
template<typename T>
bool lar::value_const_iterator< T >::operator> ( const this_t &  as) const
inline

Definition at line 135 of file sparse_vector.h.

135 { return index > as.index; }
difference_type index
(arbitrary) position pointed by the iterator
template<typename T>
bool lar::value_const_iterator< T >::operator>= ( const this_t &  as) const
inline

Definition at line 136 of file sparse_vector.h.

136 { return index >= as.index; }
difference_type index
(arbitrary) position pointed by the iterator
template<typename T>
value_type lar::value_const_iterator< T >::operator[] ( difference_type  ) const
inline

Returns a copy of the stored value.

Definition at line 95 of file sparse_vector.h.

95 { return value; }
value_type value
value to be returned when dereferencing

Member Data Documentation

template<typename T>
difference_type lar::value_const_iterator< T >::index {0}
protected

(arbitrary) position pointed by the iterator

Definition at line 140 of file sparse_vector.h.

template<typename T>
value_type lar::value_const_iterator< T >::value
protected

value to be returned when dereferencing

Definition at line 141 of file sparse_vector.h.


The documentation for this class was generated from the following file: