protlib::FastQueue Class Reference
[Fast Queue]

#include <source/ariba/utility/transport/tcpip/protlib/fqueue.h>

Collaboration diagram for protlib::FastQueue:

Collaboration graph
[legend]

List of all members.

Classes

class  FQError
 FastQueue error. More...

Public Member Functions

 FastQueue (const char *qname=0, bool exp=false)
 constructor
 ~FastQueue ()
 destructor
bool enqueue (message *element, bool exp=false)
 enqueue message
messagedequeue (bool blocking=true)
 dequeue message
messagedequeue_timedwait (const struct timespec &tspec)
 dequeue message, timed wait
messagedequeue_timedwait (const long int msec)
 dequeue message, timed wait
bool is_empty () const
 is queue empty
unsigned long size () const
 get number of enqueued messages
bool is_expedited_enabled () const
 is expedited data support enabled
bool enable_expedited (bool exp)
 enable/disable expedited data
void shutdown ()
 shutdown queue, do not accept messages
unsigned long cleanup ()
 delete stored messages
const char * get_name () const
 Return the name of the queue.

Private Attributes

queue_tqueue
 C fastqueue.
string queue_name
 name of the queue, also stored in the queue_t
bool shutdownflag
 accept or reject messages


Detailed Description

A fast message queue.

This is a fast and thread-safe message queue with expedited data support. It is an object oriented wrapper around fastqueue.c. The queue grows dynamically and has no built-in entry limit.

Definition at line 63 of file fqueue.h.


Member Function Documentation

const char* protlib::FastQueue::get_name (  )  const [inline]

Return the name of the queue.

Definition at line 92 of file fqueue.h.

References queue_name.


Member Data Documentation

name of the queue, also stored in the queue_t

Definition at line 97 of file fqueue.h.

Referenced by enqueue(), FastQueue(), get_name(), and ~FastQueue().

accept or reject messages

Definition at line 99 of file fqueue.h.

Referenced by cleanup(), enqueue(), and shutdown().


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

Generated on Fri Aug 14 23:39:49 2009 for Ariba by  doxygen 1.5.8