CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Types | Public Member Functions | Private Attributes | Friends
edm::OwnVector< T, P >::iterator Class Reference

#include <OwnVector.h>

Public Types

typedef ptrdiff_t difference_type
 
typedef
base::iterator::iterator_category 
iterator_category
 
typedef Tpointer
 
typedef Treference
 
typedef T value_type
 

Public Member Functions

 iterator (typename base::iterator const &it)
 
 iterator ()
 
bool operator!= (iterator const &ci) const
 
Toperator* () const
 
iterator operator+ (difference_type n) const
 
iteratoroperator++ ()
 
iterator operator++ (int)
 
iteratoroperator+= (difference_type d)
 
difference_type operator- (iterator const &o) const
 
iterator operator- (difference_type n) const
 
iteratoroperator-- ()
 
iterator operator-- (int)
 
iteratoroperator-= (difference_type d)
 
Toperator-> () const
 
bool operator< (iterator const &o) const
 
bool operator== (iterator const &ci) const
 
reference operator[] (difference_type d) const
 

Private Attributes

base::iterator i
 

Friends

class const_iterator
 
class OwnVector< T, P >
 

Detailed Description

template<typename T, typename P = ClonePolicy<T>>
class edm::OwnVector< T, P >::iterator

Definition at line 71 of file OwnVector.h.

Member Typedef Documentation

template<typename T, typename P = ClonePolicy<T>>
typedef ptrdiff_t edm::OwnVector< T, P >::iterator::difference_type

Definition at line 76 of file OwnVector.h.

template<typename T, typename P = ClonePolicy<T>>
typedef base::iterator::iterator_category edm::OwnVector< T, P >::iterator::iterator_category

Definition at line 77 of file OwnVector.h.

template<typename T, typename P = ClonePolicy<T>>
typedef T* edm::OwnVector< T, P >::iterator::pointer

Definition at line 74 of file OwnVector.h.

template<typename T, typename P = ClonePolicy<T>>
typedef T& edm::OwnVector< T, P >::iterator::reference

Definition at line 75 of file OwnVector.h.

template<typename T, typename P = ClonePolicy<T>>
typedef T edm::OwnVector< T, P >::iterator::value_type

Definition at line 73 of file OwnVector.h.

Constructor & Destructor Documentation

template<typename T, typename P = ClonePolicy<T>>
edm::OwnVector< T, P >::iterator::iterator ( typename base::iterator const &  it)
inline

Definition at line 78 of file OwnVector.h.

78 : i(it) { }
base::iterator i
Definition: OwnVector.h:98
template<typename T, typename P = ClonePolicy<T>>
edm::OwnVector< T, P >::iterator::iterator ( )
inline

Member Function Documentation

template<typename T, typename P = ClonePolicy<T>>
bool edm::OwnVector< T, P >::iterator::operator!= ( iterator const &  ci) const
inline

Definition at line 89 of file OwnVector.h.

References edm::OwnVector< T, P >::iterator::i.

89 { return i != ci.i; }
base::iterator i
Definition: OwnVector.h:98
template<typename T, typename P = ClonePolicy<T>>
T& edm::OwnVector< T, P >::iterator::operator* ( ) const
inline

Definition at line 90 of file OwnVector.h.

References edm::OwnVector< T, P >::iterator::i.

Referenced by edm::OwnVector< T, P >::iterator::operator->().

90 { return **i; }
base::iterator i
Definition: OwnVector.h:98
template<typename T, typename P = ClonePolicy<T>>
iterator edm::OwnVector< T, P >::iterator::operator+ ( difference_type  n) const
inline
template<typename T, typename P = ClonePolicy<T>>
iterator& edm::OwnVector< T, P >::iterator::operator++ ( )
inline

Definition at line 80 of file OwnVector.h.

References edm::OwnVector< T, P >::iterator::i.

80 { ++i; return *this; }
base::iterator i
Definition: OwnVector.h:98
template<typename T, typename P = ClonePolicy<T>>
iterator edm::OwnVector< T, P >::iterator::operator++ ( int  )
inline

Definition at line 81 of file OwnVector.h.

