GLAST/LAT > DAQ and FSW > FSW > Doxygen Index > RIM / V0-0-5

Constituent: rim     Tag: sun-gcc


Interface   Data Structures   File List   Data Fields   Globals  

latp.h File Reference

Structures and functions used to generate a list of register addresses and value/destinations to load/read. More...

#include "RIM/rim.h"

Include dependency graph for latp.h:

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


Data Structures

struct  RIM_errorInfo
 Information used to record a read error occured. More...

Typedefs

typedef void( RIM_decodeFn )(unsigned short *pkt, void *ptr)
 Function that Decodes the response from one type of LAT register.
typedef unsigned( RIM_loadFn )(void *param, const RIM_addr *addr, unsigned regId, const void *value)
 Function that Loads one type of LAT register.
typedef unsigned( RIM_readFn )(void *param, const RIM_addr *addr, unsigned regId, RIM_decodeFn *decodeFn, void *dst, const RIM_errorInfo *info)
 Function that Reads one type of LAT register.

Functions

unsigned RIM_read (RIM *rim, void *param, RIM_readFn **readFn, RIM_decodeFn **decodeFn, const RIM_map *ign)
 Populate the RIM structure with the current state of the LAT.
unsigned RIM_load (RIM *rim, void *param, RIM_loadFn **loadFn)
 Loads the LAT with the configuration held in imm.
unsigned RIM_loadCFE (RIM *rim, unsigned val, unsigned mask, unsigned shift, unsigned regId, void *param, RIM_loadFn **loadFn)
 Load one of the CFE registers with a modified version of the value from the LAT configuration, with some portion of the register replaced by the val suitably masked and shifted.
unsigned RIM_loadCFEmask (RIM *rim, unsigned mask, void *param, RIM_loadFn **loadFn)
 Load one of the CFE registers with a modified version of the value from the LAT configuration, with some portion of the register replaced by the val suitably masked and shifted.
void RIM_setSPT (void *ptr, unsigned short value, unsigned isHigh)
 Decode the result item use to populate a split.
unsigned RIM_loadTDC (RIM *rim, unsigned val, unsigned mask, unsigned shift, unsigned regId, void *param, RIM_loadFn **loadFn)
 Load one of the TFE registers with a modified version of the value from the LAT configuration, with some portion of the register replaced by the val suitably masked and shifted.
unsigned RIM_enableAllAFE (RIM *rim, void *param, RIM_loadFn **loadFn)
 Enable all channels of the ACD for charge injection calibration.
unsigned RIM_disableAllAFE (RIM *rim, void *param, RIM_loadFn **loadFn)
 Disable all channels of the ACD for charge injection calibration.
unsigned RIM_enableAFE (RIM *rim, unsigned rc, unsigned fe, void *param, RIM_loadFn **loadFn)
 Enable one channel of the ACD for charge injection calibration.

Detailed Description

Structures and functions used to generate a list of register addresses and value/destinations to load/read.

Author:
James Swain -- jswain@slac.stanford.edu

Function Documentation

unsigned RIM_disableAllAFE RIM rim,
void *  param,
RIM_loadFn **  loadFn
 

Disable all channels of the ACD for charge injection calibration.

Parameters:
rim Pointer to the cached in-memory model of the LAT registers
param Parameter passed through to the load function
loadFn Type ordered array of functions that load a given type of LAT register
param Parameter passed through to the load function

unsigned RIM_enableAFE RIM rim,
unsigned  rc,
unsigned  fe,
void *  param,
RIM_loadFn **  loadFn
 

Enable one channel of the ACD for charge injection calibration.

Parameters:
rim Pointer to the cached in-memory model of the LAT registers
rc ID of the FREE board holding the channel to enable
fe ID of the channel to enable
param Parameter passed through to the load function
loadFn Type ordered array of functions that load a given type of LAT register

unsigned RIM_enableAllAFE RIM rim,
void *  param,
RIM_loadFn **  loadFn
 

Enable all channels of the ACD for charge injection calibration.

Parameters:
rim Pointer to the cached in-memory model of the LAT registers
loadFn Type ordered array of pointers to functions that load the LAT registers
param Parameter passed through to the load function

unsigned RIM_load RIM rim,
void *  param,
RIM_loadFn **  loadFn
 

Loads the LAT with the configuration held in imm.

Parameters:
rim Pointer to the RIM structure to populate from the LAT
param Pointer passed through to the loadRegFn
loadFn Type ordered array of pointers to functions that load the LAT registers

unsigned RIM_loadCFE RIM rim,
unsigned  val,
unsigned  mask,
unsigned  shift,
unsigned  regId,
void *  param,
RIM_loadFn **  loadFn
 

Load one of the CFE registers with a modified version of the value from the LAT configuration, with some portion of the register replaced by the val suitably masked and shifted.

Parameters:
rim Pointer to the cached in-memory model of the LAT registers
val Value to use in place of some part of one of the CFE registers
mask Bit mask of the fields of the register being replaced
shift Offset into the register of the LSB of the value
regId The register ID (from LEM/defs.h) of the register being manipulated
param Parameter passed through to the load function
loadFn Type ordered array of pointers to functions that load the LAT registers

unsigned RIM_loadCFEmask RIM rim,
unsigned  mask,
void *  param,
RIM_loadFn **  loadFn
 

Load one of the CFE registers with a modified version of the value from the LAT configuration, with some portion of the register replaced by the val suitably masked and shifted.

Parameters:
rim Pointer to the cached in-memory model of the LAT registers
mask CFEs to enable for calibration
param Parameter passed through to the load function
loadFn Type ordered array of pointers to functions that load the LAT registers
Return values:
RIM_SUCCESS if all goes well

unsigned RIM_loadTDC RIM rim,
unsigned  val,
unsigned  mask,
unsigned  shift,
unsigned  regId,
void *  param,
RIM_loadFn **  loadFn
 

Load one of the TFE registers with a modified version of the value from the LAT configuration, with some portion of the register replaced by the val suitably masked and shifted.

Parameters:
rim Pointer to the in-memory model holding the LAT registers
val Value to use in place of some part of one of the TFE registers
mask Bit mask of the fields of the register being replaced
shift Offset into the register of the LSB of the value
regId The register ID (from LEM/defs.h) of the register being manipulated
loadFn Type ordered array of pointers to functions that load the LAT registers
param Parameter passed through to the load function

unsigned RIM_read RIM rim,
void *  param,
RIM_readFn **  readFn,
RIM_decodeFn **  decodeFn,
const RIM_map ign
 

Populate the RIM structure with the current state of the LAT.

Parameters:
rim Pointer to the RIM structure to populate from the LAT
param Pointer passed through to the readRegFn
readFn Type ordered array of pointers to functions that read the LAT registers
decodeFn Type ordered array of pointers to functions that decode the register responses
ign Map of the sections of the LAT known to be bad or not present so can be ignored.

void RIM_setSPT void *  ptr,
unsigned short  value,
unsigned  isHigh
 

Decode the result item use to populate a split.

Parameters:
ptr Pointer to memory location to put decoded value
value One of the split fields
isHigh Indicates which of the split fields this is


Generated on Mon Aug 7 21:24:27 2006 by  doxygen 1.4.4