CMS 3D CMS Logo

List of all members | Public Types | Public Member Functions | Private Attributes
DDBase< N, C >::iterator< D > Class Template Reference

#include <DDBase.h>

Public Types

using value_type = D
 C is, for example, a DDLogicalPart or a DDMaterial or a DDSolid ... More...
 

Public Member Functions

void end () const
 
 iterator ()
 
 iterator (const typename DDI::Store< N, C >::iterator it)
 
bool operator!= (const iterator &i) const
 
value_typeoperator* () const
 
void operator++ ()
 
value_typeoperator-> () const
 
bool operator< (const iterator &i) const
 
bool operator== (const iterator &i) const
 
bool operator> (const iterator &i) const
 

Private Attributes

d_
 
DDI::Store< N, C >::iterator it_
 

Detailed Description

template<class N, class C>
template<class D>
class DDBase< N, C >::iterator< D >

Definition at line 13 of file DDBase.h.

Member Typedef Documentation

◆ value_type

template<class N, class C>
template<class D >
using DDBase< N, C >::iterator< D >::value_type = D

C is, for example, a DDLogicalPart or a DDMaterial or a DDSolid ...

Definition at line 16 of file DDBase.h.

Constructor & Destructor Documentation

◆ iterator() [1/2]

template<class N, class C>
template<class D >
DDBase< N, C >::iterator< D >::iterator ( const typename DDI::Store< N, C >::iterator< D >  it)
inlineexplicit

Definition at line 18 of file DDBase.h.

18 : it_(it) {}

◆ iterator() [2/2]

template<class N, class C>
template<class D >
DDBase< N, C >::iterator< D >::iterator ( )
inline

Definition at line 20 of file DDBase.h.

20 : it_(StoreT::instance().begin()) {}

Member Function Documentation

◆ end()

template<class N, class C>
template<class D >
void DDBase< N, C >::iterator< D >::end ( void  ) const
inline

◆ operator!=()

template<class N, class C>
template<class D >
bool DDBase< N, C >::iterator< D >::operator!= ( const iterator< D > &  i) const
inline

Definition at line 34 of file DDBase.h.

34 { return i.it_ != it_; }

References mps_fire::i, and DDBase< N, C >::iterator< D >::it_.

◆ operator*()

template<class N, class C>
template<class D >
value_type& DDBase< N, C >::iterator< D >::operator* ( void  ) const
inline

Definition at line 22 of file DDBase.h.

22  {
23  d_.prep_ = it_->second;
24  return d_;
25  }

References DDBase< N, C >::iterator< D >::d_, and DDBase< N, C >::iterator< D >::it_.

◆ operator++()

template<class N, class C>
template<class D >
void DDBase< N, C >::iterator< D >::operator++ ( void  )
inline

Definition at line 40 of file DDBase.h.

40 { ++it_; }

References DDBase< N, C >::iterator< D >::it_.

◆ operator->()

template<class N, class C>
template<class D >
value_type* DDBase< N, C >::iterator< D >::operator-> ( ) const
inline

Definition at line 27 of file DDBase.h.

27  {
28  d_.prep_ = it_->second;
29  return &d_;
30  }

References DDBase< N, C >::iterator< D >::d_, and DDBase< N, C >::iterator< D >::it_.

◆ operator<()

template<class N, class C>
template<class D >
bool DDBase< N, C >::iterator< D >::operator< ( const iterator< D > &  i) const
inline

Definition at line 36 of file DDBase.h.

36 { return it_ < i.it_; }

References mps_fire::i, and DDBase< N, C >::iterator< D >::it_.

◆ operator==()

template<class N, class C>
template<class D >
bool DDBase< N, C >::iterator< D >::operator== ( const iterator< D > &  i) const
inline

Definition at line 32 of file DDBase.h.

32 { return i.it_ == it_; }

References mps_fire::i, and DDBase< N, C >::iterator< D >::it_.

◆ operator>()

template<class N, class C>
template<class D >
bool DDBase< N, C >::iterator< D >::operator> ( const iterator< D > &  i) const
inline

Definition at line 38 of file DDBase.h.

38 { return it_ > i.it_; }

References mps_fire::i, and DDBase< N, C >::iterator< D >::it_.

Member Data Documentation

◆ d_

template<class N, class C>
template<class D >
D DDBase< N, C >::iterator< D >::d_
mutableprivate

◆ it_

template<class N, class C>
template<class D >
DDI::Store<N, C>::iterator DDBase< N, C >::iterator< D >::it_
mutableprivate
mps_fire.i
i
Definition: mps_fire.py:355
DDBase::iterator::d_
D d_
Definition: DDBase.h:46
DDI::Singleton::instance
static value_type & instance()
DDBase::iterator::it_
DDI::Store< N, C >::iterator it_
Definition: DDBase.h:45
DDBase::begin
static auto begin()
Definition: DDBase.h:53