GLAST/LAT >
DAQ and FSW >
FSW >
Doxygen Index >
LCS / V1-2-1
Constituent: lcs     Tag: linux-gcc
Interface Data Structures File List Data Fields Globals
LRX_control.c File Reference
Basic control of CPU to CPU communications receivers.
More...
#include <string.h>
#include "PBS/FFS.ih"
#include "PBS/MBA.h"
#include "PBS/FPA.h"
#include "MSG/MSG_pubdefs.h"
#include "ITC/ITC_drvdefs.h"
#include "ITC/ITC_pubdefs.h"
#include "LCBD/LCBD_drv.h"
#include "LCBD/LCBD_evt.h"
#include "LCS/LCS_pubdefs.h"
#include "LCS/LCS_msgs.h"
#include "LCS_prvdefs.h"
Include dependency graph for LRX_control.c:
Detailed Description
Basic control of CPU to CPU communications receivers.
CVS $Id: LRX_control.c,v 1.4 2005/09/08 04:03:01 apw Exp $
- Author:
- A.P.Waite
Function Documentation
|
Check the state of master and service control blocks.
- Parameters:
-
creq | (in) Required state of LCS master control block |
sreq | (in) Required state of LRX service control block |
func | (in) Name of function calling this routine |
- 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 |
checkState() is a state integrity checker. It demands that the master control exists and be in state creq, it also demands that the service control block exists and be in state sreq. If these conditions are met, the routine returns LCS_SUCCESS, otherwise it generates a message and returns with a non-LCS_SUCCESS message.
- Warning:
- If successful, the master control block will be returned with the mutex locked. Any failure and the mutex is returned unlocked.
|
unsigned int createEngines |
( |
LRX_Service * |
lrx, |
|
|
ITC_NodeID |
nid, |
|
|
unsigned int |
want |
|
) |
[static] |
|
|
Create a set of receive engines for one node.
- Parameters:
-
lrx | LRX service handle |
nid | ITC node which this block of engines serves |
want | Mask of engines to create |
- Return values:
-
have | Mask of engines created (may not be all of them) |
|
unsigned int deleteEngines |
( |
LRX_Service * |
lrx, |
|
|
ITC_NodeID |
nid, |
|
|
unsigned int |
want |
|
) |
[static] |
|
|
Delete a set of queues.
- Parameters:
-
lrx | LRX service handle |
nid | ITC node which this block of engines serves |
want | Mask of engines to delete |
- Return values:
-
have | Mask of queues deleted (may not be all of them) |
|
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:
|
Set the allocation plug-in.
- Parameters:
-
rtn | (in) LRX allocation plug-in |
- 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_setAlloc() changes the allocation plug-in |
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:
Generated on Tue Sep 20 21:30:52 2005 by
1.3.3