#include <queueinterface.h>
Definition at line 66 of file queueinterface.h.
Public Member Functions | |
| virtual void | wait ()=0 |
| Basic interface. | |
| virtual void | lock (const char *why, const char *file, int line)=0 |
| virtual int | size ()=0 |
| virtual const X * | first ()=0 |
| virtual void | discardFirst ()=0 |
| void | discardAll () |
| virtual void | unlock ()=0 |
| virtual void | setSignalSemaphore (PosixConstructs::PosixSemaphore *semaphore)=0 |
| Advanced interface. | |
| virtual void | useLocalSemaphore ()=0 |
| virtual void | setInterests (MyInterests< X > *i)=0 |
| virtual | ~ConsumerQueueInterface () |
| template<class Y> | |
| const Y * | firstAs () |
| template<class Y> | |
| std::vector< Y > | cloneContentL () |
| virtual PosixQueues::ConsumerQueueInterface< X >::~ConsumerQueueInterface | ( | ) | [inline, virtual] |
Definition at line 97 of file queueinterface.h.
| virtual void PosixQueues::ConsumerQueueInterface< X >::wait | ( | ) | [pure virtual] |
Basic interface.
Waits for new data to come, using a local semaphore.
| virtual void PosixQueues::ConsumerQueueInterface< X >::lock | ( | const char * | why, | |
| const char * | file, | |||
| int | line | |||
| ) | [pure virtual] |
| virtual int PosixQueues::ConsumerQueueInterface< X >::size | ( | ) | [pure virtual] |
These methods should be called only when lock acquired. If lock acquired these methods do not block.
Referenced by PosixQueues::ConsumerQueueInterface< X >::cloneContentL(), PosixQueues::ConsumerQueueInterface< X >::discardAll(), and PosixQueues::ConsumerQueueInterface< X >::firstAs().
| virtual const X* PosixQueues::ConsumerQueueInterface< X >::first | ( | ) | [pure virtual] |
Referenced by PosixQueues::ConsumerQueueInterface< X >::firstAs().
| virtual void PosixQueues::ConsumerQueueInterface< X >::discardFirst | ( | ) | [pure virtual] |
| void PosixQueues::ConsumerQueueInterface< X >::discardAll | ( | ) | [inline] |
Definition at line 81 of file queueinterface.h.
References PosixQueues::ConsumerQueueInterface< X >::discardFirst(), and PosixQueues::ConsumerQueueInterface< X >::size().

| virtual void PosixQueues::ConsumerQueueInterface< X >::unlock | ( | ) | [pure virtual] |
Referenced by PosixQueues::ConsumerQueueInterface< X >::cloneContentL().
| virtual void PosixQueues::ConsumerQueueInterface< X >::setSignalSemaphore | ( | PosixConstructs::PosixSemaphore * | semaphore | ) | [pure virtual] |
Advanced interface.
This is needed to make a thread capable of waiting on multiple queues. The caller continues to own the pointer.
| virtual void PosixQueues::ConsumerQueueInterface< X >::useLocalSemaphore | ( | ) | [pure virtual] |
Revert to original policy
| virtual void PosixQueues::ConsumerQueueInterface< X >::setInterests | ( | MyInterests< X > * | i | ) | [pure virtual] |
Set filter on objects. The caller continues to own the pointer.
| const Y* PosixQueues::ConsumerQueueInterface< X >::firstAs | ( | ) | [inline] |
Utilities
Definition at line 100 of file queueinterface.h.
References PosixQueues::ConsumerQueueInterface< X >::first(), queueNoNo(), and PosixQueues::ConsumerQueueInterface< X >::size().

| std::vector<Y> PosixQueues::ConsumerQueueInterface< X >::cloneContentL | ( | ) | [inline] |
Thread-safe function to clone content with bit-a-bit copy
Definition at line 111 of file queueinterface.h.
References PosixQueues::ConsumerQueueInterface< X >::discardFirst(), LOCK, PosixQueues::ConsumerQueueInterface< X >::size(), and PosixQueues::ConsumerQueueInterface< X >::unlock().

1.5.6