PPL Logo

conv-core/queueing.h File Reference

Declarations of queuing data structure functions. More...

Go to the source code of this file.

Data Structures

struct  prio_struct
 Stores a variable bit length priority. More...
struct  deq_struct
 A double ended queue of void* pointers stored in a circular buffer, with internal space for 4 entries. More...
struct  prioqelt_struct
 A bucket in a priority queue which contains a deque(storing the void* pointers) and references to other buckets in the hash table. More...
struct  prioqelt_struct
 A bucket in a priority queue which contains a deque(storing the void* pointers) and references to other buckets in the hash table. More...
struct  prioq_struct
 A priority queue, implemented as a heap of prioqelt_struct buckets (each bucket represents a single priority value and contains a deque of void* pointers). More...
struct  Queue_struct
 A set of 3 queues: a positive priority prioq_struct, a negative priority prioq_struct, and a zero priority deq_struct. More...

Typedefs

typedef struct prio_struct_prio
typedef struct deq_struct_deq
typedef struct prioqelt_struct_prioqelt
typedef struct prioq_struct_prioq
typedef struct Queue_structQueue

Functions

Queue CqsCreate (void)
 Initialize a Queue and its three internal queues (for positive, negative, and zero priorities).
void CqsDelete (Queue)
 Delete a Queue.
void CqsEnqueue (Queue, void *msg)
 Enqueue with priority 0.
void CqsEnqueueFifo (Queue, void *msg)
 Enqueue behind other elements of priority 0.
void CqsEnqueueLifo (Queue, void *msg)
 Enqueue ahead of other elements of priority 0.
void CqsEnqueueGeneral (Queue, void *msg, int strategy, int priobits, unsigned int *prioPtr)
 Enqueue something (usually an envelope*) into the queue in a manner consistent with the specified strategy and priority.
void CqsEnumerateQueue (Queue q, void ***resp)
 Produce an array containing all the entries in a Queue.
void CqsDequeue (Queue, void **msgPtr)
 Retrieve the highest priority message (one with most negative priority).
unsigned int CqsLength (Queue q)
int CqsEmpty (Queue q)
int CqsPrioGT_ (unsigned int ints1, unsigned int *data1, unsigned int ints2, unsigned int *data2)
int CqsPrioGT (_prio prio1, _prio prio2)
 Compare two priorities (treated as unsigned).
_prio CqsGetPriority (Queue)
 Get the priority of the highest priority message in q.
void CqsIncreasePriorityForEntryMethod (Queue q, const int entrymethod)
 Search Queue for messages associated with a specified entry method.
void CqsRemoveSpecific (Queue, const void *msgPtr)
 Remove an occurence of a specified entry from the Queue by setting its entry to NULL.
void CqsIncreasePriorityForMemCriticalEntries (Queue q)
 Search Queue for messages associated with memory-critical entry methods.

Variables

int schedAdaptMemThresholdMB
 A memory limit threshold for adaptively scheduling.


Detailed Description

Declarations of queuing data structure functions.

Definition in file queueing.h.


Generated on Mon Sep 21 08:02:28 2020 for Charm++ by  doxygen 1.5.5