![]() |
http://www.sim.no http://www.coin3d.org |
A class for managing a pointer first-in, first-out queue. More...
#include <Inventor/threads/SbFifo.h>
Public Member Functions | |
void | assign (void *ptr, uint32_t type) |
void | retrieve (void *&ptr, uint32_t &type) |
SbBool | tryRetrieve (void *&ptr, uint32_t &type) |
unsigned int | size (void) const |
void | lock (void) const |
void | unlock (void) const |
SbBool | peek (void *&item, uint32_t &type) const |
SbBool | contains (void *item) const |
SbBool | reclaim (void *item) |
A class for managing a pointer first-in, first-out queue.
void SbFifo::assign | ( | void * | ptr, |
uint32_t | type | ||
) | [inline] |
Puts pointer ptr of type type into the fifo.
The type argument is just meant as a user data tag, and a 0 value can be given as the type argument if type data is uninteresting.
void SbFifo::retrieve | ( | void *& | ptr, |
uint32_t & | type | ||
) | [inline] |
Reads a pointer from the queue. Blocks until a pointer is available for reading.
SbBool SbFifo::tryRetrieve | ( | void *& | ptr, |
uint32_t & | type | ||
) | [inline] |
Tries to read a pointer from the queue. If no data can be read, FALSE
is returned, and TRUE
otherwise. The function does not block.
unsigned int SbFifo::size | ( | void | ) | const [inline] |
Returns number of pointers currently in the queue.
void SbFifo::lock | ( | void | ) | const [inline] |
Blocks until the queue can be locked.
void SbFifo::unlock | ( | void | ) | const [inline] |
Unlocks the queue.
SbBool SbFifo::peek | ( | void *& | item, |
uint32_t & | type | ||
) | const [inline] |
Peeks at the head item of the queue without removing it. In the case where the fifo is empty, FALSE
is returned.
The queue must be locked with SbFifo::lock() before using this function, then unlocked.
SbBool SbFifo::contains | ( | void * | item | ) | const [inline] |
Returns TRUE
or FALSE
depending on whether the item is in the queue.
The queue must be locked with SbFifo::lock() before using this function, then unlocked.
SbBool SbFifo::reclaim | ( | void * | item | ) | [inline] |
This function removes the given item from the queue. Returns TRUE
or FALSE
depending on whether the item was in the queue in the first place.
The queue must be locked with SbFifo::lock() before using this function, then unlocked.
Copyright © 1998-2007 by Systems in Motion AS. All rights reserved.
Generated on Mon Feb 28 2011 10:12:01 for Coin by Doxygen. 1.7.3