yumapro  20.10-13
YumaPro SDK
NCX Back Pointers
Collaboration diagram for NCX Back Pointers:

Functions

ncx_backptr_t * ncx_new_backptr (void *node)
 Malloc and initialize a new ncx_backptr_t struct. More...
 
void ncx_free_backptr (ncx_backptr_t *ptr)
 Free an ncx_backptr_t struct. More...
 
void ncx_free_mbackptr (ncx_backptr_t *ptr)
 Free an ncx_backptr_t struct; Free the 'node' pointer first. More...
 
void ncx_clean_backptrQ (dlq_hdr_t *backptrQ)
 Clean an entire Q of ncx_backptr_t structs. More...
 
void ncx_clean_mbackptrQ (dlq_hdr_t *backptrQ)
 Clean an entire Q of ncx_backptr_t structs Use ncx_free_mbackptr to free node pointers. More...
 
ncx_backptr_t * ncx_first_backptr (dlq_hdr_t *que)
 Get first back pointer struct. More...
 
ncx_backptr_t * ncx_last_backptr (dlq_hdr_t *que)
 Get last back pointer struct. More...
 
ncx_backptr_t * ncx_next_backptr (ncx_backptr_t *curptr)
 Get next back pointer struct. More...
 
ncx_backptr_t * ncx_prev_backptr (ncx_backptr_t *curptr)
 Get previous back pointer struct. More...
 
void * ncx_get_backptr_node (ncx_backptr_t *backptr)
 Get the back pointer node pointer. More...
 
void ncx_remove_backptr (ncx_backptr_t *ptr)
 Remove the specified backptr for deletion. More...
 
ncx_backptr_t * ncx_find_backptr (const dlq_hdr_t *que, void *node)
 Find the specified back pointer struct. More...
 

Detailed Description

General Utility to store a back pointer to another pointer. Maintained in a dlq_hdr_t queue

Const Back Pointers

The ncx_backptr_t is used for both constant and malloced back-pointers. The caller needs to know which free function to use.

Function Documentation

◆ ncx_clean_backptrQ()

void ncx_clean_backptrQ ( dlq_hdr_t *  backptrQ)

Clean an entire Q of ncx_backptr_t structs.

Parameters
backptrQQ of ncx_backptr_t to use
Here is the caller graph for this function:

◆ ncx_clean_mbackptrQ()

void ncx_clean_mbackptrQ ( dlq_hdr_t *  backptrQ)

Clean an entire Q of ncx_backptr_t structs Use ncx_free_mbackptr to free node pointers.

Parameters
backptrQQ of ncx_backptr_t to use
Here is the caller graph for this function:

◆ ncx_find_backptr()

ncx_backptr_t* ncx_find_backptr ( const dlq_hdr_t *  que,
void *  node 
)

Find the specified back pointer struct.

Parameters
quethe queue of ncx_backptr_t to check
nodethe node to find
Returns
pointer to the found backptr entry or NULL if not found
Here is the caller graph for this function:

◆ ncx_first_backptr()

ncx_backptr_t* ncx_first_backptr ( dlq_hdr_t *  que)

Get first back pointer struct.

Parameters
quethe queue of ncx_backptr_t to check
Returns
pointer to first entry or NULL if none
Here is the caller graph for this function:

◆ ncx_free_backptr()

void ncx_free_backptr ( ncx_backptr_t *  ptr)

Free an ncx_backptr_t struct.

Parameters
ptrstruct to free
See also
ncx_new_backptr
Here is the caller graph for this function:

◆ ncx_free_mbackptr()

void ncx_free_mbackptr ( ncx_backptr_t *  ptr)

Free an ncx_backptr_t struct; Free the 'node' pointer first.

Only use this function if the back pointer node can be released by calling the __free macro. Do not use if a special free function is needed

Parameters
ptrstruct to free
See also
ncx_new_backptr
Here is the caller graph for this function:

◆ ncx_get_backptr_node()

void* ncx_get_backptr_node ( ncx_backptr_t *  backptr)

Get the back pointer node pointer.

Parameters
backptrthe ncx_backptr_t to check
Returns
pointer to node within backptr
Here is the caller graph for this function:

◆ ncx_last_backptr()

ncx_backptr_t* ncx_last_backptr ( dlq_hdr_t *  que)

Get last back pointer struct.

Parameters
quethe queue of ncx_backptr_t to check
Returns
pointer to last entry or NULL if none

◆ ncx_new_backptr()

ncx_backptr_t* ncx_new_backptr ( void *  node)

Malloc and initialize a new ncx_backptr_t struct.

Parameters
nodepointer to cache in the back-ptr struct
Returns
malloced struct or NULL if memory error
Here is the caller graph for this function:

◆ ncx_next_backptr()

ncx_backptr_t* ncx_next_backptr ( ncx_backptr_t *  curptr)

Get next back pointer struct.

Parameters
curptrthe current ncx_backptr_t to check
Returns
pointer to next entry or NULL if none
Here is the caller graph for this function:

◆ ncx_prev_backptr()

ncx_backptr_t* ncx_prev_backptr ( ncx_backptr_t *  curptr)

Get previous back pointer struct.

Parameters
curptrthe current ncx_backptr_t to check
Returns
pointer to previous entry or NULL if none

◆ ncx_remove_backptr()

void ncx_remove_backptr ( ncx_backptr_t *  ptr)

Remove the specified backptr for deletion.

Parameters
ptrthe current ncx_backptr_t to check
Here is the call graph for this function:
Here is the caller graph for this function: