#include <pipeline.h>
Inheritance diagram for rpa::pipe_container< Container >:
Public Types | |
typedef Container::iterator | iterator |
Public Member Functions | |
pipe_container () | |
The default constructor sets the pipeline as empty. | |
pipe_container (size_t nbElts) | |
Sets an initial size. The value type must have a default constructor. | |
template<class Iter> | |
pipe_container (Iter begIter, Iter endIter) | |
This fills the pipeline with a defined content at init time. | |
pipe_container (const Container &aCont) | |
iterator | cont_begin (void) |
iterator | cont_end (void) |
iterator | cont_begin (void) const |
iterator | cont_end (void) const |
template<class IterIn> | |
size_t | push_back_range (IterIn itBeg, IterIn itEnd, size_t szReserve) |
Private Member Functions | |
void | begin (void) |
void | end (void) |
void | begin (void) const |
void | end (void) const |
typedef Container::iterator rpa::pipe_container< Container >::iterator |
Reimplemented in rpa::pipebase< Container, CondVar >, rpa::pipe_circular< Container, CondVar >, rpa::pipe_circular< Container, void >, rpa::pipe_archiver< Container, CondVar >, rpa::pipe_arc_base< Container, CondVar >, rpa::pipe_arc_aux< Container, CondVar, insertInvalidatesIterators >, rpa::pipe_arc_aux< Container, CondVar, true >, rpa::pipe_archiver< Container, void >, and rpa::pipe_arc_aux< Container, CondVar, rpa::insert_invalidates_iterators< Container >::value >.
rpa::pipe_container< Container >::pipe_container | ( | ) | [inline] |
The default constructor sets the pipeline as empty.
rpa::pipe_container< Container >::pipe_container | ( | size_t | nbElts | ) | [inline] |
Sets an initial size. The value type must have a default constructor.
rpa::pipe_container< Container >::pipe_container | ( | Iter | begIter, | |
Iter | endIter | |||
) | [inline] |
This fills the pipeline with a defined content at init time.
rpa::pipe_container< Container >::pipe_container | ( | const Container & | aCont | ) | [inline] |
void rpa::pipe_container< Container >::begin | ( | void | ) | const [inline, private] |
void rpa::pipe_container< Container >::begin | ( | void | ) | [inline, private] |
The genuine begin/end methods of the container must NEVER be taken with the new begin/end methods of the pipeline. Therefore their use is forbidden.
Reimplemented in rpa::pipe_circular< Container, CondVar >, rpa::pipe_circular< Container, void >, rpa::pipe_arc_base< Container, CondVar >, and rpa::pipe_archiver< Container, void >.
iterator rpa::pipe_container< Container >::cont_begin | ( | void | ) | const [inline] |
iterator rpa::pipe_container< Container >::cont_begin | ( | void | ) | [inline] |
iterator rpa::pipe_container< Container >::cont_end | ( | void | ) | const [inline] |
iterator rpa::pipe_container< Container >::cont_end | ( | void | ) | [inline] |
void rpa::pipe_container< Container >::end | ( | void | ) | const [inline, private] |
void rpa::pipe_container< Container >::end | ( | void | ) | [inline, private] |
size_t rpa::pipe_container< Container >::push_back_range | ( | IterIn | itBeg, | |
IterIn | itEnd, | |||
size_t | szReserve | |||
) | [inline] |
The szReserve number is greater or equal than the size of the range, and not much bigger (Less than the double ???). This helps for reserving room in the container, without having to walk twice on the iterators range. This is necessary when using output buffers in algorithms where the output is a pipeline.
This cast is necessary to select the right template specialization. For example, if std::vector, it does a 'reserve()'.