CMS 3D CMS Logo

Public Types | Public Member Functions | Private Attributes

edm::reftobase::BaseVectorHolder< T >::const_iterator Struct Reference

#include <BaseVectorHolder.h>

List of all members.

Public Types

typedef std::ptrdiff_t difference_type
typedef std::auto_ptr< value_typepointer
typedef base_ref_type value_type

Public Member Functions

 const_iterator ()
 const_iterator (const_iterator_imp *it)
 const_iterator (const const_iterator &it)
bool isInvalid () const
bool isValid () const
bool operator!= (const const_iterator &ci) const
value_type operator* () const
const_iterator operator+ (difference_type n) const
const_iteratoroperator++ ()
const_iterator operator++ (int)
const_iteratoroperator+= (difference_type d)
difference_type operator- (const const_iterator &o) const
const_iterator operator- (difference_type n) const
const_iteratoroperator-- ()
const_iterator operator-- (int)
const_iteratoroperator-= (difference_type d)
pointer operator-> () const
bool operator< (const const_iterator &o) const
const_iteratoroperator= (const const_iterator &it)
bool operator== (const const_iterator &ci) const
void throwInvalidReference (bool isInvalid, const char *why) const
 ~const_iterator ()

Private Attributes

const_iterator_impi

Detailed Description

template<typename T>
struct edm::reftobase::BaseVectorHolder< T >::const_iterator

Definition at line 52 of file BaseVectorHolder.h.


Member Typedef Documentation

template<typename T>
typedef std::ptrdiff_t edm::reftobase::BaseVectorHolder< T >::const_iterator::difference_type

Definition at line 55 of file BaseVectorHolder.h.

template<typename T>
typedef std::auto_ptr<value_type> edm::reftobase::BaseVectorHolder< T >::const_iterator::pointer

Definition at line 54 of file BaseVectorHolder.h.

Definition at line 53 of file BaseVectorHolder.h.


Constructor & Destructor Documentation

template<typename T>
edm::reftobase::BaseVectorHolder< T >::const_iterator::const_iterator ( ) [inline]
template<typename T>
edm::reftobase::BaseVectorHolder< T >::const_iterator::const_iterator ( const_iterator_imp it) [inline]

Definition at line 58 of file BaseVectorHolder.h.

: i( it ) { }
template<typename T>
edm::reftobase::BaseVectorHolder< T >::const_iterator::const_iterator ( const const_iterator it) [inline]

Definition at line 59 of file BaseVectorHolder.h.

: i( it.isValid() ? it.i->clone() : 0 ) { }
template<typename T>
edm::reftobase::BaseVectorHolder< T >::const_iterator::~const_iterator ( ) [inline]

Definition at line 60 of file BaseVectorHolder.h.

References edm::reftobase::BaseVectorHolder< T >::const_iterator::i.

{ delete i; }

Member Function Documentation

template<typename T>
bool edm::reftobase::BaseVectorHolder< T >::const_iterator::isInvalid ( ) const [inline]
template<typename T>
bool edm::reftobase::BaseVectorHolder< T >::const_iterator::isValid ( void  ) const [inline]

Definition at line 137 of file BaseVectorHolder.h.

References edm::reftobase::BaseVectorHolder< T >::const_iterator::i.

{ return i != 0; }
template<typename T>
bool edm::reftobase::BaseVectorHolder< T >::const_iterator::operator!= ( const const_iterator ci) const [inline]

Definition at line 115 of file BaseVectorHolder.h.

References edm::reftobase::BaseVectorHolder< T >::const_iterator_imp::equal_to(), edm::reftobase::BaseVectorHolder< T >::const_iterator::i, and edm::reftobase::BaseVectorHolder< T >::const_iterator::isInvalid().

                                                          { 
          if ( isInvalid() && ci.isInvalid() ) return false;
          if ( isInvalid() || ci.isInvalid() ) return true;
          return ! i->equal_to( ci.i ); 
        }
template<typename T>
value_type edm::reftobase::BaseVectorHolder< T >::const_iterator::operator* ( ) const [inline]
template<typename T>
const_iterator edm::reftobase::BaseVectorHolder< T >::const_iterator::operator+ ( difference_type  n) const [inline]
template<typename T>
const_iterator& edm::reftobase::BaseVectorHolder< T >::const_iterator::operator++ ( ) [inline]
template<typename T>
const_iterator edm::reftobase::BaseVectorHolder< T >::const_iterator::operator++ ( int  ) [inline]
template<typename T>
const_iterator& edm::reftobase::BaseVectorHolder< T >::const_iterator::operator+= ( difference_type  d) [inline]
template<typename T>
const_iterator edm::reftobase::BaseVectorHolder< T >::const_iterator::operator- ( difference_type  n) const [inline]
template<typename T>
difference_type edm::reftobase::BaseVectorHolder< T >::const_iterator::operator- ( const const_iterator o) const [inline]
template<typename T>
const_iterator& edm::reftobase::BaseVectorHolder< T >::const_iterator::operator-- ( ) [inline]
template<typename T>
const_iterator edm::reftobase::BaseVectorHolder< T >::const_iterator::operator-- ( int  ) [inline]
template<typename T>
const_iterator& edm::reftobase::BaseVectorHolder< T >::const_iterator::operator-= ( difference_type  d) [inline]
template<typename T>
pointer edm::reftobase::BaseVectorHolder< T >::const_iterator::operator-> ( ) const [inline]

Definition at line 124 of file BaseVectorHolder.h.

                                   { 
          return pointer( new value_type( operator*() ) ); 
        }
template<typename T>
bool edm::reftobase::BaseVectorHolder< T >::const_iterator::operator< ( const const_iterator o) const [inline]
template<typename T>
const_iterator& edm::reftobase::BaseVectorHolder< T >::const_iterator::operator= ( const const_iterator it) [inline]
template<typename T>
bool edm::reftobase::BaseVectorHolder< T >::const_iterator::operator== ( const const_iterator ci) const [inline]

Definition at line 110 of file BaseVectorHolder.h.

References edm::reftobase::BaseVectorHolder< T >::const_iterator_imp::equal_to(), edm::reftobase::BaseVectorHolder< T >::const_iterator::i, and edm::reftobase::BaseVectorHolder< T >::const_iterator::isInvalid().

                                                          { 
          if ( isInvalid() && ci.isInvalid() ) return true;
          if ( isInvalid() || ci.isInvalid() ) return false;
          return i->equal_to( ci.i ); 
        }
template<typename T>
void edm::reftobase::BaseVectorHolder< T >::const_iterator::throwInvalidReference ( bool  isInvalid,
const char *  why 
) const [inline]

Member Data Documentation