GLAST/LAT > DAQ and FSW > FSW > Doxygen Index > QLSM / V2-0-0
Constituent: qlsm     Tag: linux-gcc
#include "QLSM/QLSM_istream.h"
#include "QSD/CCSDS_istream.h"
#include "QSD/CCSDS_apidDsc.h"
#include "QSD/CCSDS_telemetry.h"
#include "LSF/LSF.h"
#include "PBS/BSWP.ih"
#include "PBI/Endianness.h"
#include <stdio.h>
#include <stdlib.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <unistd.h>
#include <fcntl.h>
#include <string.h>
#include <errno.h>
Include dependency graph for QLSM_istream.c:
Data Structures | |
struct | _QLSM_istream |
Standard header for both input and output streams. More... | |
Typedefs | |
typedef enum _QLSM_ISTREAM_BOUNDS_K | QLSM_ISTREAM_BOUNDS_K |
Typedef for enum _QLSM_ISTREAM_BOUNDS_K. | |
typedef _QLSM_istream | QLSM_istream |
Enumerations | |
enum | _QLSM_ISTREAM_BOUNDS_K { QLSM_ISTREAM_BOUNDS_K_MAXPKT = 1 << 16, QLSM_ISTREAM_BOUNDS_K_LOWER = QLSM_ISTREAM_BOUNDS_K_MAXPKT, QLSM_ISTREAM_BOUNDS_K_UPPER = 1 << 25, QLSM_ISTREAM_BOUNDS_K_OVERFLOW = QLSM_ISTREAM_BOUNDS_K_MAXPKT } |
Upper and lower bounds on the segment size. More... | |
Functions | |
static void * | mem_alloc (unsigned int nbytes) |
Wraps the 'real' allocator. | |
static void | mem_free (void *ptr) |
Wraps the 'real' deallocator. | |
static int | get_datagram (QLSM_istream *istream) |
Gets the next datagram into the buffer. | |
int | QLSM_istreamSizeof (void) |
Returns the size, in bytes, of QLSM_istream handle. | |
QLSM_istream * | QLSM_istreamNew (void) |
Allocates a QLSM_istream handle. | |
int | QLSM_istreamClose (QLSM_istream *stream) |
Closes the stream. | |
int | QLSM_istreamConstruct (QLSM_istream *istream, CCSDS_istream *ccsds) |
Opens a QLSM file or data for reading. | |
int | QLSM_istreamFileOpen (QLSM_istream *istream, const char *filename, unsigned int options, unsigned char *buf, unsigned int buf_size) |
Convenience routine to construct a QLSM_istreamFileOpen to read from the specified name file filename. | |
int | QLSM_istreamRead (QLSM_istream *istream, QLSM_istreamDsc *dsc, unsigned int filter) |
Reads the next object in the QLSM stream. | |
int | QLSM_istreamDelete (QLSM_istream *istream) |
Deletes the QLSM_istream. |
CVS $Id: QLSM_istream.c,v 1.1 2008/09/20 00:39:15 russell Exp $
|
Typedef for enum _QLSM_ISTREAM_BOUNDS_K. The lower bound must be constrained to be at least the size of the largest contribution The upper bound is really only a default used and can be easily overridden. The upper bound must be at least the size of a maximally sized contribution, but really is set by purely practical considerations. Since this is unit of a read, on very large files, there can be a considerable delay if this read is very large. This is annoying, particularly in the case where one working interactively and just processing the first few records. So this size is set to be something that is large enough to be accommodate most files, but small enough to keep the read latency to something tolerable on human timescales. |
|
|
Gets the next datagram into the buffer. DO we want recovery here |
|
Wraps the 'real' allocator.
|
|
Wraps the 'real' deallocator.
|
|
Closes the stream. This function only closes the file.To free the memory associated with the contents of the file, the user must call QLSM_istreamFree(). |
|
Opens a QLSM file or data for reading.
|
|
Deletes the QLSM_istream.
|
|
Convenience routine to construct a QLSM_istreamFileOpen to read from the specified name file filename.
|
|
Reads the next object in the QLSM stream.
|
|
Returns the size, in bytes, of QLSM_istream handle.
|