GLAST / LAT > DAQ and FSW > FSW > Doxygen Index> LSE / V2-0-2 > lsew_stream / mv2304
Typedefs | |
typedef void *(* | CCSDS_ostreamPoster )(void *prm, void *buf, int bytes) |
Callback signature to post a buffer. | |
Functions | |
CCSDS_ostream * | CCSDS_ostreamNew (void) |
Allocates enough memory for, but does not initialize an CCSDS_ostream structure. | |
int | CCSDS_ostreamDestroy (CCSDS_ostream *ostream) |
Frees any resources associated with the specified stream. | |
int | CCSDS_ostreamSizeof (void) |
Returns the size, in bytes, of the CCSDS output stream control structure CCSDS_ostream. | |
void | CCSDS_ostreamConstruct (CCSDS_ostream *ostream, CCSDS_ostreamPoster postRtn, void *postPrm, unsigned short int sequence, unsigned short int max_write) |
Constructs/Initializes the Post Control Block. | |
void * | CCSDS_ostreamPost (CCSDS_ostream *ostream, void *buf, int nbytes) |
Routine to write the data to post the data. The buffer is broken in multiple CCSDS packets, with the size limited to 4096-128 bytes. |
CVS $Id: CCSDS_ostream.h,v 1.2 2005/10/13 20:13:56 russell Exp $
void *(* CCSDS_ostreamPoster)(void *prm, void *buf, int nbytes) |
Callback signature to post a buffer.
prm | Arbitrary user context parameter | |
buf | The buffer to post | |
nbytes | The number of bytes in the buffer |
void CCSDS_ostreamConstruct | ( | CCSDS_ostream * | ostream, | |
CCSDS_ostreamPoster | postRtn, | |||
void * | postPrm, | |||
unsigned short int | sequence, | |||
unsigned short int | max_write | |||
) |
Constructs/Initializes the Post Control Block.
ostream | The output stream handle | |
postRtn | The user provide physical posting routine | |
postPrm | The user provide parameter to the post routine | |
sequence | The starting CCSDS sequence number to use. This is almost always 0, but is provided as a parameter for testing purposes | |
max_write | The maximum packet size to be written. This must be at least 32 (although why anyone would make it that small would be a mystery) and no bigger than 4096 - 32. If it is not a multiple of 16 bytes, it will be rounded up to the nearest 16 bytes boundary and then limited to the maximum of 4096 - 32. |
int CCSDS_ostreamDestroy | ( | CCSDS_ostream * | ostream | ) |
Frees any resources associated with the specified stream.
ostream | The output stream handle to destroy |
CCSDS_ostream * CCSDS_ostreamNew | ( | void | ) |
Allocates enough memory for, but does not initialize an CCSDS_ostream structure.
void * CCSDS_ostreamPost | ( | CCSDS_ostream * | ostream, | |
void * | buf, | |||
int | nbytes | |||
) |
Routine to write the data to post the data. The buffer is broken in multiple CCSDS packets, with the size limited to 4096-128 bytes.
ostream | The output stream handle | |
buf | The buffer to output | |
nbytes | The size of the output buffer, in bytes. |
int CCSDS_ostreamSizeof | ( | void | ) |
Returns the size, in bytes, of the CCSDS output stream control structure CCSDS_ostream.