GLAST/LAT > DAQ and FSW > FSW > Doxygen Index > QSEP / V3-2-0

Constituent: qsepdgm     Tag: linux-gcc


Interface   Data Structures   File List   Data Fields   Globals  

QSEP_dgmDvr.h File Reference

Tailors the QSE_dgmDvr interface specifically for the QSEP environment. More...

#include "QSE/QSE_dgmDvr.h"

Include dependency graph for QSEP_dgmDvr.h:

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


Typedefs

typedef _QSE_dgmDvr QSEP_dgmDvr
typedef _QSEP QSEP
typedef enum _QSEP_DGMDVR_FATE_K QSEP_DGMDVR_FATE_K
 Typedef for enum _QSEP_DGMDVR_FATE_K.
typedef unsigned int(* QSEP_dgmDvrDgm )(void *context, const LSF_datagram *dgm, QSEP *qsep)
 Callback signature for user provided datagram handler.
typedef unsigned int(* QSEP_dgmDvrCtb )(void *context, const LSF_contribution *ctb, QSEP *qsep)
 Callback signature for user provided context handler.
typedef unsigned int(* QSEP_dgmDvrRec )(void *context, const LSF_record *rec, void *prm)
 Callback signature for user provided record handler.

Enumerations

enum  _QSEP_DGMDVR_FATE_K {
  QSEP_DGMDVR_FATE_K_PROCESS = QSE_DGMDVR_FATE_K_PROCESS,
  QSEP_DGMDVR_FATE_K_CONTINUE = QSE_DGMDVR_FATE_K_CONTINUE,
  QSEP_DGMDVR_FATE_K_STOP = QSE_DGMDVR_FATE_K_STOP,
  QSEP_DGMDVR_FATE_K_NEXT_DATAGRAM = QSE_DGMDVR_FATE_K_NEXT_DATAGRAM,
  QSEP_DGMDVR_FATE_K_NEXT_CONTRIBUTION = QSE_DGMDVR_FATE_K_NEXT_CONTRIBUTION
}
 Fate returned by the print driver callback routine to determine whether more events are processed or not. More...

Functions

void QSEP_dgmDvrConstruct (QSEP_dgmDvr *dgmDvr, unsigned int resource_level, void *cfg, const unsigned int *dgmDvrCfg, void *handler_ctx, QSEP_dgmDvrDgm handler_dgm, QSEP_dgmDvrCtb handler_ctb, QSEP_dgmDvrRec handler_rec)
 Constructs/initializes the print driver handle used in formatting the events.
const unsigned int * QSEP_dgmDvrPrmsConstruct (unsigned int *prms, int nevents, int nskip)
 Convenience routine to construct the QSE driver parameter list.
int QSEP_dgmDvrSizeof (int resource_level, void *qsepCfg, const unsigned int *qseDgmDvrCfg)
 Returns the size, in bytes, of the control handle.
void QSEP_dgmDvrDestruct (QSEP_dgmDvr *dvr)
 Frees the QSEP datagram driver context.
LSF_scanContributionHandler QSEP_dgmDvrDatagramProcess (QSEP_dgmDvr *dvr, const LSF_datagram *dgm)
 Handles each datagram.

Detailed Description

Tailors the QSE_dgmDvr interface specifically for the QSEP environment.

Author:
JJRussell - russell@slac.stanford.edu
   CVS $Id: QSEP_dgmDvr.h,v 1.1 2008/09/19 23:42:49 russell Exp $

Typedef Documentation

unsigned int(* QSEP_dgmDvrCtb)(void *context, const LSF_contribution *ctb, QSEP *qsep)
 

Callback signature for user provided context handler.

Return values:
QSEP_DGMDVR_FATE_K_QUIT 
QSEP_DGMDVR_FATE_K_CONTINUE 
Parameters:
context The update context
ctb The datagram contribution
qsep The QSEP context

unsigned int(* QSEP_dgmDvrDgm)(void *context, const LSF_datagram *dgm, void *prm)
 

Callback signature for user provided datagram handler.

Return values:
QSEP_DGMDVR_FATE_K_QUIT 
QSEP_DGMDVR_FATE_K_CONTINUE 
Parameters:
context The update context
dgm The datagram
qsep The QSEP context

