NVBIO
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Methods | Public Members | List of all members
nvbio::priv::PipelineThreadBase Struct Reference

Detailed description

Definition at line 37 of file pipeline_inl.h.

#include <pipeline_inl.h>

Inheritance diagram for nvbio::priv::PipelineThreadBase:
nvbio::Thread< PipelineThreadBase > nvbio::ThreadBase nvbio::priv::PipelineSinkThread< SinkType > nvbio::priv::PipelineStageThread< StageType >

Public Methods

 PipelineThreadBase ()
 
virtual ~PipelineThreadBase ()
 
virtual void run ()
 
virtual void * fetch (const uint32 i)
 
virtual void release (const uint32 i)
 
void add_dependency (PipelineThreadBase *dep)
 
void add_client ()
 
void set_id (const uint32 id)
 
- Public Methods inherited from nvbio::Thread< PipelineThreadBase >
void create ()
 create the thread More...
 
void join ()
 join the thread More...
 
- Public Methods inherited from nvbio::ThreadBase
 ThreadBase ()
 
 ~ThreadBase ()
 
void set_id (const uint32 id)
 
uint32 get_id () const
 
void create (void *(*func)(void *), void *arg)
 create the thread More...
 
void join ()
 join the thread More...
 

Public Members

std::vector< PipelineThreadBase * > m_deps
 
uint32 m_clients
 
uint32 m_id
 

Constructor & Destructor Documentation

nvbio::priv::PipelineThreadBase::PipelineThreadBase ( )
inline

empty constructor

Definition at line 41 of file pipeline_inl.h.

virtual nvbio::priv::PipelineThreadBase::~PipelineThreadBase ( )
inlinevirtual

virtual destructor

Definition at line 45 of file pipeline_inl.h.

Member Function Documentation

void nvbio::priv::PipelineThreadBase::add_client ( )
inline

add a client

Definition at line 67 of file pipeline_inl.h.

void nvbio::priv::PipelineThreadBase::add_dependency ( PipelineThreadBase dep)
inline

add a dependency on another node

Definition at line 63 of file pipeline_inl.h.

virtual void* nvbio::priv::PipelineThreadBase::fetch ( const uint32  i)
inlinevirtual

a client method to obtain the given object; once the client has finished using the object, it is responsible to call the release() method to signal completion.

Reimplemented in nvbio::priv::PipelineStageThread< StageType >.

Definition at line 55 of file pipeline_inl.h.

virtual void nvbio::priv::PipelineThreadBase::release ( const uint32  i)
inlinevirtual

a client method to release the latest batch

Reimplemented in nvbio::priv::PipelineStageThread< StageType >.

Definition at line 59 of file pipeline_inl.h.

virtual void nvbio::priv::PipelineThreadBase::run ( )
inlinevirtual

run this thread

Reimplemented in nvbio::priv::PipelineStageThread< StageType >, and nvbio::priv::PipelineSinkThread< SinkType >.

Definition at line 49 of file pipeline_inl.h.

void nvbio::priv::PipelineThreadBase::set_id ( const uint32  id)
inline

set the id

Definition at line 71 of file pipeline_inl.h.

Member Data Documentation

uint32 nvbio::priv::PipelineThreadBase::m_clients

Definition at line 74 of file pipeline_inl.h.

std::vector<PipelineThreadBase*> nvbio::priv::PipelineThreadBase::m_deps

Definition at line 73 of file pipeline_inl.h.

uint32 nvbio::priv::PipelineThreadBase::m_id

Definition at line 75 of file pipeline_inl.h.


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