GLAST/LAT > DAQ and FSW > FSW > Doxygen Index > LCS / V1-1-0

Constituent: lcs     Tag: sun-gcc


Interface   Data Structures   File List   Data Fields   Globals  

LCS_pubdefs.h File Reference

Public definitions for the LCS package. More...

#include "PBS/TASK.h"
#include "ITC/ITC_pubdefs.h"

Include dependency graph for LCS_pubdefs.h:

Include dependency graph

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

Included by dependency graph

Typedefs

typedef _LCS_Control LCS_Control
 Typedef for struct _LCS_Control.

typedef _LRX_Engine LRX_Engine
 Typedef for struct _LRX_Engine.

typedef _LRX_Statistics LRX_Statistics
 Typedef for struct _LRX_Statistics.

typedef _LTX_Engine LTX_Engine
 Typedef for struct _LTX_Engine.

typedef _LTX_Timing LTX_Timing
 Typedef for struct _LTX_Timing.

typedef enum _LCS_NodeAddress LCS_NodeAddress
 Typedef for enum _LCS_NodeAddress.

typedef void * LRX_cb_Alloc (ITC_Queue *queue, unsigned int siz, ITC_cb_Completion **rtn, void **cb0, void **cb1, void **cb2)
 Signature for callback called within queue item allocation.

typedef void LRX_cb_Stop (void *prm)
 Signature for an LRX service stop callback routine.


Enumerations

enum  _LCS_NodeAddress {
  LCS_NIH_NONE = 0x30,
  LCS_NIH_SIUP = 0x22,
  LCS_NIH_SIUR = 0x23,
  LCS_NIH_EPU0 = 0x24,
  LCS_NIH_EPU1 = 0x25,
  LCS_NIH_EPU2 = 0x26,
  LCS_NIH_EPU3 = 0x21,
  LCS_NIH_SDI = 0x27,
  LCS_NIH_BCST = 0x3f
}
 Enumeration of LCB hardware addresses. More...


Functions

LCS_ControlLCS_getControl (void)
 Return the LCS control handle.

LCS_NodeAddress LCS_getNodeAddress (ITC_NodeID nid)
 Return the LCB hardware node address for a logical ITC node ID.

unsigned int LCS_initialize (LCS_NodeAddress siu)
 Initialize the LCS master control block.

unsigned int LCS_shutdown (void)
 Shut down the LCS master control block and release resources.

unsigned int LRX_createService (void)
 Initialize an LRX service control block.

unsigned int LRX_deleteService (void)
 Delete the LTX service task and associated resources.

unsigned int LRX_startService (void)
 Set the protocol 2 and 3 handlers in the LCB event task.

unsigned int LRX_stopService (LRX_cb_Stop *rtn, void *prm)
 Stop the task implementing the LCS service layer.

unsigned int LTX_createService (ITC_TaskID tid, unsigned int nim, unsigned int pgs, unsigned int mto, ITC_cb_Memory *rtn, void *prm)
 Initialize an LTX service control block.

unsigned int LTX_deleteService (ITC_TaskID tid)
 Delete the LTX service task and associated resources.

unsigned int LTX_startService (ITC_TaskID tid, TASK_attr *attr)
 Start an LTX communications service task.

unsigned int LTX_stopService (ITC_TaskID tid)
 Stop the task implementing the LCS service layer.


Detailed Description

Public definitions for the LCS package.

CVS $Id: LCS_pubdefs.h,v 1.6 2005/04/21 03:03:28 apw Exp $
Author:
A.P.Waite

Enumeration Type Documentation

enum _LCS_NodeAddress
 

Enumeration of LCB hardware addresses.

Enumeration values:
LCS_NIH_NONE  Guard value
LCS_NIH_SIUP  SIU primary
LCS_NIH_SIUR  SIU redundant
LCS_NIH_EPU0  EPU 0
LCS_NIH_EPU1  EPU 1
LCS_NIH_EPU2  EPU 2
LCS_NIH_EPU3  EPU 3 (or SIU-EXT if you prefer)
LCS_NIH_SDI  Science data interface (SSR)
LCS_NIH_BCST  CPU broadcast


Function Documentation

LCS_Control * LCS_getControl void   ) 
 

Return the LCS control handle.

Return values:
x LCS control handle
NULL Cannot find handle

LCS_NodeAddress LCS_getNodeAddress ITC_NodeID  nid  ) 
 

Return the LCB hardware node address for a logical ITC node ID.

Parameters:
nid (in) ITC (logical) node ID
Return values:
LCS_NIH_NONE LCB (hardware) address not known
LCS_NIH_SIUP LCB (hardware) address for SIU primary
LCS_NIH_SIUR LCB (hardware) address for SIU redundant
LCS_NIH_EPU0 LCB (hardware) address for EPU 0
LCS_NIH_EPU1 LCB (hardware) address for EPU 1
LCS_NIH_EPU2 LCB (hardware) address for EPU 2
LCS_NIH_EPU3 LCB (hardware) address for EPU 3/external SIU
LCS_NIH_SDI LCB (hardware) address for science data interface
LCS_getNodeAddress() returns the LCB (hardware) address corresponding to an ITC (logical) node.

unsigned int LCS_initialize LCS_NodeAddress  siu  ) 
 

Initialize the LCS master control block.

Parameters:
siu (in) LCB hardware address of the SIU
Return values:
LCS_ALOCFAIL Memory allocation failure
LCS_CTLSTAT Invalid control state for this operation
LCS_MUALOCFL Mutex allocation failure
LCS_SUCCESS Success
LCS_initialize() initializes the LCS master control block.

