rpa::range_lambda< It > Class Template Reference

#include <common.h>

Inheritance diagram for rpa::range_lambda< It >:

rpa::range_jump< It > rpa::range_size< It > rpa::range_void< It > List of all members.

Public Types

typedef It iterator
typedef std::iterator_traits<
iterator >::value_type 
value_type

Public Member Functions

 range_lambda (const range_lambda &aRL)
 range_lambda (iterator aBeg, iterator aEnd)
 This class is used as a base for more specific input ranges.
iterator begin (void) const
 Used only for sequential execution.
const iterator end (void) const
 Sequential execution, and input range.
bool empty (void) const
 Compatible with TBB interface.
size_t size_safe (void) const
 For debugging only. Returns an 'absurd' value if the iterators are 'output_type'.

Protected Attributes

It _RngBeg
const It _RngEnd

Private Member Functions

 range_lambda ()
range_lambdaoperator= (const range_lambda &)

Detailed Description

template<class It>
class rpa::range_lambda< It >

Used two contain two iterators of the same type, only for the sequential execution. As an input range only, this is why it does not have 'begout()'.


Member Typedef Documentation

template<class It>
typedef It rpa::range_lambda< It >::iterator

template<class It>
typedef std::iterator_traits< iterator >::value_type rpa::range_lambda< It >::value_type


Constructor & Destructor Documentation

template<class It>
rpa::range_lambda< It >::range_lambda (  )  [private]

template<class It>
rpa::range_lambda< It >::range_lambda ( const range_lambda< It > &  aRL  )  [inline]

This copy ctor is exactly like the default copy constructor. The problem is that when optimizing and if 'It' is a pointer, it seems the pointers were not copied ???

template<class It>
rpa::range_lambda< It >::range_lambda ( iterator  aBeg,
iterator  aEnd 
) [inline]

This class is used as a base for more specific input ranges.


Member Function Documentation

template<class It>
iterator rpa::range_lambda< It >::begin ( void   )  const [inline]

Used only for sequential execution.

template<class It>
bool rpa::range_lambda< It >::empty ( void   )  const [inline]

Compatible with TBB interface.

template<class It>
const iterator rpa::range_lambda< It >::end ( void   )  const [inline]

Sequential execution, and input range.

template<class It>
range_lambda& rpa::range_lambda< It >::operator= ( const range_lambda< It > &   )  [private]

template<class It>
size_t rpa::range_lambda< It >::size_safe ( void   )  const [inline]

For debugging only. Returns an 'absurd' value if the iterators are 'output_type'.


Member Data Documentation

template<class It>
It rpa::range_lambda< It >::_RngBeg [protected]

This iterator is not-const because it is written to by some derived classes. Not very elegant programming style, but rarely used.

template<class It>
const It rpa::range_lambda< It >::_RngEnd [protected]


The documentation for this class was generated from the following file:
Generated on Tue Sep 25 10:20:36 2007 for rpa by  doxygen 1.4.7