fobToHV
1) Variables and update frequency:
```
octet fob; /* fob 1-96 */
octet cable; /* HV cable 1 - 32 */
octet board; /* HV board 0 - 2 */
octet channel; /* HV channel on board 1 - 11 */
```
Update frequency:
A few times per year. In 2022 it has changed twice so far.
2) idl structure
```
/* fobToHV.idl
*
* Table: fobToHV
*
* description: // sTGC (ftt) map from FOB to HV
*
*/
struct fobToHV {
octet fob[96]; /* fob 1-96 */
octet cable[96]; /* HV cable 1 - 32 */
octet board[96]; /* HV board 0 - 2 */
octet channel[96]; /* HV channel on board 1 - 11 */
};
```
3) non-indexed, update entire database each time.
4) size of structure: 384
5) jdb
fobToStation
1) Variables and update frequency:
```
octet fob; /* fob 1-96 */
octet station; /* HV cable 18 - 35 */
```
Update frequency:
A few times per year. In 2022 it has changed once so far.
2) idl structure
```
/* fobToStation.idl
*
* Table: fobToStation
*
* description: // sTGC (ftt) map from FOB to Station
*
*/
struct fobToStation {
octet fob[96]; /* fob 1-96 */
octet station[96]; /* station identifier 1 - 35 */
};
```
3) non-indexed, update entire database each time.
4) size of structure: 192
5) jdb
DATA WINDOWS
1) Variables and update frequency
```
octet uuid; /* fob(1-96) x vmm(1-4) = index 1 - 384 */
octet mode /* 0 = timebin, 1 = bcid */
short min; /* time window min > -32768 */
short max; /* time window max < 32768 */
short anchor; /* calibrated time anchor for BCID */
```
Update frequency:
Every single run.
This is essentially a status table which defines a few things:
uuid: identifies the VMM
mode: time mode to use for determining good data ranges (e.g. 0 OFF, 1 use timebin, 2 use bcid, etc)
min, max: define time window in timebins or bcids
anchor: calibrated bcid=0 for each VMM - changes every run
2) IDL structure
```
/* fttDataWindows.idl
*
* Table: fttDataWindows
*
* description: // sTGC (ftt) data time windows
*
*/
struct fttDataWindows {
octet uuid[385]; /* fob(1-96) x vmm(1-4) = index 1 - 384 */
octet mode[385]; /* 0 = timebin, 1 = bcid */
short min[385]; /* time window min > -32768 */
short max[385]; /* time window max < 32768 */
short anchor[385]; /* calibrated time anchor for BCID */
};
```
3) non-indexed, update entire database each time.
4) size of structure: 3080 bytes
5) jdb
1) Variables and update frequency:
Row_num
FEB_num
VMM_num
VMM_ch
strip_ch
Very rare update - stores a hardware map which is static unless there is a mistake discovered or a hardware failure that requires remapping. May be updated < 10 times in next few years.
2) IDL structure:
```
/* fttHardwareMap.idl
*
* Table: fttHardwareMap
*
* description: // sTGC (ftt) hardware map
*
*/
struct fttHardwareMap {
octet feb[1251]; /* 1-6 */
octet vmm[1251]; /* 1-4 */
octet row[1251]; /* 0-4 */
octet vmm_ch[1251]; /* 0-64 */
octet strip[1251]; /* 0-166*/
};
```
3) I am always a little confused about this. Updates rare, expect 1250 rows each with the structure above
4) size of structure
5 bytes * 1251 array lengths
Total size = 6255bytes
5) jdb