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 Member Functions | Private Attributes
edm::reftobase::VectorHolder< T, REFVECTOR >::const_iterator_imp_specific Struct Reference

#include <VectorHolder.h>

Inheritance diagram for edm::reftobase::VectorHolder< T, REFVECTOR >::const_iterator_imp_specific:
edm::reftobase::BaseVectorHolder< T >::const_iterator_imp

Public Types

typedef ptrdiff_t difference_type
 
- Public Types inherited from edm::reftobase::BaseVectorHolder< T >::const_iterator_imp
typedef ptrdiff_t difference_type
 

Public Member Functions

void assign (const const_iterator_imp *o)
 
const_iterator_imp_specificclone () const
 
 const_iterator_imp_specific ()
 
 const_iterator_imp_specific (const typename REFV::const_iterator &it)
 
void decrease ()
 
void decrease (difference_type d)
 
base_ref_type deref () const
 
difference_type difference (const const_iterator_imp *o) const
 
bool equal_to (const const_iterator_imp *o) const
 
void increase ()
 
void increase (difference_type d)
 
bool less_than (const const_iterator_imp *o) const
 
 ~const_iterator_imp_specific ()
 
- Public Member Functions inherited from edm::reftobase::BaseVectorHolder< T >::const_iterator_imp
 const_iterator_imp ()
 
virtual ~const_iterator_imp ()
 

Private Member Functions

const
ref_vector_type::const_iterator & 
dc (const const_iterator_imp *o) const
 

Private Attributes

ref_vector_type::const_iterator i
 

Detailed Description

template<class T, class REFVECTOR>
struct edm::reftobase::VectorHolder< T, REFVECTOR >::const_iterator_imp_specific

Definition at line 96 of file VectorHolder.h.

Member Typedef Documentation

template<class T , class REFVECTOR >
typedef ptrdiff_t edm::reftobase::VectorHolder< T, REFVECTOR >::const_iterator_imp_specific::difference_type

Definition at line 97 of file VectorHolder.h.

Constructor & Destructor Documentation

template<class T , class REFVECTOR >
edm::reftobase::VectorHolder< T, REFVECTOR >::const_iterator_imp_specific::const_iterator_imp_specific ( )
inline

Definition at line 98 of file VectorHolder.h.

98 { }
template<class T , class REFVECTOR >
edm::reftobase::VectorHolder< T, REFVECTOR >::const_iterator_imp_specific::const_iterator_imp_specific ( const typename REFV::const_iterator &  it)
inlineexplicit

Definition at line 99 of file VectorHolder.h.

99 : i ( it ) { }
template<class T , class REFVECTOR >
edm::reftobase::VectorHolder< T, REFVECTOR >::const_iterator_imp_specific::~const_iterator_imp_specific ( )
inline

Definition at line 100 of file VectorHolder.h.

100 { }

Member Function Documentation

template<class T , class REFVECTOR >
void edm::reftobase::VectorHolder< T, REFVECTOR >::const_iterator_imp_specific::assign ( const const_iterator_imp o)
inlinevirtual

Implements edm::reftobase::BaseVectorHolder< T >::const_iterator_imp.

Definition at line 108 of file VectorHolder.h.

References i.

108 { i = dc( o ); }
const ref_vector_type::const_iterator & dc(const const_iterator_imp *o) const
Definition: VectorHolder.h:112
template<class T , class REFVECTOR >
const_iterator_imp_specific* edm::reftobase::VectorHolder< T, REFVECTOR >::const_iterator_imp_specific::clone ( void  ) const
inlinevirtual
template<class T , class REFVECTOR >
const ref_vector_type::const_iterator& edm::reftobase::VectorHolder< T, REFVECTOR >::const_iterator_imp_specific::dc ( const const_iterator_imp o) const
inlineprivate

Definition at line 112 of file VectorHolder.h.

References edm::reftobase::VectorHolder< T, REFVECTOR >::const_iterator_imp_specific::i, edm::errors::InvalidReference, python.connectstrParser::o, and edm::Exception::throwThis().