References edm::OwnVector< T, P >::iterator::i.

81 { iterator ci = *this; ++i; return ci; }
base::iterator i
Definition: OwnVector.h:98
template<typename T, typename P = ClonePolicy<T>>
iterator& edm::OwnVector< T, P >::iterator::operator+= ( difference_type  d)
inline

Definition at line 94 of file OwnVector.h.

References ztail::d, and edm::OwnVector< T, P >::iterator::i.

94 { i += d; return *this; }
base::iterator i
Definition: OwnVector.h:98
tuple d
Definition: ztail.py:151
template<typename T, typename P = ClonePolicy<T>>
difference_type edm::OwnVector< T, P >::iterator::operator- ( iterator const &  o) const
inline

Definition at line 84 of file OwnVector.h.

References edm::OwnVector< T, P >::iterator::i.

84 { return i - o.i; }
base::iterator i
Definition: OwnVector.h:98
template<typename T, typename P = ClonePolicy<T>>
iterator edm::OwnVector< T, P >::iterator::operator- ( difference_type  n) const
inline
template<typename T, typename P = ClonePolicy<T>>
iterator& edm::OwnVector< T, P >::iterator::operator-- ( )
inline

Definition at line 82 of file OwnVector.h.

References edm::OwnVector< T, P >::iterator::i.

82 { --i; return *this; }
base::iterator i
Definition: OwnVector.h:98
template<typename T, typename P = ClonePolicy<T>>
iterator edm::OwnVector< T, P >::iterator::operator-- ( int  )
inline

Definition at line 83 of file OwnVector.h.

References edm::OwnVector< T, P >::iterator::i.

83 { iterator ci = *this; --i; return ci; }
base::iterator i
Definition: OwnVector.h:98
template<typename T, typename P = ClonePolicy<T>>
iterator& edm::OwnVector< T, P >::iterator::operator-= ( difference_type  d)
inline

Definition at line 95 of file OwnVector.h.

References ztail::d, and edm::OwnVector< T, P >::iterator::i.

95 { i -= d; return *this; }
base::iterator i
Definition: OwnVector.h:98
tuple d
Definition: ztail.py:151
template<typename T, typename P = ClonePolicy<T>>
T* edm::OwnVector< T, P >::iterator::operator-> ( ) const
inline

Definition at line 93 of file OwnVector.h.

References edm::OwnVector< T, P >::iterator::operator*().

93 { return & (operator*()); }
T & operator*() const
Definition: OwnVector.h:90
template<typename T, typename P = ClonePolicy<T>>
bool edm::OwnVector< T, P >::iterator::operator< ( iterator const &  o) const
inline

Definition at line 87 of file OwnVector.h.

References edm::OwnVector< T, P >::iterator::i.

87 { return i < o.i; }
base::iterator i
Definition: OwnVector.h:98
template<typename T, typename P = ClonePolicy<T>>
bool edm::OwnVector< T, P >::iterator::operator== ( iterator const &  ci) const
inline

Definition at line 88 of file OwnVector.h.

References edm::OwnVector< T, P >::iterator::i.

88 { return i == ci.i; }
base::iterator i
Definition: OwnVector.h:98
template<typename T, typename P = ClonePolicy<T>>
reference edm::OwnVector< T, P >::iterator::operator[] ( difference_type  d) const
inline

Definition at line 96 of file OwnVector.h.

References edm::OwnVector< T, P >::iterator::i, and edm::OwnVector< T, P >::iterator::iterator().

96 { return *iterator(i+d); } // for boost::iterator_range []
base::iterator i
Definition: OwnVector.h:98
tuple d
Definition: ztail.py:151

Friends And Related Function Documentation

template<typename T, typename P = ClonePolicy<T>>
friend class const_iterator
friend

Definition at line 99 of file OwnVector.h.

template<typename T, typename P = ClonePolicy<T>>
friend class OwnVector< T, P >
friend

Definition at line 100 of file OwnVector.h.

Member Data Documentation

template<typename T, typename P = ClonePolicy<T>>
base::iterator edm::OwnVector< T, P >::iterator::i
private