00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023 #ifndef RECFORMATS_HH
00024 #define RECFORMATS_HH
00025
00026
00027 #define classname(x) x ## V1P0 //embed version number in bank name
00028
00029 #include <sys/types.h>
00030 #include "StDaqLib/GENERIC/RecHeaderFormats.hh"
00031
00032
00033 #define VARLENGTH 1
00034
00035
00036 struct classname(Bank_TPCP): public Bank
00037 {
00038 Pointer HyperSector[24];
00039
00040
00041 };
00042
00043
00044 struct classname(Bank_TPCSECP) : public Bank
00045 {
00046 Pointer RcvBoard[12];
00047
00048 };
00049
00050
00051 struct classname(Bank_TPCRBP) : public Bank
00052 {
00053 Pointer Mz[3];
00054 char FiberHeader[64];
00055
00056 int swap();
00057 };
00058
00059
00060 struct classname(Bank_TPCMZP) : public Bank
00061 {
00062 Pointer TPCADCD;
00063 Pointer TPCSEQD;
00064 Pointer TPCADCX;
00065 Pointer TPCPADK;
00066 Pointer TPCCPPR;
00067 Pointer TPCADCR;
00068 Pointer TPCMZCLD;
00069 Pointer TPCCFGR;
00070 Pointer TPCPEDR;
00071 Pointer TPCRMSR;
00072 Pointer TPCGAINR;
00073 Pointer TPCBADR;
00074 };
00075
00076
00077
00078
00079
00080 struct classname(Bank_TPCADCD) : public Bank
00081 {
00082 char ADC[VARLENGTH];
00083 int swap();
00084 };
00085
00086
00087 struct classname(Bank_TPCADCR) : public Bank
00088 {
00089 char ADC[VARLENGTH];
00090 int swap();
00091 };
00092
00093 struct Coordinates
00094 {
00095 u_char pad_row;
00096 u_char pad;
00097 };
00098
00099
00100 struct classname(Bank_TPCPADK) : public Bank
00101 {
00102 INT32 bpADC;
00103 INT32 bpCPP;
00104 INT32 bpPED;
00105 INT32 bpRMS;
00106 INT32 bpCFG;
00107 INT32 bpGAIN;
00108 Coordinates index[384];
00109
00110 int swap();
00111 };
00112
00113 struct ADCX_entry
00114 {
00115 INT32 pad_row;
00116 INT32 TPCADCD_offset;
00117 INT32 TPCSEQD_offset;
00118 };
00119
00120
00121 struct classname(Bank_TPCADCX) : public Bank
00122 {
00123 ADCX_entry entry[VARLENGTH];
00124 };
00125
00126
00127 struct CPPR_entry
00128 {
00129 INT16 start_time_bin;
00130 INT16 stop_time_bin;
00131 };
00132
00133
00134 struct classname(Bank_TPCCPPR) : public Bank
00135 {
00136 ASIC_params asic_params;
00137 CPPR_entry entry[12288];
00138
00139 int swap();
00140 };
00141
00142
00143
00144 struct classname(Bank_TPCSEQD) : public Bank
00145 {
00146 INT16 sequence[VARLENGTH];
00147
00148 int swap();
00149 };
00150
00151
00152 struct classname(Bank_TPCCFGR) : public Bank
00153 {
00154 char FEE_id[384];
00155
00156 int swap();
00157 };
00158
00159 struct BADR_entry
00160 {
00161 u_char row;
00162 u_char pad;
00163 };
00164
00165
00166 struct classname(Bank_TPCBADR) : public Bank
00167 {
00168 BADR_entry badChannel[VARLENGTH];
00169 int swap();
00170 };
00171
00172 struct classname(Bank_TPCPEDR) : public Bank
00173 {
00174 INT32 NumEvents;
00175 char pedestal[196608];
00176
00177 int swap();
00178 };
00179
00180 struct classname(Bank_TPCRMSR) : public Bank
00181 {
00182 INT32 NumEvents;
00183 char pedRMSt16[196608];
00184
00185 int swap();
00186 };
00187
00188 struct GAINR_entry
00189 {
00190 INT16 t0t16;
00191 char t0_RMSt16;
00192 char rel_gaint64;
00193 };
00194
00195 struct classname(Bank_TPCGAINR) : public Bank
00196 {
00197 INT32 NumEvents;
00198 INT32 MeanGain;
00199 GAINR_entry Gain[384];
00200
00201 int swap();
00202 };
00203
00204 #endif
00205
00206
00207