112  {
113  if ( o == 0 )
115  "In RefToBaseVector<T> trying to dereference a null pointer");
116  const const_iterator_imp_specific * oo = dynamic_cast<const const_iterator_imp_specific *>( o );
117  if ( oo == 0 )
119  "In RefToBaseVector<T> trying to cast iterator to wrong type ");
120  return oo->i;
121  }
static void throwThis(Code category, char const *message0="", char const *message1="", char const *message2="", char const *message3="", char const *message4="")
template<class T , class REFVECTOR >
void edm::reftobase::VectorHolder< T, REFVECTOR >::const_iterator_imp_specific::decrease ( )
inlinevirtual

Implements edm::reftobase::BaseVectorHolder< T >::const_iterator_imp.

Definition at line 103 of file VectorHolder.h.

References i.

103 { --i; }
template<class T , class REFVECTOR >
void edm::reftobase::VectorHolder< T, REFVECTOR >::const_iterator_imp_specific::decrease ( difference_type  d)
inlinevirtual

Implements edm::reftobase::BaseVectorHolder< T >::const_iterator_imp.

Definition at line 105 of file VectorHolder.h.

References i.

105 { i -= d; }
template<class T , class REFVECTOR >
base_ref_type edm::reftobase::VectorHolder< T, REFVECTOR >::const_iterator_imp_specific::deref ( ) const
inlinevirtual

Implements edm::reftobase::BaseVectorHolder< T >::const_iterator_imp.

Definition at line 109 of file VectorHolder.h.

References i.

109 { return base_ref_type( * i ); }
base_type::base_ref_type base_ref_type
Definition: VectorHolder.h:20
template<class T , class REFVECTOR >
difference_type edm::reftobase::VectorHolder< T, REFVECTOR >::const_iterator_imp_specific::difference ( const const_iterator_imp o) const
inlinevirtual

Implements edm::reftobase::BaseVectorHolder< T >::const_iterator_imp.

Definition at line 110 of file VectorHolder.h.

References i.

110 { return i - dc( o ); }
const ref_vector_type::const_iterator & dc(const const_iterator_imp *o) const
Definition: VectorHolder.h:112
template<class T , class REFVECTOR >
bool edm::reftobase::VectorHolder< T, REFVECTOR >::const_iterator_imp_specific::equal_to ( const const_iterator_imp o) const
inlinevirtual

Implements edm::reftobase::BaseVectorHolder< T >::const_iterator_imp.

Definition at line 106 of file VectorHolder.h.

References i.

106 { return i == dc( o ); }
const ref_vector_type::const_iterator & dc(const const_iterator_imp *o) const
Definition: VectorHolder.h:112
template<class T , class REFVECTOR >
void edm::reftobase::VectorHolder< T, REFVECTOR >::const_iterator_imp_specific::increase ( )
inlinevirtual

Implements edm::reftobase::BaseVectorHolder< T >::const_iterator_imp.

Definition at line 102 of file VectorHolder.h.

References i.

102 { ++i; }
template<class T , class REFVECTOR >
void edm::reftobase::VectorHolder< T, REFVECTOR >::const_iterator_imp_specific::increase ( difference_type  d)
inlinevirtual

Implements edm::reftobase::BaseVectorHolder< T >::const_iterator_imp.

Definition at line 104 of file VectorHolder.h.

References i.

104 { i += d; }
template<class T , class REFVECTOR >
bool edm::reftobase::VectorHolder< T, REFVECTOR >::const_iterator_imp_specific::less_than ( const const_iterator_imp o) const
inlinevirtual

Implements edm::reftobase::BaseVectorHolder< T >::const_iterator_imp.

Definition at line 107 of file VectorHolder.h.

References i.

107 { return i < dc( o ); }
const ref_vector_type::const_iterator & dc(const const_iterator_imp *o) const
Definition: VectorHolder.h:112

Member Data Documentation

template<class T , class REFVECTOR >
ref_vector_type::const_iterator edm::reftobase::VectorHolder< T, REFVECTOR >::const_iterator_imp_specific::i
private