GLAST / LAT > DAQ and FSW > FSW > Doxygen Index> EDS / V2-11-5 > eds / mv2304


Interface   Data Structures   File List   Data Fields   Globals  

EBF_ctb.h File Reference

Describes the attributes and data structures relating to individual contributors. More...

#include <EDS/EBF_pkt.h>
#include <EDS/EBF_ebw.h>
#include <EDS/EBF_esw.h>

Classes

struct  _EBF_ctbHdr
 Lays out the standard 2 header words of every contributor. More...
struct  _EBF_ctb
 Template of a contributor. More...

Defines

#define EBF_CTB_K_ALIGN_SHIFT   4
 The size of a contributor must be an even multiple of this power of 2. Currently an LCB packet is 128 bits or 16 bytes. This means that the low nibble of each length contributor's field must be zero.
#define EBF_CTB_K_ALIGN_SIZE   (1 << EBF_CTB_K_ALIGN_SHIFT)
 The size of a contributor must be an even multiple of this number. Currently an LCB packet is 128 bits or 16 bytes. This means that the low nibble of each length contributor's field must be zero.
#define EBF_CTB_K_ALIGN_MASK   ((1 << EBF_CTB_K_ALIGN_SIZE) - 1)
 The size of a contributor must be an even multiple of this number. Currently an LCB packet is 128 bits or 16 bytes. This means that the low nibble of each length contributor's field must be zero.

Typedefs

typedef struct _EBF_ctbHdr EBF_ctbHdr
 Typedef for struct _EBF_ctbHdr.
typedef struct _EBF_ctb EBF_ctb
 Typedef for struct _EBF_ctb.

Functions

static __inline int EBF__ctbSize (const EBF_ctb *ctb)
 Returns the size, in bytes, of the specified contributor.
static __inline EBF_ctbEBF__ctbNext (const EBF_ctb *ctb)
 Returns a pointer to the next contributor.
static __inline EBF_ctbEBF__ctbAdvance (const EBF_ctb *ctb, int nbytes)
 Returns a pointer to the next contributor.
static __inline unsigned int EBF__ctbSequence (const EBF_ctb *ctb)
 Returns the 17 bit event sequence number for this contributor.


Detailed Description

Describes the attributes and data structures relating to individual contributors.

Author:
JJRussell - russell@slac.stanford.edu
   CVS $Id: EBF_ctb.h,v 1.4 2011/03/25 22:16:54 russell Exp $

Typedef Documentation

Typedef for struct _EBF_ctb.

This gives the template of a contributor as a contributor header, followed by an unstructured array of unsigned 32-bit integers.


Function Documentation

static __inline EBF_ctb * EBF__ctbAdvance ( const EBF_ctb ctb,
int  nbytes 
) [static]

Returns a pointer to the next contributor.

Returns:
Pointer to the next contributor
Parameters:
ctb The contributor to advance
nbytes The number of bytes to advance
Warning:
Note that this routine makes no guarantee that there is the object pointed at is a contributor. It merely advances the pointer to one past the end of the specified contributor. The intent is that nbytes was gotten by calling EBF__ctbSize.

Referenced by EBF_calEnergyEvtSum(), and EBF_dirCompose().

static __inline EBF_ctb * EBF__ctbNext ( const EBF_ctb ctb  )  [static]

Returns a pointer to the next contributor.

Returns:
Pointer to the next contributor
Parameters:
ctb The base contributor
Warning:
Note that this routine makes no guarantee that there is a next contributor. It merely advances the pointer to one past the end of the base contributor.

References EBF__ctbSize().

static __inline unsigned int EBF__ctbSequence ( const EBF_ctb ctb  )  [static]

Returns the 17 bit event sequence number for this contributor.

Returns:
The 17 bit event sequence number for this contributor
Parameters:
ctb Pointer to the contributor

References EBF_ESW_SEQ, _EBF_ctbHdr::esw, _EBF_ctb::hdr, and _EBF_esw::ui.

Referenced by EDR_errUnpack().

static __inline int EBF__ctbSize ( const EBF_ctb ctb  )  [static]

Returns the size, in bytes, of the specified contributor.

Returns:
The size, in bytes of the specified contributor
Parameters:
ctb The contributor to size

References _EBF_ebw::bf, EBF_EBW_LEN_TO_BYTES, _EBF_ctbHdr::ebw, and _EBF_ctb::hdr.

Referenced by EBF__ctbNext(), and EDR_errUnpack().


Generated on Tue Nov 29 23:22:06 2011 by  doxygen 1.5.8