GLAST / LAT > DAQ and FSW > FSW > Doxygen Index> LSE / V2-0-1 > lsew / sun-gcc


Interface   Data Structures   File List   Data Fields   Globals  

CDF_cal_def.h File Reference

Compress structures for the CAL contribution. More...

#include "LSE/CDF_cal_prd_model.h"
#include "LSE/LFR_refdef.h"
#include "EDS/ECR_cal.h"

Classes

struct  _CDF_calStatsAdr
 Statistics for the CAL addressing. More...
struct  _CDF_calStatsPha
 Statistics for the CAL PHA values. More...
struct  _CDF_calStats
 Statistics for the CAL. More...
struct  _CDF_calTablesAdr
 Compression tables for the CAL addressing. More...
struct  _CDF_calTablesPha
 Compression tables for the CAL PHA values. More...
struct  _CDF_calTables
 Compress tables for the CAL. More...
struct  _CDF_calSizesAdr
 The encoding sizes for the CAL addressing. More...
struct  _CDF_calSizesPha
 The encoding sizes for the CAL PHA values. More...
struct  _CDF_calSizes
 Sizes for the CAL. More...
struct  _CDF_calPhaLz
 Describes the two log end readings in a leading 0 (pseudo-floating) manner. More...
struct  _CDF_calPhaCtx
struct  _CDF_cal_std
 All the stuff about statistics used for doing CAL compresssion for standard physics data taking. More...
struct  _CDF_cal_ped_statistics
 Defines the statistics needed to encode the ADC values. These are the means, sigmas and normalizing counts. More...
struct  _CDF_cal_refs
 Structure containing all the file references. More...
struct  _CDF_cal_prd_log_end_table
 The table prediction constants for one log end. More...
struct  _CDF_cal_prd_log
 The prediction constants for one log. More...
union  _CDF_cal_prd_layer
 The range predictors for one range of one layer. More...
union  _CDF_cal_prd_tower
 Constants used when predicting one gain range from another, one tower's worth. More...
struct  _CDF_cal_prd
 Constants used when predicting one gain range from another. More...
struct  _CDF_cal_com
 Stuff common to both standard and non-zero suppressed data data-taking modes. More...
struct  _CDF_cal_ped
 Private structure holding the CAL context used to process and compress the events. More...
struct  _CDF_cal
 All the stuff about statistics used for doing CAL compresssion. More...

Defines

#define CDF_CAL_PED_N_MAX
 The maximum number of CAL compression histograms.
#define CDF_CAL_N_TWR   16
#define CDF_CAL_N_RNG   4
#define CDF_CAL_N_COL   12
#define CDF_CAL_N_LAY   8
#define CDF_CAL_N_END   2
#define CDF_CAL_P_END   1
#define CDF_CAL_M_END   0

Typedefs

typedef struct _HDE HDE
typedef struct _EBF_dir EBF_dir
typedef struct
_CDF_calStatsAdr 
CDF_calStatsAdr
 Typedef for struct _CDF_calStatsAdr.
typedef struct
_CDF_calStatsPha 
CDF_calStatsPha
 Typedef for struct _CDF_calStatsPha.
typedef struct
_CDF_calStats 
CDF_calStats
 Typedef for struct _CDF_calStats.
typedef struct
_CDF_calTablesAdr 
CDF_calTablesAdr
 Typedef for struct _CDF_calTablesAdr.
typedef struct
_CDF_calTablesPha 
CDF_calTablesPha
 Typedef for struct _CDF_calTablesPha.
typedef struct
_CDF_calTables 
CDF_calTables
 Typedef for struct _CDF_calTables.
typedef struct
_CDF_calSizesAdr 
CDF_calSizesAdr
 Typedef for struct _CDF_calSizeAdr.
typedef struct
_CDF_calSizesPha 
CDF_calSizesPha
 Typedef for struct _CDF_calSizePha.
typedef struct
_CDF_calSizes 
CDF_calSizes
 Typedef for struct _CDF_calSizes.
typedef enum
_CDF_calScheme 
CDF_calScheme
 Typedef for enum _CDF_calScheme.
typedef enum
_CDF_calSchemeSize 
CDF_calSchemeSize
 Typedef for enum _CDF_calSchemeSize.
typedef struct
_CDF_calPhaLz 
CDF_calPhaLz
 Typedef for struct _CDF_calPhaLz.
typedef struct
_CDF_calPhaCtx 
CDF_calPhaCtx
 Typedef for struct _CDF_calPhaCtx.
typedef struct
_CDF_cal_std 
CDF_cal_std
 Typedef for struct _CDF_cal_std.
typedef struct
_CDF_cal_ped_statistics 
CDF_cal_ped_statistics
 Typedef for struct _CDF_cal_ped_statistics.
typedef struct
_CDF_cal_refs 
CDF_cal_refs
 Typedef for struct _CDF_cal_refs.
typedef struct
_CDF_cal_prd_log_end_table 
CDF_cal_prd_log_end_table
 Typedef for struct _CDF_cal_ped_log_end_table.
typedef struct
_CDF_cal_prd_log 
CDF_cal_prd_log
 Typedef for struct _CDF_cal_ped_log_table.
