GLAST / LAT > DAQ and FSW > FSW > Doxygen Index> LCM / dev > lcm_siu / rhel4-32
Typedefs | |
typedef unsigned int(* | CSSR_collectRtn )(void *uParm, unsigned int **buff, unsigned int *buffLen) |
Typedef for routine to collect and create stat buffer. | |
typedef unsigned int(* | CSSR_compressRtn )(void *uParm, unsigned int *dst, int dstLen, unsigned int *src, int srcLen) |
Typedef for routine to do compression. | |
typedef unsigned int(* | CSSR_freeRtn )(void *uParm, unsigned int *buff) |
Typedef for routine to free buffer passed out by CSSR_collectRtn(). | |
Functions | |
int | CSSR_forkBuffSizeof () |
return size of CSSR control structure | |
int | CSSR_ssrRingOverhead () |
return size of overhead per packet to use in ssrRingBuffsize calc | |
unsigned int | CSSR_init (void *cssrH, char *taskName, int taskPriority, int numQueuedSends, int apidBase, int lsfDatagramId, int lsfDatagramVer, int ssrRingBuffsize, int ssrRingOverflow) |
init the Compress and Send SSR utility | |
void | CSSR_stop (void *cssrH) |
stop the forked task | |
unsigned int | CSSR_sendRtn (void *cssrH, int lsfId, int lsfVer, CSSR_collectRtn collectRtn, CSSR_compressRtn compressRtn, CSSR_freeRtn freeRtn, void *uParm) |
send a request to task with a "collect" task to run in task context | |
unsigned int | CSSR_sendBuff (void *cssrH, int lsfId, int lsfVer, unsigned int *buff, unsigned int buffLen, CSSR_compressRtn compressRtn, CSSR_freeRtn freeRtn, void *uParm) |
send a request to task with a pre-filled buffer | |
unsigned int | CSSR_zlibCompress (void *uParm, unsigned int *dst, int dstLen, unsigned int *src, int srcLen) |
compression routine that does standard ZIP compression |
CVS $Id: CSSR.h,v 1.1 2005/12/21 00:20:08 ebacho Exp $
unsigned int CSSR_collectRtn |
Typedef for routine to collect and create stat buffer.
uParm | user specified parm | |
buff | passes out pointer of created buffer | |
buffLen | passes out length of created buffer |
unsigned int(* CSSR_compressRtn)(void *uParm, unsigned int *dst, int dstLen, unsigned int *src, int srcLen) |
Typedef for routine to do compression.
uParm | user specified parm | |
dst | destination buffer | |
dstLen | max length of destination buffer | |
buff | buffer to compress | |
buffLen | length of buffer to compress |
unsigned int(* CSSR_freeRtn)(void *uParm, unsigned int *buff) |
Typedef for routine to free buffer passed out by CSSR_collectRtn().
uParm | user specified parm | |
buff | buffer to free |
int CSSR_forkBuffSizeof | ( | ) |
unsigned int CSSR_init | ( | void * | cssrH, | |
char * | taskName, | |||
int | taskPriority, | |||
int | numQueuedSends, | |||
int | apidBase, | |||
int | lsfDatagramId, | |||
int | lsfDatagramVer, | |||
int | ssrRingBuffsize, | |||
int | ssrRingOverflow | |||
) |
init the Compress and Send SSR utility
cssrH | memory for control structure of len CSSR_sizeof() | |
taskName | name of compress and send SSR task | |
taskPriority | priority of compress and send SSR task | |
numQueuedSends | number of queued requests to task | |
apidBase | base APID in CCSDS header, the CPU offset will be added to it (0=SIU,1=EPU0,...) | |
lsfDatagramId | id in LSF datagram header for all SSR packets sent | |
lsfDatagramVer | version of LSF datagram header for all SSR packets sent | |
ssrRingBuffsize | size of ring buffer between task and LCB | |
ssrRingOverflow | overflow part of ring buffer betweem task and LCB |
Referenced by SMON_start().
unsigned int CSSR_sendBuff | ( | void * | cssrH, | |
int | lsfId, | |||
int | lsfVer, | |||
unsigned int * | buff, | |||
unsigned int | buffLen, | |||
CSSR_compressRtn | compressRtn, | |||
CSSR_freeRtn | freeRtn, | |||
void * | uParm | |||
) |
send a request to task with a pre-filled buffer
cssrH | handle of size CSSR_sizeof() | |
lsfId | id to be put in LSF contributor header | |
lsfVer | version of LSF contributor | |
buff | ptr to allocated and filled buffer | |
buffLen | length of buff in bytes | |
compressRtn | routine to compress the buffer, can use CSSR_zlibCompress or NULL for no compress | |
freeRtn | routine to free buffer | |
uParm | parameter provided to above 3 routines |
Send a filled buffer to the forked task to compress and send. The "free" routine should free that buffer The caller may provide own compress routine or use the provided CSSR_zlibCompress
unsigned int CSSR_sendRtn | ( | void * | cssrH, | |
int | lsfId, | |||
int | lsfVer, | |||
CSSR_collectRtn | collectRtn, | |||
CSSR_compressRtn | compressRtn, | |||
CSSR_freeRtn | freeRtn, | |||
void * | uParm | |||
) |
send a request to task with a "collect" task to run in task context
cssrH | handle of size CSSR_sizeof() | |
lsfId | id to be put in LSF contributor header | |
lsfVer | version of LSF contributor | |
collectRtn | routine to alloc and fill buffer to compress and send | |
compressRtn | routine to compress the buffer, can use CSSR_zlibCompress or NULL for none | |
freeRtn | routine to free buffer allocated in collectRtn | |
uParm | parameter provided to above 3 routines |
int CSSR_ssrRingOverhead | ( | ) |
return size of overhead per packet to use in ssrRingBuffsize calc
Referenced by SMON_start().
void CSSR_stop | ( | void * | cssrH | ) |
unsigned int CSSR_zlibCompress | ( | void * | uParm, | |
unsigned int * | dst, | |||
int | dstLen, | |||
unsigned int * | src, | |||
int | srcLen | |||
) |
compression routine that does standard ZIP compression
uParm | not used | |
dst | destination buffer (where compressed data put) | |
dstLen | max length of dest buffer | |
src | source buffer (that to be comporessed) | |
srcLen | length of source |