GLAST/LAT > DAQ and FSW > FSW > Doxygen Index > EDS / V2-10-0
Constituent: eds     Tag: mv2304
#include "EDS/EDA_tkr.h"
#include "EDS/EDS_endianness.h"
Classes | |
struct | _EDR_tkrCluster |
Defines a track cluster as consisting of the center of the cluster, its width and the ladder gap correction factor. More... | |
struct | _EDR_tkrLayer |
Information about the hit strips in one layer. More... | |
struct | _EDR_tkrTower |
Structure containing the unpacked TKR data for this tower. More... | |
struct | _EDR_tkr |
Structure containing the unpacked TKR data for all towers. More... | |
Defines | |
#define | EDR_TKR_K_CLUSTERS_MAX (EDA_TKR_K_STRIPS_MAX) |
The maximum number of clusters a given event can have. | |
#define | EDR_TKR_K_CLUSTERS_PER_LAYER_MAX (EDA_TKR_K_STRIPS_PER_LAYER_MAX) |
The maximum number of clusters a given event can have. | |
#define | EDR_TKRCLUSTER_BUILD(_strip, _width, _corr) |
Macro to be a 32-bit word representing an EDR_tkrCluster. | |
#define | EDR_TKR_TWRMAP_INIT 0x80000000 |
Value of the tower map for tower 0. | |
#define | EDR_TKR_TWRMAP(_twrNum) (EDR_TKR_TWRMAP_INIT >> (_twrNum)) |
Constructs the appropriate bit mask for the twrMap field in the EDR_tkr structure. | |
Typedefs | |
typedef struct _EBF_dir | EBF_dir |
Typedef for struct _EBF_directory. | |
typedef struct _EDR_tkrCluster | EDR_tkrCluster |
The internal representation of a cluster of strips. | |
typedef signed int | EDR_tkrStrip |
The internal representation of a strip address. | |
typedef enum _EDR_TKRCLUSTER_S | EDR_TKRCLUSTER_S |
Typedef for enum _EDR_TKRCLUSTER_S. | |
typedef enum _EDR_TKRCLUSTER_V | EDR_TKRCLUSTER_V |
Typedef for enum _EDR_TKRCLUSTER_V. | |
typedef enum _EDR_TKRCLUSTER_M | EDR_TKRCLUSTER_M |
Typedef for enum _EDR_TKRCLUSTER_M. | |
typedef struct _EDR_tkrLayer | EDR_tkrLayer |
Typedef for struct _EDR_tkrLayer. | |
typedef enum _EDR_TKRLAYER_TOTS_K | EDR_TKRLAYER_TOTS_K |
Typedef for EDR_TKRLAYER_TOTS_K. | |
typedef enum _EDR_TKRLAYER_ERR_M | EDR_TKRLAYER_ERR_M |
Typedef for EDR_TKRLAYER_ERR_M. | |
typedef enum _EDR_TKRLAYER_HILO_M | EDR_TKRLAYER_HILO_M |
Typedef for EDR_TKR_LAYER_END_M. | |
typedef struct _EDR_tkrTower | EDR_tkrTower |
Typedef for struct _EDR_tkrTower. | |
typedef struct _EDR_tkr | EDR_tkr |
Typedef for struct _EDR_tkr. | |
typedef enum _EDR_TKR_M | EDR_TKR_M |
Typedef for enum _EDR_TKR_M. | |
Enumerations | |
enum | _EDR_TKRCLUSTER_S { EDR_TKRCLUSTER_S_STRIP = 16, EDR_TKRCLUSTER_S_WIDTH = 8, EDR_TKRCLUSTER_S_CORR = 8 } |
Defines the size, in bits, of the fields of an EDR_tkrCluster. More... | |
enum | _EDR_TKRCLUSTER_V { EDR_TKRCLUSTER_V_STRIP = 0, EDR_TKRCLUSTER_V_WIDTH = 16, EDR_TKRCLUSTER_V_CORR = 24 } |
Defines the right justified bit offset of the fields of an EDR_tkrCluster. More... | |
enum | _EDR_TKRCLUSTER_M { EDR_TKRCLUSTER_M_STRIP = (1 << EDR_TKRCLUSTER_S_STRIP) - 1, EDR_TKRCLUSTER_M_WIDTH = (1 << EDR_TKRCLUSTER_S_WIDTH) - 1, EDR_TKRCLUSTER_M_CORR = (1 << EDR_TKRCLUSTER_S_CORR ) - 1 } |
Defines the in place masks of the fields of an EDR_tkrCluster. More... | |
enum | _EDR_TKRLAYER_TOTS_K { EDR_TKRLAYER_TOTS_K_LO = 0x0, EDR_TKRLAYER_TOTS_K_HI = 0x1 } |
Enumeration of the value used to index the tots field of EDR_tkrLayer structure. | |
enum | _EDR_TKRLAYER_ERR_M { EDR_TKRLAYER_ERR_M_ORDER = 0x1, EDR_TKRLAYER_ERR_M_INVALID = 0x2 } |
Enumeration of the bits in the err field of EDR_tkrLayer structure. | |
enum | _EDR_TKRLAYER_HILO_M { EDR_TKRLAYER_HILO_M_LO = 0x1, EDR_TKRLAYER_HILO_M_HI = 0x2, EDR_TKRLAYER_HILO_M_BOTH = 0x3 } |
Enumeration of the masks used to test the hiLo field member of the EDR_tkrLayer structure for the present of the lo, hi or both layer ends. | |
enum | _EDR_TKR_M { EDR_TKR_M_STRIPS_ALL = 0xffff0000, EDR_TKR_M_TOTS_ALL = 0x0000ffff, EDR_TKR_M_ALL = 0xffffffff } |
Convenience symbols for determining which towers had their strips/TOTs unpacked. More... | |
Functions | |
static __inline int | EDR__tkrTowerNstrips (const EDR_tkrTower *twr) |
Get the number of strips hit in this tower. | |
static __inline unsigned int | EDR__tkrTwrMapStrips (unsigned int twrMap) |
Returns the left justified map of towers that with hit strips. | |
static __inline unsigned int | EDR__tkrTwrMapTots (unsigned int twrMap) |
Returns the left justified map of towers that with hit strips. |
CVS $Id: EDR_tkr.h,v 1.7 2009/04/29 17:40:31 russell Exp $
#define EDR_TKR_TWRMAP | ( | _twrNum | ) | (EDR_TKR_TWRMAP_INIT >> (_twrNum)) |
Constructs the appropriate bit mask for the twrMap field in the EDR_tkr structure.
_twrNum | The tower number |
#define EDR_TKR_TWRMAP_INIT 0x80000000 |
Value of the tower map for tower 0.
#define EDR_TKRCLUSTER_BUILD | ( | _strip, | |||
_width, | |||||
_corr | ) |
Value:
((_strip << EDR_TKRCLUSTER_V_STRIP) | \ (_width << EDR_TKRCLUSTER_V_WIDTH) | \ (_corr << EDR_TKRCLUSTER_V_CORR ))
_strip | The strip number | |
_width | The width of the cluster, (technically the width - 1) | |
_corr | The ladder gap correction |
Typedef for struct _EDR_tkr.
Typedef for struct _EDR_tkrLayer.
This structure captures information about the hit strips in a layer. In a concession to efficiency, the map (actually a bit list) represents the list of unused hits. Technically, one should not mix up the information about the hits in a layer, which really should be read-only after it is initially filled, with the dynamics of pattern recognition.
Note also that this structure is laid out to occupy 4 32 words. This allows one to randomly access the layers in a tower using a shift instead of a multiple.
Typedef for struct _EDR_tkrTower.
enum _EDR_TKR_M |
enum _EDR_TKRCLUSTER_M |
enum _EDR_TKRCLUSTER_S |
enum _EDR_TKRCLUSTER_V |
static __inline int EDR__tkrTowerNstrips | ( | const EDR_tkrTower * | twr | ) | [static] |
Get the number of strips hit in this tower.
twr | The target tower |
static __inline unsigned int EDR__tkrTwrMapStrips | ( | unsigned int | twrMap | ) | [static] |
Returns the left justified map of towers that with hit strips.
static __inline unsigned int EDR__tkrTwrMapTots | ( | unsigned int | twrMap | ) | [static] |
Returns the left justified map of towers that with hit strips.