unsigned int LCS_shutdown void   ) 
 

Shut down the LCS master control block and release resources.

Return values:
LCS_CTLSTAT Invalid control state for this operation
LCS_NOTINT Control block not initialized
LCS_SUCCESS Success
LCS_shutdown() shuts down the LCS master control block and releases assocoated resources

unsigned int LRX_createService void   ) 
 

Initialize an LRX service control block.

Return values:
LCS_ALOCFAIL Memory allocation failure
LCS_CTLSTAT Invalid control state for this operation
LCS_NOTINIT LCS master control block does not exist
LCS_RXCBEXST LRX control block already exists
LCS_RXNGNINI Cannot create LRX receive engines
LCS_SUCCESS Success
LRX_createService() creates and intializes LRX services

Here is the call graph for this function:

unsigned int LRX_deleteService void   ) 
 

Delete the LTX service task and associated resources.

Return values:
LCS_CTLSTAT LCS master control block not in requested state
LCS_NOTINIT LCS master control block does not exist
LCS_SUCCESS Success
LCS_SVCHNDL LRX service control block does not exist
LCS_SVCSTAT LRX service control block not in requested state
LRX_deleteService() deletes the LRX service task and associated resources.

Here is the call graph for this function:

unsigned int LRX_startService void   ) 
 

Set the protocol 2 and 3 handlers in the LCB event task.

Return values:
LCS_CTLSTAT LCS master control block not in requested state
LCS_NOTINIT LCS master control block does not exist
LCS_SUCCESS Success
LCS_SVCHNDL LRX service control block does not exist
LCS_SVCSTAT LRX service control block not in requested state
LRX_startService() starts an LRX communications service task.

Here is the call graph for this function:

unsigned int LRX_stopService LRX_cb_Stop rtn,
void *  prm
 

Stop the task implementing the LCS service layer.

Parameters:
rtn (in) LRX service stop callback routine
prm (in) LRX service stop callback routine parameter
Return values:
LCS_CTLSTAT LCS master control block not in requested state
LCS_NOTINIT LCS master control block does not exist
LCS_SUCCESS Success
LCS_SVCHNDL LRX service control block does not exist
LCS_SVCSTAT LRX service control block not in requested state
LRX_stopService() starts the process of draining the LRX service.

Here is the call graph for this function:

unsigned int LTX_createService ITC_TaskID  tid,
unsigned int  nim,
unsigned int  pgs,
unsigned int  mto,
ITC_cb_Memory *  rtn,
void *  prm
 

Initialize an LTX service control block.

Parameters:
tid (in) ITC task ID (from service set of tasks)
nim (in) Mask of ITC nodes served by this service
pgs (in) Number of 512 byte pages per packet (maximum 7)
mto (in) Message exchange timeout period (nsecs)
rtn (in) Command confirmation memory allocator
prm (in) Command confirmation memory allocator parameter
Return values:
LCS_ALOCFAIL Memory allocation failure
LCS_CTLSTAT LCS master control block not in requested state
LCS_NOTINIT LCS master control block does not exist
LCS_SUCCESS Success
LCS_TXCBEXST Task control block already exists
LCS_TXNGNINI Cannot create transmit engines
LCS_TXQUEINI Cannot create queues
LCS_TXSVCID Task id is invalid for an LTX service task
LCS_TXSVCPGS Packet page count out of range
LTX_createService() creates and intializes an LTX service

Here is the call graph for this function:

unsigned int LTX_deleteService ITC_TaskID  tid  ) 
 

Delete the LTX service task and associated resources.

Parameters:
tid (in) ITC task ID (from service set of tasks)
Return values:
LCS_CTLSTAT LCS master control block not in requested state
LCS_NOTINIT LCS master control block does not exist
LCS_SUCCESS Success
LCS_SVCHNDL LTX service control block does not exist
LCS_SVCSTAT LTX service control block not in requested state
LCS_TXSVCID Task id is invalid for an LTX service task
LTX_deleteService() deletes the LTX service task and associated resources.

Here is the call graph for this function:

unsigned int LTX_startService ITC_TaskID  tid,
TASK_attr *  attr
 

Start an LTX communications service task.

Parameters:
tid (in) ITC task ID (from service set of tasks)
attr (in) Task attributes
Return values:
LCS_CTLSTAT LCS master control block not in requested state
LCS_NOTINIT LCS master control block does not exist
LCS_SUCCESS Success
LCS_SVCHNDL LTX service control block does not exist
LCS_SVCSTAT LTX service control block not in requested state
LCS_TXSVCID Task id is invalid for an LTX service task
LTX_startService() starts a service layer LTX task.

Here is the call graph for this function:

unsigned int LTX_stopService ITC_TaskID  tid  ) 
 

Stop the task implementing the LCS service layer.

Parameters:
tid (in) ITC task ID (from service set of tasks)
Return values:
LCS_CTLSTAT LCS master control block not in requested state
LCS_NOTINIT LCS master control block does not exist
LCS_SUCCESS Success
LCS_SVCHNDL LTX service control block does not exist
LCS_SVCSTAT LTX service control block not in requested state
LCS_TXSVCID Task id is invalid for an LTX service task
LTX_stopService() stops a service layer LTX task.

Here is the call graph for this function:


Generated on Sun Jul 17 08:37:42 2005 by doxygen 1.3.3