Public Member Functions | Private Member Functions | Private Attributes | List of all members
LinearPipeline< WorkTypeA, WorkTypeB > Class Template Reference

#include <LinearPipeline.hpp>

Public Member Functions

void AddStage (boost::shared_ptr< AbstractStage > stage)
 
void AddWork (WorkTypeA work)
 
WorkTypeB GetResult ()
 
void join ()
 
void Start ()
 

Private Member Functions

void StartStage (size_t index)
 

Private Attributes

std::vector< boost::shared_ptr< BlockingQueue > > m_queues
 
std::vector< boost::shared_ptr< AbstractStage > > m_stages
 
std::vector< boost::shared_ptr< boost::thread > > m_threads
 

Detailed Description

template<typename WorkTypeA, typename WorkTypeB>
class LinearPipeline< WorkTypeA, WorkTypeB >

Definition at line 51 of file LinearPipeline.hpp.

Member Function Documentation

◆ AddStage()

template<typename WorkTypeA, typename WorkTypeB>
void LinearPipeline< WorkTypeA, WorkTypeB >::AddStage ( boost::shared_ptr< AbstractStage stage)
inline

Definition at line 58 of file LinearPipeline.hpp.

◆ AddWork()

template<typename WorkTypeA, typename WorkTypeB>
void LinearPipeline< WorkTypeA, WorkTypeB >::AddWork ( WorkTypeA  work)
inline

Definition at line 91 of file LinearPipeline.hpp.

◆ GetResult()

template<typename WorkTypeA, typename WorkTypeB>
WorkTypeB LinearPipeline< WorkTypeA, WorkTypeB >::GetResult ( )
inline

Definition at line 97 of file LinearPipeline.hpp.

◆ join()

template<typename WorkTypeA, typename WorkTypeB>
void LinearPipeline< WorkTypeA, WorkTypeB >::join ( )
inline

Definition at line 115 of file LinearPipeline.hpp.

◆ Start()

template<typename WorkTypeA, typename WorkTypeB>
void LinearPipeline< WorkTypeA, WorkTypeB >::Start ( )
inline

Definition at line 103 of file LinearPipeline.hpp.

◆ StartStage()

template<typename WorkTypeA, typename WorkTypeB>
void LinearPipeline< WorkTypeA, WorkTypeB >::StartStage ( size_t  index)
inlineprivate

Definition at line 125 of file LinearPipeline.hpp.

Member Data Documentation

◆ m_queues

template<typename WorkTypeA, typename WorkTypeB>
std::vector< boost::shared_ptr<BlockingQueue > > LinearPipeline< WorkTypeA, WorkTypeB >::m_queues
private

Definition at line 136 of file LinearPipeline.hpp.

◆ m_stages

template<typename WorkTypeA, typename WorkTypeB>
std::vector< boost::shared_ptr<AbstractStage > > LinearPipeline< WorkTypeA, WorkTypeB >::m_stages
private

Definition at line 132 of file LinearPipeline.hpp.

◆ m_threads

template<typename WorkTypeA, typename WorkTypeB>
std::vector< boost::shared_ptr<boost::thread> > LinearPipeline< WorkTypeA, WorkTypeB >::m_threads
private

Definition at line 140 of file LinearPipeline.hpp.


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


lvr2
Author(s): Thomas Wiemann , Sebastian Pütz , Alexander Mock , Lars Kiesow , Lukas Kalbertodt , Tristan Igelbrink , Johan M. von Behren , Dominik Feldschnieders , Alexander Löhr
autogenerated on Mon Feb 28 2022 22:46:10