- fpsConstant.idl (1 row) : Basic constants
struct fpsConstant {
unsigned short nQuad; /* 4 */
unsigned short nLayer; /* 3 */
unsigned short maxSlat; /* 21 */
unsigned short maxQTaddr; /* 8 */
unsigned short maxQTch; /* 32 */
};
- fpsChannelGeometry.idl (12 rows) : Number of slats for each Quad & Layer
struct fpsChannelGeometry {
unsigned short quad; /* 1=Q1(South Top), 2=Q2(South Bottom),3=Q3(North Top), 4=Q4(North Bottom) */
unsigned short layer; /* 1=layer1, 2=layer2, 3=layer3 */
unsigned short nslat; /* # of slat (19,20 or 21) */
};
- fpsSlatId.idl (252 rows) : Slat Id to Quad & Layer & Slat#
struct fpsSlatId {
unsigned short slatid; /* 0-251: slat Id = (quad-1)*nLayer*maxSlat + (layer-1)*maxSlat + (Slat-1)*/
unsigned short quad; /* 1-4, 0 for none-exsistant slat */
unsigned short layer; /* 1-3, 0 for none-exsistant slat */
unsigned short slat; /* 1-21, 0 for none-exsistant slat */
};
- fpsPosition.idl (252 rows) : Detector dimensions and positions
struct fpsPosition {
unsigned short slatid; /* 0-251: slat Id = (quad-1)*nLayer*maxSlat + (layer-1)*maxSlat + (slat-1)*/
float xwidth; /* x width (cm) */
float ywidth; /* y width (cm) */
float zwidth; /* z width/thickness (cm) */
float xoffset; /* xoffset from beam line to cetner of detector (cm) */
float yoffset; /* yoffset from beam line to center of detector (cm) */
float zoffset; /* z position from IR (cm) */
};
- fpsMap.idl : QT map (252 rows) :
struct fpsMap {
unsigned short slatid; /* 0-251: slat Id = (quad-1)*nLayer*maxSlat + (layer-1)*maxSlat + (slat-1)*/
short QTaddr; /* 0-7 : QT Address */
short QTch; /* 0-31 : QT channel */
};