protlib::QueueManager Class Reference
[Queue Manager]

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

Collaboration diagram for protlib::QueueManager:

Collaboration graph
[legend]

List of all members.

Public Member Functions

void register_queue (FastQueue *fq, message::qaddr_t s)
 register a queue
void unregister_queue (message::qaddr_t s)
 deregister a queue
FastQueueget_queue (message::qaddr_t s) const
 get queue

Static Public Member Functions

static QueueManagerinstance ()
 return QueueManager singleton instance
static void clear ()
 clear QueueManager

Private Types

typedef vector< FastQueue * > qm_array_t
 QueueManager array.
typedef qm_array_t::iterator qm_array_it_t
 QueueManager array iterator.

Private Member Functions

 QueueManager ()
 constructor
 ~QueueManager ()
 Destruktor.

Private Attributes

qm_array_t queue_arr
 array
pthread_mutex_t mutex
 locking

Static Private Attributes

static QueueManagerinst = NULL
 QueueManager instance.
static const size_t INITIAL_ARRAY_SIZE = 128


Detailed Description

The Queue Manager singleton.

The QueueManager manages several FastQueue objects. A queue is registered with the manager using a simple (key, value) scheme. The key is of type message:qaddr_t, and the value is a FastQueue object.

You can send messages to a registered queue using the message::send_to(dest) method, where dest has to be the message::qaddr_t which has been used for registering the queue.

This class is used as a singleton, so there will usually be only one object of this class.

Definition at line 85 of file queuemanager.h.


Member Typedef Documentation

typedef qm_array_t::iterator protlib::QueueManager::qm_array_it_t [private]

QueueManager array iterator.

Definition at line 108 of file queuemanager.h.

typedef vector<FastQueue*> protlib::QueueManager::qm_array_t [private]

QueueManager array.

Definition at line 106 of file queuemanager.h.


Member Data Documentation

const size_t protlib::QueueManager::INITIAL_ARRAY_SIZE = 128 [static, private]

Definition at line 114 of file queuemanager.h.

pthread_mutex_t protlib::QueueManager::mutex [mutable, private]

locking

Definition at line 112 of file queuemanager.h.

Referenced by get_queue(), QueueManager(), register_queue(), unregister_queue(), and ~QueueManager().

array

Definition at line 110 of file queuemanager.h.

Referenced by get_queue(), register_queue(), unregister_queue(), and ~QueueManager().


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

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