Tawara  0.1.0
Classes | Public Member Functions | Protected Member Functions | Protected Attributes | Friends | List of all members
tawara::Segment::ClusterIteratorBase< ClusterType > Class Template Reference

#include <tawara/segment.h>

Inheritance diagram for tawara::Segment::ClusterIteratorBase< ClusterType >:
Inheritance graph
[legend]
Collaboration diagram for tawara::Segment::ClusterIteratorBase< ClusterType >:
Collaboration graph
[legend]

Public Member Functions

 ClusterIteratorBase (Segment const *segment, std::istream &stream)
 Constructor. More...
 
template<typename OtherType >
 ClusterIteratorBase (ClusterIteratorBase< OtherType > const &other)
 Templated base constructor. More...
 

Protected Member Functions

void open_cluster ()
 
void increment ()
 Increment the iterator to the next cluster. More...
 
template<typename OtherType >
bool equal (ClusterIteratorBase< OtherType > const &other) const
 Test for equality with another iterator. More...
 
ClusterType & dereference () const
 Dereference the iterator to get a pointer to the cluster. More...
 

Protected Attributes

Segment const * segment_
 
std::istream & stream_
 
boost::shared_ptr< ClusterType > cluster_
 

Friends

class boost::iterator_core_access
 
class Segment
 

Detailed Description

template<typename ClusterType>
class tawara::Segment::ClusterIteratorBase< ClusterType >

Definition at line 100 of file segment.h.

Constructor & Destructor Documentation

template<typename ClusterType>
tawara::Segment::ClusterIteratorBase< ClusterType >::ClusterIteratorBase ( Segment const *  segment,
std::istream &  stream 
)
inline

Constructor.

Parameters
[in]segmentThe segment containing the clusters.
[in]streamThe stream to read clusters from.

Definition at line 114 of file segment.h.

template<typename ClusterType>
template<typename OtherType >
tawara::Segment::ClusterIteratorBase< ClusterType >::ClusterIteratorBase ( ClusterIteratorBase< OtherType > const &  other)
inline

Templated base constructor.

Used to provide interoperability with compatible iterators.

Definition at line 143 of file segment.h.

Member Function Documentation

template<typename ClusterType>
ClusterType& tawara::Segment::ClusterIteratorBase< ClusterType >::dereference ( ) const
inlineprotected

Dereference the iterator to get a pointer to the cluster.

Definition at line 248 of file segment.h.

template<typename ClusterType>
template<typename OtherType >
bool tawara::Segment::ClusterIteratorBase< ClusterType >::equal ( ClusterIteratorBase< OtherType > const &  other) const
inlineprotected

Test for equality with another iterator.

Parameters
[in]otherThe other iterator.

Definition at line 220 of file segment.h.

template<typename ClusterType>
void tawara::Segment::ClusterIteratorBase< ClusterType >::increment ( )
inlineprotected

Increment the iterator to the next cluster.

Definition at line 179 of file segment.h.

template<typename ClusterType>
void tawara::Segment::ClusterIteratorBase< ClusterType >::open_cluster ( )
inlineprotected

Definition at line 161 of file segment.h.

Friends And Related Function Documentation

template<typename ClusterType>
friend class boost::iterator_core_access
friend

Definition at line 152 of file segment.h.

template<typename ClusterType>
friend class Segment
friend

Definition at line 155 of file segment.h.

Member Data Documentation

template<typename ClusterType>
boost::shared_ptr<ClusterType> tawara::Segment::ClusterIteratorBase< ClusterType >::cluster_
protected

Definition at line 159 of file segment.h.

template<typename ClusterType>
Segment const* tawara::Segment::ClusterIteratorBase< ClusterType >::segment_
protected

Definition at line 157 of file segment.h.

template<typename ClusterType>
std::istream& tawara::Segment::ClusterIteratorBase< ClusterType >::stream_
protected

Definition at line 158 of file segment.h.


The documentation for this class was generated from the following file: