Main Page | Modules | Namespace List | Class Hierarchy | Class List | Directories | File List | Namespace Members | Class Members | File Members

ark::async_producer_policies::SignaledCreation< DescriptionPolicy > Class Template Reference

#include <AsyncProducerPolicies.h>

List of all members.

Public Types

typedef DescriptionPolicy::Description Description

Public Member Functions

void setProducerSemaphore (Semaphore sem, bool dest=false)
bool signalProduction (Description desc)

Protected Member Functions

virtual bool _isTimeToProduce () const
 Returns true if a product description is waiting to be gotten.
virtual bool _waitForProductionTime (unsigned secs, unsigned nanos)
virtual Description _productDesc ()
 SignaledCreation ()
virtual ~SignaledCreation ()

Static Protected Attributes

static const unsigned DescriptionQueueLength = 32

Private Attributes

Fifo< Description_prodDescs
Semaphore _sem
bool _destSem

template<class DescriptionPolicy>
class ark::async_producer_policies::SignaledCreation< DescriptionPolicy >


Member Typedef Documentation

template<class DescriptionPolicy>
typedef DescriptionPolicy::Description ark::async_producer_policies::SignaledCreation< DescriptionPolicy >::Description
 


Constructor & Destructor Documentation

template<class DescriptionPolicy>
ark::async_producer_policies::SignaledCreation< DescriptionPolicy >::SignaledCreation  )  [inline, protected]
 

template<class DescriptionPolicy>
virtual ark::async_producer_policies::SignaledCreation< DescriptionPolicy >::~SignaledCreation  )  [inline, protected, virtual]
 


Member Function Documentation

template<class DescriptionPolicy>
virtual bool ark::async_producer_policies::SignaledCreation< DescriptionPolicy >::_isTimeToProduce  )  const [inline, protected, virtual]
 

Returns true if a product description is waiting to be gotten.

template<class DescriptionPolicy>
virtual Description ark::async_producer_policies::SignaledCreation< DescriptionPolicy >::_productDesc  )  [inline, protected, virtual]
 

Gets the next pending product description, or throws Underflow if no description is available. _isTimeToProduce() or _waitForProductionTime() should return true before you call this method.

template<class DescriptionPolicy>
virtual bool ark::async_producer_policies::SignaledCreation< DescriptionPolicy >::_waitForProductionTime unsigned  secs,
unsigned  nanos
[inline, protected, virtual]
 

Waits until a product description is available, or the specified timeout elapses. Returns true if a product description is waiting to be gotten.

template<class DescriptionPolicy>
void ark::async_producer_policies::SignaledCreation< DescriptionPolicy >::setProducerSemaphore Semaphore  sem,
bool  dest = false
[inline]
 

Sets the producer semaphore to sem, and hands responsibility flag for destruction. Destroys any old semaphores we are responsible for.

template<class DescriptionPolicy>
bool ark::async_producer_policies::SignaledCreation< DescriptionPolicy >::signalProduction Description  desc  )  [inline]
 

Signal production of a new product with description 'desc'. Returns true if a production was scheduled, or false if unable to schedule production.


Member Data Documentation

template<class DescriptionPolicy>
bool ark::async_producer_policies::SignaledCreation< DescriptionPolicy >::_destSem [private]
 

template<class DescriptionPolicy>
Fifo<Description> ark::async_producer_policies::SignaledCreation< DescriptionPolicy >::_prodDescs [private]
 

template<class DescriptionPolicy>
Semaphore ark::async_producer_policies::SignaledCreation< DescriptionPolicy >::_sem [private]
 

template<class DescriptionPolicy>
const unsigned ark::async_producer_policies::SignaledCreation< DescriptionPolicy >::DescriptionQueueLength = 32 [static, protected]
 


The documentation for this class was generated from the following file:
Generated on Tue Sep 6 14:54:43 2005 for Arkonnekt Sound by  doxygen 1.4.4