GLAST/LAT > DAQ and FSW > FSW > Doxygen Index > EFC / V4-1-1

Constituent: defc     Tag: rad750


Interface   Data Structures   File List   Data Fields   Globals  

TFC_prjList.h File Reference

Provides data structures (arrays of linked lists) that allow one to access the projections by their top or bottom layer number. More...

#include "PBI/Attribute.h"

Include dependency graph for TFC_prjList.h:

This graph shows which files directly or indirectly include this file:


Data Structures

struct  _TFC_prjNode
 Defines the control structure needed to maintain a node on a projection list. More...
struct  _TFC_prjList
 Defines the control structure needed to describe the head of a projection list. More...

Typedefs

typedef _TFC_prjList TFC_prjList
 Typedef for struct _TFC_prjList.
typedef _TFC_prjNode TFC_prjNode
 Typedef for struct _TFC_prjNode.

Functions

static __inline void TFC__prjListAppend (TFC_prjList *dst, TFC_prjList *src) ATTR_UNUSED_OK
 Appends the src list members to the dst list.
static __inline void TFC__prjListDestroy (TFC_prjList *list) ATTR_UNUSED_OK
 Destroys the data structures associate with the list.
static __inline int TFC__prjListEmpty (TFC_prjList *list) ATTR_UNUSED_OK
 Returns non zero if the list is empty list.
static __inline int TFC__prjListIsLast (const TFC_prjList *list, const TFC_prjNode *node) ATTR_UNUSED_OK
 Returns a whether a this is the last node in the list.
static __inline void TFC__prjListInit (TFC_prjList *list) ATTR_UNUSED_OK
 Initializes a list (singly linked list) to an empty list.
static __inline TFC_prjNodeTFC__prjListInsert (TFC_prjList *list, TFC_prjNode *node) ATTR_UNUSED_OK
 Adds a node to the tail of a previously initialized list.
static __inline TFC_prjNodeTFC__prjListJam (TFC_prjList *list, TFC_prjNode *node) ATTR_UNUSED_OK
 Adds a node to the head of a previously initialized list.
static __inline TFC_prjNodeTFC__prjListPrevious (const TFC_prjList *list, const TFC_prjNode *node) ATTR_UNUSED_OK
 Returns the previous node list or NULL if the first node.
static __inline void TFC__prjListPrepend (TFC_prjList *dst, TFC_prjList *src) ATTR_UNUSED_OK
 Prepends the src list members to the dst list.
static __inline TFC_prjNodeTFC__prjListNext (const TFC_prjList *list, const TFC_prjNode *node) ATTR_UNUSED_OK
 Returns the next node or NULL if the last node.
static __inline TFC_prjNodeTFC__prjListRemove (TFC_prjList *list) ATTR_UNUSED_OK
 Removes the node from the head of a previously initialized list.. An empty list returns NULL as its node.
static __inline TFC_prjNodeTFC__prjListUnlink (const TFC_prjNode *node, TFC_prjNode *predecessor) ATTR_UNUSED_OK
 Removes the specified node from the list.
static __inline TFC_prjNodeTFC__prjListFirst (const TFC_prjList *list) ATTR_UNUSED_OK
 Returns a pointer to the first node in the list.
static __inline TFC_prjNodeTFC__prjListLast (const TFC_prjList *list) ATTR_UNUSED_OK
 Returns a pointer to the last node in the list.

Detailed Description

Provides data structures (arrays of linked lists) that allow one to access the projections by their top or bottom layer number.

Author:
JJRussell - russell@slac.stanford.edu
   CVS $Id: TFC_prjList.h,v 1.1 2007/06/17 22:14:18 russell Exp $

Function Documentation

static __inline void TFC__prjListAppend TFC_prjList dst,
TFC_prjList src
[static]
 

Appends the src list members to the dst list.

Parameters:
dst A previously initialized list acting as the destination
src A previously initialized list acting as the source
Appends the source list to the destination list. After this operation the destination list will have consist of its original members followed by the members on the source list. The source list will be empty.

static __inline void TFC__prjListDestroy TFC_prjList list  )  [static]
 

