Public Types | Public Member Functions

netrq::Queue Class Reference
[Network Request Queue]

basic network request queue. More...

#include <netrq.h>

Inheritance diagram for netrq::Queue:
Inheritance graph
[legend]

List of all members.

Public Types

enum  eInsertResult {
  eQueue_Success = 0,
  eQueue_Failed_CurrentEntryHasLaterClock = 1,
  eQueue_Failed_CurrentEntryHasEarlierClock = 2,
  eQueue_Failed_Unknown = 3
}

Public Member Functions

virtual int size (void)=0
 Returns count of requests in queue.
virtual eInsertResult addRequest (IN dword_t sendClock, IN smart_ptr< Request > &request)=0
 If the addRequest fails due to a collision, the return value will tell the client whether the existing request has an earlier or later clock than what was just requested.
virtual bool getNextRequest (IN dword_t clock, OUT smart_ptr< Request > &request)=0
 returns the next request that should be sent.
virtual bool containsRequest (IN const char *id)=0
 does the queue already contain a request with this id?
virtual bool removeRequest (IN const char *id)=0



virtual ~Queue (void) throw ()
static smart_ptr< Queuecreate (void)

Detailed Description

basic network request queue.

This class is threadsafe . In some situations (single-threaded client) this may be unnecessary overhead, but given the common use case (reacting to or sending UDP diagrams) this isn't expected to be much overhead.

Definition at line 98 of file netrq.h.


Member Enumeration Documentation

Enumerator:
eQueue_Success 
eQueue_Failed_CurrentEntryHasLaterClock 
eQueue_Failed_CurrentEntryHasEarlierClock 
eQueue_Failed_Unknown 

Definition at line 101 of file netrq.h.


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