Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

EvtStreamInputIterator< Point > Class Template Reference

#include <EvtStreamInputIterator.hh>

List of all members.

Public Types

typedef ptrdiff_t difference_type
typedef input_iterator_tag iterator_category
typedef const Point * pointer
typedef const Point & reference
typedef Point value_type

Public Member Functions

 EvtStreamInputIterator (EvtStreamAdapter< Point > &counter)
 EvtStreamInputIterator (const EvtStreamInputIterator &other)
 EvtStreamInputIterator ()
reference operator * () const
EvtStreamInputIterator operator++ (int)
EvtStreamInputIteratoroperator++ ()
bool operator== (const EvtStreamInputIterator &other) const
 ~EvtStreamInputIterator ()

Protected Member Functions

void _read ()
bool pastEnd () const

Protected Attributes

EvtStreamAdapter< Point > * _counter
value_type _currentValue

template<class Point>
class EvtStreamInputIterator< Point >


Member Typedef Documentation

template<class Point>
typedef ptrdiff_t EvtStreamInputIterator< Point >::difference_type
 

template<class Point>
typedef input_iterator_tag EvtStreamInputIterator< Point >::iterator_category
 

template<class Point>
typedef const Point* EvtStreamInputIterator< Point >::pointer
 

template<class Point>
typedef const Point& EvtStreamInputIterator< Point >::reference
 

template<class Point>
typedef Point EvtStreamInputIterator< Point >::value_type
 


Constructor & Destructor Documentation

template<class Point>
EvtStreamInputIterator< Point >::EvtStreamInputIterator  )  [inline]
 

00031     : _counter(0)
00032   {}

template<class Point>
EvtStreamInputIterator< Point >::EvtStreamInputIterator const EvtStreamInputIterator< Point > &  other  )  [inline]
 

00035     : _counter(other._counter ? other._counter->clone() : 0),
00036       _currentValue(other._currentValue)
00037   {} 

template<class Point>
EvtStreamInputIterator< Point >::EvtStreamInputIterator EvtStreamAdapter< Point > &  counter  )  [inline]
 

00040     : _counter(counter.clone())
00041   {
00042     _currentValue = _counter->currentValue(); 
00043   }

template<class Point>
EvtStreamInputIterator< Point >::~EvtStreamInputIterator  )  [inline]
 

00046   {
00047     if(_counter) delete _counter;
00048   }


Member Function Documentation

template<class Point>
void EvtStreamInputIterator< Point >::_read  )  [inline, protected]
 

00088                {
00089     
00090     _counter->advance();
00091     _currentValue = _counter->currentValue();
00092   }

template<class Point>
reference EvtStreamInputIterator< Point >::operator * void   )  const [inline]
 

00051   {
00052     return _currentValue; 
00053   }

template<class Point>
EvtStreamInputIterator EvtStreamInputIterator< Point >::operator++ int   )  [inline]
 

00062   {
00063     EvtStreamInputIterator tmp = *this;
00064     _read();
00065     return tmp;
00066   }

template<class Point>
EvtStreamInputIterator& EvtStreamInputIterator< Point >::operator++ void   )  [inline]
 

00056   {
00057     _read();
00058     return *this;
00059   }

template<class Point>
bool EvtStreamInputIterator< Point >::operator== const EvtStreamInputIterator< Point > &  other  )  const [inline]
 

00069   {
00070     // Equality is only defined for two past the end iterators
00071     return (pastEnd() && other.pastEnd());
00072   }

template<class Point>
bool EvtStreamInputIterator< Point >::pastEnd  )  const [inline, protected]
 

00080   {
00081     bool ret = true;
00082     if(_counter) ret = _counter->pastEnd();
00083     return ret;
00084   }


Member Data Documentation

template<class Point>
EvtStreamAdapter<Point>* EvtStreamInputIterator< Point >::_counter [protected]
 

template<class Point>
value_type EvtStreamInputIterator< Point >::_currentValue [protected]
 


The documentation for this class was generated from the following file:
Generated on Wed Feb 2 16:11:06 2011 for BOSS6.5.5 by  doxygen 1.3.9.1