unsigned int(* QSEP_dgmDvrRec)(void *context, const LSF_record *record, QSEP *qsep)
 

Callback signature for user provided record handler.

Return values:
QSEP_DGMDVR_FATE_K_QUIT 
QSEP_DGMDVR_FATE_K_CONTINUE 
Parameters:
context The update context
record The event record to decode
qsep The QSEP context


Enumeration Type Documentation

enum _QSEP_DGMDVR_FATE_K
 

Fate returned by the print driver callback routine to determine whether more events are processed or not.

Enumerator:
QSEP_DGMDVR_FATE_K_PROCESS  Process the contents of the current object.
  • If the object is a datagram, then process the contributions.
  • If the object is a contribution, then process the records
QSEP_DGMDVR_FATE_K_CONTINUE  Continue the processing of the records in a contribution
QSEP_DGMDVR_FATE_K_STOP  Stop all processing
QSEP_DGMDVR_FATE_K_NEXT_DATAGRAM  Advances to the next datagram.
  • If the object is a datagram, then skip the processing of the contributions and, by implication, any records within those contributions
  • If the object is a contribution, then skip the processing of the records in that contribution and any remaining contributions in the current datagram
  • If the object is a record, then skip the processing of any remaining records in the contribution and any remaining contribution in the current datagram
QSEP_DGMDVR_FATE_K_NEXT_CONTRIBUTION  Advances to the next contribution
  • If the object is a contribution, then skip the processing of any records records in the current contribution
  • If the object is a record, then skip the processing of any remaining records records in the current contribution


Function Documentation

void QSEP_dgmDvrConstruct QSEP_dgmDvr *  dgmDvr,
unsigned int  resource_level,
void *  qsepCfg,
const unsigned int *  dgmDvrCfg,
void *  handler_ctx,
QSEP_dgmDvrDgm  handler_dgm,
QSEP_dgmDvrCtb  handler_ctb,
QSEP_dgmDvrRec  handler_rec
 

Constructs/initializes the print driver handle used in formatting the events.

Parameters:
dgmDvr The datagram driver handle to initialize
resource_level The maximum QSEP resource level to support
qsepCfg The QSEP configuration, may be NULL
dgmDvrCfg Datagram driver configuration parameters construction routine, may be NULL
handler_ctx User context. Passed as the first parameter in the datagram, contributor and record handling routines
handler_dgm The datagram handling routine
handler_ctb The contribution handling routine
handler_rec The record handling routine

LSF_scanContributionHandler QSEP_dgmDvrDatagramProcess QSEP_dgmDvr *  dvr,
const LSF_datagram *  dgm
 

Handles each datagram.

Return values:
The contribution level handler (routine + parameter)
Parameters:
dvr Datagram driver context parameter
dgm The datagram to print

void QSEP_dgmDvrDestruct QSEP_dgmDvr *  dvr  ) 
 

Frees the QSEP datagram driver context.

Parameters:
dvr The datagram context to destruct

const unsigned int* QSEP_dgmDvrPrmsConstruct unsigned int *  prms,
int  nevents,
int  nskip
 

Convenience routine to construct the QSE driver parameter list.

Return values:
NULL If the list is empty, i.e. nevents is specified to process all the events and nskip is specified as 0
non - NULL If either nevents is not specified to process all the events or nskip is non-zero
Parameters:
prms Pointer to an array of 32-bit words to hold the list The maximum size of this list is 5 32-bit words
nevents The number of events to process. If this is specified as -1, then no limit will be configured
nskip The number of events to skip. If this is specified as 0, then no skip parameter will be configured.

int QSEP_dgmDvrSizeof int  resource_level,
void *  qsepCfg,
const unsigned int *  qseDgmDvrCfg
 

Returns the size, in bytes, of the control handle.

Returns:
The size, in bytes, of the control handle.
Parameters:
resource_level The QSEP resource level
qsepCfg The QSEP configuration parameters, may be NULL
qseDgmDvrCfg The QSE datagram driver configuration, may be NULL
The amount of memory returned by this routine should be allocated by caller and passed, along with prm, to construction routine


Generated on Sun Jun 14 02:24:39 2009 by  doxygen 1.4.4