Grid Community Toolkit  6.2.1705709074 (tag: v6.2.20240202)
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Typedefs | Functions
globus_priority_q.h File Reference

Priority Queue. More...

#include "globus_types.h"
#include "globus_memory.h"

Go to the source code of this file.

Data Structures

struct  globus_priority_q_s
 Priority Queue Structure. More...
 

Typedefs

typedef int(* globus_priority_q_cmp_func_t )(void *priority_1, void *priority_2)
 Priority Comparison Predicate. More...
 
typedef struct globus_priority_q_s globus_priority_q_t
 Priority Queue Structure. More...
 

Functions

int globus_priority_q_init (globus_priority_q_t *priority_q, globus_priority_q_cmp_func_t cmp_func)
 Initialize a priority queue. More...
 
int globus_priority_q_destroy (globus_priority_q_t *priority_q)
 Destroy a Priority Queue. More...
 
globus_bool_t globus_priority_q_empty (globus_priority_q_t *priority_q)
 Priority Queue Empty Predicate. More...
 
int globus_priority_q_size (globus_priority_q_t *priority_q)
 Priority Queue Size. More...
 
int globus_priority_q_enqueue (globus_priority_q_t *priority_q, void *datum, void *priority)
 Add a Datum to a Priority Queue. More...
 
void * globus_priority_q_remove (globus_priority_q_t *priority_q, void *datum)
 Remove an Arbitrary Datum from a Priority Queue. More...
 
void * globus_priority_q_modify (globus_priority_q_t *priority_q, void *datum, void *new_priority)
 Modify the Priority of Datum. More...
 
void * globus_priority_q_dequeue (globus_priority_q_t *priority_q)
 Remove a Datum From A Priority Queue. More...
 
void * globus_priority_q_first (globus_priority_q_t *priority_q)
 Get the Highest-Priority Datum From a Priority Queue. More...
 
void * globus_priority_q_first_priority (globus_priority_q_t *priority_q)
 Get the Highest Priority in Priority Queue. More...
 

Detailed Description

Priority Queue.