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