Destroys the data structures associate with the list.

Parameters:
list Pointer to the list to destroy.
Currently this routine is effectively a NO-OP, but is provided for upward compatibility, just in case at some time in the future this operations does something meaningful.

static __inline int TFC__prjListEmpty TFC_prjList list  )  [static]
 

Returns non zero if the list is empty list.

Returns:
Non zero if the list is empty list, else 0
Parameters:
list Pointer to the list to initialize.

static __inline TFC_prjNode * TFC__prjListFirst const TFC_prjList list  )  [static]
 

Returns a pointer to the first node in the list.

Returns:
A pointer to the first node in the list or NULL if the list is empty.
Parameters:
list The list

static __inline void TFC__prjListInit TFC_prjList list  )  [static]
 

Initializes a list (singly linked list) to an empty list.

Parameters:
list Pointer to the list to initialize.
The list is initialized to an empty list. This must be done before performing any other operations on the list.

static __inline TFC_prjNode * TFC__prjListInsert TFC_prjList list,
TFC_prjNode node
[static]
 

Adds a node to the tail of a previously initialized list.

Returns:
Pointer to the old tail. This can be used to test whether this was the first item on the list. If return_value == list then empty
Parameters:
list A previously initialized list.
node The node to add at the tail of the mode
Adds the specified node to the tail of the list. If all nodes are added with the TFC__prjListInsert routine, the list behaves as a FIFO.

static __inline int TFC__prjListIsLast const TFC_prjList list,
const TFC_prjNode node
[static]
 

Returns a whether a this is the last node in the list.

Return values:
0,is not the last node in the list
0,is the last node in the list
Parameters:
list The list
node The node to check

static __inline TFC_prjNode * TFC__prjListJam TFC_prjList list,
TFC_prjNode node
[static]
 

Adds a node to the head of a previously initialized list.

Returns:
Pointer to the old forward link. This can be used to test whether this was the first item on the list.
If return_value == list, then empty
Parameters:
list A previously initialized list.
node The node to add.
Adds the specified node to the head of the list. If all nodes are added with the TFC__prjListJam routine, the list behaves as a LIFO.

static __inline TFC_prjNode * TFC__prjListLast const TFC_prjList list  )  [static]
 

Returns a pointer to the last node in the list.

Returns:
A pointer to the last node in the list or NULL if the list is empty.
Parameters:
list The list

static __inline TFC_prjNode * TFC__prjListNext const TFC_prjList list,
const TFC_prjNode node
[static]
 

Returns the next node or NULL if the last node.

Returns:
Pointer to the next node or NULL if this is the last node
Parameters:
list A previously initialized list.
node The current node

static __inline void TFC__prjListPrepend TFC_prjList dst,
TFC_prjList src
[static]
 

Prepends the src list members to the dst list.

Parameters:
dst A previously initialized list acting as the destination
src A previously initialized list acting as the source
Prepends the source list to the destination list. After this operation the destination list will have consist of its original members preceded by the members on the source list. The source list will be empty.

static __inline TFC_prjNode * TFC__prjListPrevious const TFC_prjList list,
const TFC_prjNode node
[static]
 

Returns the previous node list or NULL if the first node.

Returns:
Pointer to the next node or NULL if this is the first node
Parameters:
list A previously initialized list.
node The current node

static __inline TFC_prjNode * TFC__prjListRemove TFC_prjList list  )  [static]
 

Removes the node from the head of a previously initialized list.. An empty list returns NULL as its node.

Returns:
A pointer to the removed node or NULL if the list is empty.
Parameters:
list A previously initialized list.
Removes the node at the head of the list. If the list is empty, NULL is returned.

static __inline TFC_prjNode * TFC__prjListUnlink const TFC_prjNode node,
TFC_prjNode predecessor
[static]
 

Removes the specified node from the list.

Returns:
Pointer to the forward link of the removed node.
Parameters:
node The node to unlink from the list
predecessor The predecessor node.
Unlinks the specified node from a previously initialized list.


Generated on Fri Jan 25 01:45:14 2008 by  doxygen 1.4.4