typedef union
_CDF_cal_prd_layer 
CDF_cal_prd_layer
 Typedef for union _CDF_cal_ped_prd_layer.
typedef union
_CDF_cal_prd_tower 
CDF_cal_prd_tower
 Typedef for union _CDF_cal_ped_prd.
typedef struct
_CDF_cal_prd 
CDF_cal_prd
 Typedef for struct _CDF_cal_prd.
typedef struct
_CDF_cal_com 
CDF_cal_com
 Typedef for struct _CDF_cal_com.
typedef struct
_CDF_cal_ped 
CDF_cal_ped
 Typedef for CDF_cal_ped.
typedef struct _CDF_cal CDF_cal
 Typedef for struct _CDF_cal.

Enumerations

enum  _CDF_calScheme {
  CDF_CAL_SCHEME_K_ADDRESS_LIST = 0,
  CDF_CAL_SCHEME_K_QUAD_TREE_POSITIVE = 2,
  CDF_CAL_SCHEME_K_QUAD_TREE_NEGATIVE = 3
}
 Enumerates the different tower level address packing schemes. More...
enum  _CDF_calSchemeSize {
  CDF_CAL_SCHEME_S_ADDRESS_LIST = 1,
  CDF_CAL_SCHEME_S_QUAD_TREE = 2,
  CDF_CAL_SCHEME_S_QUAD_TREE_POSITIVE = 2,
  CDF_CAL_SCHEME_S_QUAD_TREE_NEGATIVE = 2
}
 Enumerates the different tower level address packing schemes sizes, in bits. More...

Functions

unsigned int CDF_cal_copy (CDF_cal *cdf, unsigned int *buf, unsigned int pos, const EBF_dir *dir)
 Makes a straight copy of the CAL data. This is usually only used when the data is not in a form that the sophisticated compression routines expect.


Detailed Description

Compress structures for the CAL contribution.

Author:
JJRussell - russell@slac.stanford.edu
    CVS $Id: CDF_cal_def.h,v 1.3 2006/11/19 22:28:29 russell Exp $


Define Documentation

#define CDF_CAL_PED_N_MAX

The maximum number of CAL compression histograms.

Currently there are two methods of sorting the channel by channel deviations from the mean. The first is by the range. The idea here is that the width of the distribution is highly correlated with the range.

The other method makes no assumptions and calculates the width of the distribution for each channel. The channels are then grouped by like widths.

The second method is likely more stable, but the width calculation is more expensive (nominally on the SUN by a factor of 3-4) and is a non-neglegible contribution to the total time.


Typedef Documentation

CDF_calPhaLz

Typedef for struct _CDF_calPhaLz.

The largest/smallest of +/- the logs is computed. The difference between the largest and smallest (always a postive number is then calculate. This difference and the largest ADC value are then encoded as a number of leading zeroes (the exponent) and the rest (the mantissa

CDF_calScheme

Typedef for enum _CDF_calScheme.

The hit addresses for each tower can be compressed according to one of three packing schemes. The selection of which scheme is determine by the compress routine based on minimal size. The decompressor only needs to know which scheme was employed, having no need to know why it was chosen.
These three schems are
  1. List of addresses
  2. Quad tree representation of the postive image
  3. Quad tree representation of the negative image
Roughly speaking
  1. Address list works best on sparsely populated towers (< 8 hits)
  2. Positive quad tree works best on higher populated towers (roughly 8 - 38 hits)
  3. Negative quad tree works bess on very highly populated towers ( > 38 hits)

CDF_calSchemeSize

Typedef for enum _CDF_calSchemeSize.

See also:
CDF_calScheme
This enumerates the number of bits it takes to specify a particular packing scheme.


Enumeration Type Documentation

enum _CDF_calScheme

Enumerates the different tower level address packing schemes.

Enumerator:
CDF_CAL_SCHEME_K_ADDRESS_LIST  By address list
CDF_CAL_SCHEME_K_QUAD_TREE_POSITIVE  By positive quad tree
CDF_CAL_SCHEME_K_QUAD_TREE_NEGATIVE  By negative quad tree

enum _CDF_calSchemeSize

Enumerates the different tower level address packing schemes sizes, in bits.

Enumerator:
CDF_CAL_SCHEME_S_ADDRESS_LIST  Takes 1 bit, binary 0
CDF_CAL_SCHEME_S_QUAD_TREE  Quad tree takes 2 bits either 10 or 11
CDF_CAL_SCHEME_S_QUAD_TREE_POSITIVE  Takes 2 bits, binary 10
CDF_CAL_SCHEME_S_QUAD_TREE_NEGATIVE  Takes 2 bits, binary 11


Function Documentation

unsigned int CDF_cal_copy ( CDF_cal cdf,
unsigned int *  buf,
unsigned int  pos,
const EBF_dir *  dir 
)

Makes a straight copy of the CAL data. This is usually only used when the data is not in a form that the sophisticated compression routines expect.

Returns:
The updated write bit position
Parameters:
cdf The CAL compression data formatting handle
buf The output buffer
pos The position of the next bit to fill
dir The directory describing the event to be formatted


Generated on Mon Jul 26 13:00:48 2010 by  doxygen 1.5.3