TurfRate.cxx
1 
9 #include "TurfRate.h"
10 #include "AnitaPacketUtil.h"
11 #include <iostream>
12 #include <fstream>
13 #include <cstring>
14 
15 ClassImp(TurfRate);
16 
18 {
19  //Default Constructor
20 }
21 
23  //Default Destructor
24 }
25 
26 
27 TurfRate::TurfRate(Int_t trun, Int_t trealTime, TurfRateStruct_t *turfPtr)
28 {
29  simplePacketCheck(&(turfPtr->gHdr),PACKET_TURF_RATE);
30 
31  run=trun;
32  realTime=trealTime;
33  payloadTime=turfPtr->unixTime;
34  ppsNum=turfPtr->ppsNum;
35  deadTime=turfPtr->deadTime;
36  c3poNum=turfPtr->c3poNum; // it seems this was not included!
37  for(int i=0;i<PHI_SECTORS;i++) {
38  l3Rates[i]=turfPtr->l3Rates[i];
39  l2Rates[i]=turfPtr->l2Rates[i];
40  l3RatesH[i]=0;
41  l2RatesH[i]=0;
42  l3RatesGated[i]=turfPtr->l3RatesGated[i];
43  }
44  memcpy(reserved,turfPtr->reserved,sizeof(UChar_t)*3);
45  l2TrigMask=turfPtr->l2TrigMask;
46  phiTrigMask=turfPtr->phiTrigMask;
47  l2TrigMaskH=turfPtr->l2TrigMask;
48  phiTrigMaskH=turfPtr->phiTrigMask;
49  errorFlag=turfPtr->errorFlag;
50  refPulses=turfPtr->refPulses;
51  intFlag=0;
52 }
53 
54 
55 
56 
57 TurfRate::TurfRate(Int_t trun, Int_t trealTime, TurfRateStructVer41_t *turfPtr)
58 {
59  simplePacketCheck(&(turfPtr->gHdr),PACKET_TURF_RATE);
60 
61  run=trun;
62  realTime=trealTime;
63  payloadTime=turfPtr->unixTime;
64  ppsNum=turfPtr->ppsNum;
65  deadTime=turfPtr->deadTime;
66  c3poNum=turfPtr->c3poNum;
67  for(int i=0;i<PHI_SECTORS;i++) {
68  l3Rates[i]=turfPtr->l3Rates[i];
69  l3RatesH[i]=0;
70  l2Rates[i]=turfPtr->l1Rates[i];
71  l2RatesH[i]=0;
72  l3RatesGated[i]=turfPtr->l3RatesGated[i];
73  }
74  rfScaler=turfPtr->rfScaler;
75  refPulses=turfPtr->refPulses;
76  l2TrigMask=turfPtr->l1TrigMask;
77  l2TrigMaskH=turfPtr->l1TrigMask;
78  phiTrigMaskH=turfPtr->phiTrigMask;
79  // l1TrigMaskH=0;
80  phiTrigMask=turfPtr->phiTrigMask;
81  // phiTrigMaskH=0;
82  errorFlag=turfPtr->errorFlag;
83  intFlag=0;
84 }
85 
86 
87 
88 
89 TurfRate::TurfRate(Int_t trun, Int_t trealTime, TurfRateStructVer40_t *turfPtr)
90 {
91 
92  if(turfPtr->gHdr.code!=PACKET_TURF_RATE ||
93  turfPtr->gHdr.verId!=VER_TURF_RATE ||
94  turfPtr->gHdr.numBytes!=sizeof(TurfRateStructVer40_t)) {
95  std::cerr << "Mismatched packet:\t" << packetCodeAsString(PACKET_TURF_RATE) << "Ver40\n"
96  << "code:\t" << (int)turfPtr->gHdr.code << "\t" << PACKET_TURF_RATE
97  << "\nversion:\t" << (int)turfPtr->gHdr.verId
98  << "\t" << 40
99  << "\nsize:\t" << turfPtr->gHdr.numBytes << "\t"
100  << sizeof(TurfRateStruct_t) << std::endl;
101  }
102 
103  run=trun;
104  realTime=trealTime;
105  payloadTime=turfPtr->unixTime;
106  ppsNum=turfPtr->ppsNum;
107  deadTime=turfPtr->deadTime;
108  c3poNum=turfPtr->c3poNum; // it seems this was not included!
109  for(int i=0;i<PHI_SECTORS;i++) {
110  l3Rates[i]=turfPtr->l3Rates[i][0];
111  l2Rates[i]=turfPtr->l1Rates[i][0];
112  l3RatesH[i]=0;
113  l2RatesH[i]=0;
114  }
115  l2TrigMask=turfPtr->l1TrigMask;
116  phiTrigMask=turfPtr->phiTrigMask;
117  l2TrigMaskH=turfPtr->l1TrigMask;
118  phiTrigMaskH=turfPtr->phiTrigMask;
119  errorFlag=turfPtr->errorFlag;
120  memcpy(reserved,turfPtr->reserved,sizeof(UChar_t)*3);
121  intFlag=0;
122 }
123 
124 
125 TurfRate::TurfRate(Int_t trun, Int_t trealTime, TurfRateStructVer35_t *turfPtr)
126 {
127 
128  if(turfPtr->gHdr.code!=PACKET_TURF_RATE ||
129  turfPtr->gHdr.verId!=VER_TURF_RATE ||
130  turfPtr->gHdr.numBytes!=sizeof(TurfRateStructVer34_t)) {
131  std::cerr << "Mismatched packet:\t" << packetCodeAsString(PACKET_TURF_RATE) << "Ver34\n"
132  << "code:\t" << (int)turfPtr->gHdr.code << "\t" << PACKET_TURF_RATE
133  << "\nversion:\t" << (int)turfPtr->gHdr.verId
134  << "\t" << 34
135  << "\nsize:\t" << turfPtr->gHdr.numBytes << "\t"
136  << sizeof(TurfRateStruct_t) << std::endl;
137  }
138 
139  run=trun;
140  realTime=trealTime;
141  payloadTime=turfPtr->unixTime;
142  ppsNum=turfPtr->ppsNum;
143  deadTime=turfPtr->deadTime;
144  c3poNum=turfPtr->c3poNum; // it seems this was not included!
145  // memcpy(l1Rates,turfPtr->l1Rates,sizeof(UShort_t)*PHI_SECTORS*2);
146  // memcpy(upperL2Rates,turfPtr->upperL2Rates,sizeof(UChar_t)*PHI_SECTORS);
147  // memcpy(lowerL2Rates,turfPtr->lowerL2Rates,sizeof(UChar_t)*PHI_SECTORS);
148  for(int i=0;i<PHI_SECTORS;i++)
149  {
150  l3Rates[i]=turfPtr->l3Rates[i][0];
151  l3RatesH[i]=turfPtr->l3Rates[i][1];
152  l2Rates[i]=turfPtr->l1Rates[i][0];
153  l2RatesH[i]=turfPtr->l1Rates[i][1];
154  }
155 
156  l2TrigMask=turfPtr->l1TrigMask;
157  l2TrigMaskH=turfPtr->l1TrigMaskH;
158 
159  phiTrigMask=turfPtr->phiTrigMask;
160  phiTrigMaskH=turfPtr->phiTrigMaskH;
161 
162  errorFlag=turfPtr->errorFlag;
163  intFlag=0;
164 
165 }
166 
167 
168 
169 
170 // TurfRate::TurfRate(Int_t trun, Int_t trealTime, TurfRateStructVer16_t *turfPtr)
171 // {
172 
173 // if(turfPtr->gHdr.code!=PACKET_TURF_RATE ||
174 // turfPtr->gHdr.verId!=16 ||
175 // turfPtr->gHdr.numBytes!=sizeof(TurfRateStructVer16_t)) {
176 // std::cerr << "Mismatched packet:\t" << packetCodeAsString(PACKET_TURF_RATE) << "\n"
177 // << "code:\t" << (int)turfPtr->gHdr.code << "\t" << PACKET_TURF_RATE
178 // << "\nversion:\t" << (int)turfPtr->gHdr.verId
179 // << "\t" << 16
180 // << "\nsize:\t" << turfPtr->gHdr.numBytes << "\t"
181 // << sizeof(TurfRateStructVer16_t) << std::endl;
182 // }
183 
184 // run=trun;
185 // realTime=trealTime;
186 // payloadTime=turfPtr->unixTime;
187 // ppsNum=turfPtr->ppsNum;
188 // deadTime=turfPtr->deadTime;
189 // memcpy(l1Rates,turfPtr->l1Rates,sizeof(UShort_t)*PHI_SECTORS*2);
190 // memcpy(upperL2Rates,turfPtr->upperL2Rates,sizeof(UChar_t)*PHI_SECTORS);
191 // memcpy(lowerL2Rates,turfPtr->lowerL2Rates,sizeof(UChar_t)*PHI_SECTORS);
192 // memcpy(l3Rates,turfPtr->l3Rates,sizeof(UChar_t)*PHI_SECTORS);
193 // memcpy(nadirL1Rates,turfPtr->nadirL1Rates,sizeof(UShort_t)*NADIR_ANTS);
194 // memcpy(nadirL2Rates,turfPtr->nadirL2Rates,sizeof(UChar_t)*NADIR_ANTS);
195 // antTrigMask=turfPtr->antTrigMask;
196 // nadirAntTrigMask=turfPtr->nadirAntTrigMask;
197 // phiTrigMask=turfPtr->phiTrigMask;
198 // phiTrigMaskH=0;
199 // errorFlag=turfPtr->errorFlag;
200 // intFlag=0;
201 
202 // }
203 
204 // TurfRate::TurfRate(Int_t trun, Int_t trealTime, TurfRateStructVer15_t *turfPtr)
205 // {
206 
207 // if(turfPtr->gHdr.code!=PACKET_TURF_RATE ||
208 // turfPtr->gHdr.verId!=15 ||
209 // turfPtr->gHdr.numBytes!=sizeof(TurfRateStructVer15_t)) {
210 // std::cerr << "Mismatched packet:\t" << packetCodeAsString(PACKET_TURF_RATE) << "\n"
211 // << "code:\t" << (int)turfPtr->gHdr.code << "\t" << PACKET_TURF_RATE
212 // << "\nversion:\t" << (int)turfPtr->gHdr.verId
213 // << "\t" << 15
214 // << "\nsize:\t" << turfPtr->gHdr.numBytes << "\t"
215 // << sizeof(TurfRateStructVer15_t) << std::endl;
216 // }
217 
218 // run=trun;
219 // realTime=trealTime;
220 // payloadTime=turfPtr->unixTime;
221 // ppsNum=turfPtr->ppsNum;
222 // deadTime=0;
223 // memcpy(l1Rates,turfPtr->l1Rates,sizeof(UShort_t)*PHI_SECTORS*2);
224 // memcpy(upperL2Rates,turfPtr->upperL2Rates,sizeof(UChar_t)*PHI_SECTORS);
225 // memcpy(lowerL2Rates,turfPtr->lowerL2Rates,sizeof(UChar_t)*PHI_SECTORS);
226 // memcpy(l3Rates,turfPtr->l3Rates,sizeof(UChar_t)*PHI_SECTORS);
227 // memcpy(nadirL1Rates,turfPtr->nadirL1Rates,sizeof(UShort_t)*NADIR_ANTS);
228 // memcpy(nadirL2Rates,turfPtr->nadirL2Rates,sizeof(UChar_t)*NADIR_ANTS);
229 // antTrigMask=turfPtr->antTrigMask;
230 // nadirAntTrigMask=turfPtr->nadirAntTrigMask;
231 // phiTrigMask=turfPtr->phiTrigMask;
232 // phiTrigMaskH=0;
233 // errorFlag=turfPtr->errorFlag;
234 // intFlag=0;
235 // }
236 
237 
238 // TurfRate::TurfRate(Int_t trun, Int_t trealTime, TurfRateStructVer14_t *turfPtr)
239 // {
240 
241 // if(turfPtr->gHdr.code!=PACKET_TURF_RATE ||
242 // turfPtr->gHdr.verId!=14 ||
243 // turfPtr->gHdr.numBytes!=sizeof(TurfRateStructVer14_t)) {
244 // std::cerr << "Mismatched packet:\t" << packetCodeAsString(PACKET_TURF_RATE) << "\n"
245 // << "code:\t" << (int)turfPtr->gHdr.code << "\t" << PACKET_TURF_RATE
246 // << "\nversion:\t" << (int)turfPtr->gHdr.verId
247 // << "\t" << 14
248 // << "\nsize:\t" << turfPtr->gHdr.numBytes << "\t"
249 // << sizeof(TurfRateStructVer14_t) << std::endl;
250 // }
251 
252 // run=trun;
253 // realTime=trealTime;
254 // payloadTime=turfPtr->unixTime;
255 // ppsNum=turfPtr->ppsNum;
256 // deadTime=0;
257 // memcpy(l1Rates,turfPtr->l1Rates,sizeof(UShort_t)*PHI_SECTORS*2);
258 // memcpy(upperL2Rates,turfPtr->upperL2Rates,sizeof(UChar_t)*PHI_SECTORS);
259 // memcpy(lowerL2Rates,turfPtr->lowerL2Rates,sizeof(UChar_t)*PHI_SECTORS);
260 // memcpy(l3Rates,turfPtr->l3Rates,sizeof(UChar_t)*PHI_SECTORS);
261 // memcpy(nadirL1Rates,turfPtr->nadirL1Rates,sizeof(UShort_t)*NADIR_ANTS);
262 // memcpy(nadirL2Rates,turfPtr->nadirL2Rates,sizeof(UChar_t)*NADIR_ANTS);
263 // antTrigMask=turfPtr->antTrigMask;
264 // nadirAntTrigMask=turfPtr->nadirAntTrigMask;
265 // phiTrigMask=0;
266 // phiTrigMaskH=0;
267 // errorFlag=0;
268 // intFlag=0;
269 // }
270 
271 // TurfRate::TurfRate(Int_t trun, Int_t trealTime, TurfRateStructVer13_t *turfPtr)
272 // {
273 
274 // if(turfPtr->gHdr.code!=PACKET_TURF_RATE ||
275 // turfPtr->gHdr.verId!=13 ||
276 // turfPtr->gHdr.numBytes!=sizeof(TurfRateStructVer13_t)) {
277 // std::cerr << "Mismatched packet:\t" << packetCodeAsString(PACKET_TURF_RATE) << "\n"
278 // << "code:\t" << (int)turfPtr->gHdr.code << "\t" << PACKET_TURF_RATE
279 // << "\nversion:\t" << (int)turfPtr->gHdr.verId
280 // << "\t" << 13
281 // << "\nsize:\t" << turfPtr->gHdr.numBytes << "\t"
282 // << sizeof(TurfRateStructVer13_t) << std::endl;
283 // }
284 
285 // run=trun;
286 // realTime=trealTime;
287 // payloadTime=turfPtr->unixTime;
288 // ppsNum=turfPtr->ppsNum;
289 // deadTime=0;
290 // memcpy(l1Rates,turfPtr->l1Rates,sizeof(UShort_t)*PHI_SECTORS*2);
291 // memcpy(upperL2Rates,turfPtr->upperL2Rates,sizeof(UChar_t)*PHI_SECTORS);
292 // memcpy(lowerL2Rates,turfPtr->lowerL2Rates,sizeof(UChar_t)*PHI_SECTORS);
293 // memcpy(l3Rates,turfPtr->l3Rates,sizeof(UChar_t)*PHI_SECTORS);
294 // memset(nadirL1Rates,0,sizeof(UShort_t)*NADIR_ANTS);
295 // memset(nadirL2Rates,0,sizeof(UChar_t)*NADIR_ANTS);
296 // antTrigMask=turfPtr->antTrigMask;
297 // nadirAntTrigMask=turfPtr->nadirAntTrigMask;
298 // phiTrigMask=0;
299 // phiTrigMaskH=0;
300 // errorFlag=0;
301 // intFlag=0;
302 // }
303 
304 // TurfRate::TurfRate(Int_t trun, Int_t trealTime, TurfRateStructVer12_t *turfPtr)
305 // {
306 
307 // if(turfPtr->gHdr.code!=PACKET_TURF_RATE ||
308 // turfPtr->gHdr.verId!=12 ||
309 // turfPtr->gHdr.numBytes!=sizeof(TurfRateStructVer12_t)) {
310 // std::cerr << "Mismatched packet:\t" << packetCodeAsString(PACKET_TURF_RATE) << "\n"
311 // << "code:\t" << (int)turfPtr->gHdr.code << "\t" << PACKET_TURF_RATE
312 // << "\nversion:\t" << (int)turfPtr->gHdr.verId
313 // << "\t" << 12
314 // << "\nsize:\t" << turfPtr->gHdr.numBytes << "\t"
315 // << sizeof(TurfRateStructVer12_t) << std::endl;
316 // }
317 
318 // run=trun;
319 // realTime=trealTime;
320 // payloadTime=turfPtr->unixTime;
321 // ppsNum=turfPtr->ppsNum;
322 // deadTime=0;
323 // memcpy(l1Rates,turfPtr->l1Rates,sizeof(UShort_t)*PHI_SECTORS*2);
324 // memcpy(upperL2Rates,turfPtr->upperL2Rates,sizeof(UChar_t)*PHI_SECTORS);
325 // memcpy(lowerL2Rates,turfPtr->lowerL2Rates,sizeof(UChar_t)*PHI_SECTORS);
326 // memcpy(l3Rates,turfPtr->l3Rates,sizeof(UChar_t)*PHI_SECTORS);
327 // memset(nadirL1Rates,0,sizeof(UShort_t)*NADIR_ANTS);
328 // memset(nadirL2Rates,0,sizeof(UChar_t)*NADIR_ANTS);
329 // antTrigMask=0;
330 // nadirAntTrigMask=0;
331 // phiTrigMask=0;
332 // phiTrigMaskH=0;
333 // errorFlag=0;
334 // intFlag=0;
335 // }
336 
337 // TurfRate::TurfRate(Int_t trun, Int_t trealTime, TurfRateStructVer11_t *turfPtr)
338 // {
339 // std::cout << "L1 Rates will be all jumbled up\n";
340 // if(turfPtr->gHdr.code!=PACKET_TURF_RATE ||
341 // turfPtr->gHdr.verId!=11 ||
342 // turfPtr->gHdr.numBytes!=sizeof(TurfRateStructVer11_t)) {
343 // std::cerr << "Mismatched packet:\t" << packetCodeAsString(PACKET_TURF_RATE) << "\n"
344 // << "code:\t" << (int)turfPtr->gHdr.code << "\t" << PACKET_TURF_RATE
345 // << "\nversion:\t" << (int)turfPtr->gHdr.verId
346 // << "\t" << 11
347 // << "\nsize:\t" << turfPtr->gHdr.numBytes << "\t"
348 // << sizeof(TurfRateStructVer11_t) << std::endl;
349 // }
350 
351 // run=trun;
352 // realTime=trealTime;
353 // payloadTime=turfPtr->unixTime;
354 // ppsNum=turfPtr->ppsNum;
355 // deadTime=0;
356 // memcpy(l1Rates,turfPtr->l1Rates,sizeof(UShort_t)*PHI_SECTORS*2);
357 // memcpy(upperL2Rates,turfPtr->upperL2Rates,sizeof(UChar_t)*PHI_SECTORS);
358 // memcpy(lowerL2Rates,turfPtr->lowerL2Rates,sizeof(UChar_t)*PHI_SECTORS);
359 // memcpy(l3Rates,turfPtr->l3Rates,sizeof(UChar_t)*PHI_SECTORS);
360 // memset(nadirL1Rates,0,sizeof(UShort_t)*NADIR_ANTS);
361 // memset(nadirL2Rates,0,sizeof(UChar_t)*NADIR_ANTS);
362 // antTrigMask=0;
363 // nadirAntTrigMask=0;
364 // phiTrigMask=0;
365 // phiTrigMaskH=0;
366 // errorFlag=0;
367 // intFlag=0;
368 // }
369 
370 
371 Int_t TurfRate::getL1Rate(int phi, int ring)
372 {
373  return -1;
374  // if(phi<0 || phi>15) return -1;
375  // switch(ring) {
376  // case AnitaRing::kUpperRing:
377  // case AnitaRing::kLowerRing:
378  // return 16*l1Rates[phi][ring];
379  // case AnitaRing::kNadirRing:
380  // if(phi%2==0)
381  // return 16*nadirL1Rates[phi/2]; //Might need to change handling of nadirs
382  // default:
383  // return -1;
384  // }
385  // return -1;
386 }
387 
388 Int_t TurfRate::getL2Rate(int phi, int ring)
389 {
390 
391  // if(phi<0 || phi>15) return -1;
392  // switch(ring) {
393  // case AnitaRing::kUpperRing:
394  // return 64*upperL2Rates[phi];
395  // case AnitaRing::kLowerRing:
396  // return 64*lowerL2Rates[phi];
397  // case AnitaRing::kNadirRing:
398  // if(phi%2==0)
399  // return 64*nadirL2Rates[phi/2];
400  // default:
401  // return -1;
402  // }
403  return -1;
404 }
405 
407  return -1;
408  // if(phi<0 || phi>15) return -1;
409  // if(phi%2==0)
410  // return 16*nadirL1Rates[phi/2];
411  // else
412  // return 64*nadirL2Rates[phi/2];
413 }
414 
415 //((l3TrigPattern&(1<<(phi))) ? 1 :0);
416 
417 Int_t TurfRate::isPhiMasked(int phi) {
418  if(phi<0 || phi>15) return -1;
419  return ((phiTrigMask & (1<<phi)) ? 1 :0);
420 }
421 
422 Int_t TurfRate::isL2Masked(int phi) {
423  if(phi<0 || phi>15) return -1;
424  return ((l2TrigMask & (1<<phi)) ? 1 :0);
425 }
426 
427 
429  if(phi<0 || phi>15) return -1;
430  return ((phiTrigMaskH & (1<<phi)) ? 1:0);
431 }
432 
433 
434 Int_t TurfRate::isL1Masked(int phi) {
435  if(phi<0 || phi>15) return -1;
436  return ((l2TrigMask & (1<<phi)) ? 1 :0);
437 }
438 Int_t TurfRate::isL1MaskedHPol(int phi) {
439  return -1;
440  if(phi<0 || phi>15) return -1;
441  return ((l2TrigMaskH & (1<<phi)) ? 1:0);
442 }
443 
444 Int_t TurfRate::isAntMasked(int phi, int ring)
445 {
446  return -1;
447 
448  // if(phi<0 || phi>15) return -1;
449  // switch(ring) {
450  // case AnitaRing::kUpperRing:
451  // return ((antTrigMask&(1<<(phi)))?1:0);
452  // case AnitaRing::kLowerRing:
453  // return ((antTrigMask&(1<<(phi+16)))?1:0);
454  // case AnitaRing::kNadirRing:
455  // phi/=2;
456  // return nadirAntTrigMask&(1<<phi);
457  // default:
458  // return -1;
459  // }
460 }
unsigned short ppsNum
It&#39;s only updated every second so no need for sub-second timing.
Definition: oldStructs.h:422
Int_t run
Run number, assigned offline.
Definition: TurfRate.h:38
UChar_t l3Rates[16]
l3 rates (or VPol A3 rates)
Definition: TurfRate.h:52
UChar_t l3RatesH[16]
HPol l3 rates, for A3 compatibility. 0 for A4.
Definition: TurfRate.h:53
UShort_t phiTrigMask
Which phi sectors are masked off (VPol only in A3)?
Definition: TurfRate.h:56
unsigned short l1TrigMask
to get Hz
Definition: oldStructs.h:443
unsigned char errorFlag
Bit 1-4 bufferdepth, Bits 5,6,7 are for upper,lower,nadir trig mask match.
Definition: oldStructs.h:414
unsigned short deadTime
How much were we dead??
unsigned short l1TrigMaskH
As read from TURF (16-bit upper phi, lower phi)
Definition: oldStructs.h:444
unsigned short phiTrigMask
16 bit phi-sector mask
Turf Rates – Telemetered.
Definition: oldStructs.h:402
Int_t isL2Masked(int phi)
Returns 1 if given phi is masked.
Definition: TurfRate.cxx:422
UShort_t l2TrigMask
Which L2 were masked off in A4 (VPol only in A3)
Definition: TurfRate.h:54
unsigned short l1TrigMask
to get Hz
Definition: oldStructs.h:426
TurfRate()
Default constructor.
Definition: TurfRate.cxx:17
UShort_t l2TrigMaskH
Which HPol L2 were masked off in A3 (== l2TrigMask in A4)
Definition: TurfRate.h:55
Int_t getL1Rate(int phi, int ring)
Deprecated.
Definition: TurfRate.cxx:371
UInt_t c3poNum
Number of clock cycles per second.
Definition: TurfRate.h:59
UInt_t realTime
Time in unixTime.
Definition: TurfRate.h:39
Int_t isAntMasked(int phi, int ring)
Deprecated.
Definition: TurfRate.cxx:444
unsigned short deadTime
How much were we dead??
Definition: oldStructs.h:407
unsigned char l3Rates[16][2]
to get Hz
Definition: oldStructs.h:442
Int_t getNadirL12Rate(int phi)
Deprecated.
Definition: TurfRate.cxx:406
UInt_t payloadTime
Time in unixTime.
Definition: TurfRate.h:40
~TurfRate()
Destructor.
Definition: TurfRate.cxx:22
UShort_t l2RatesH[16]
HPol l2 rates (called l1rates in A3) for A3 compatibility. 0 for A4.
Definition: TurfRate.h:51
unsigned short ppsNum
It&#39;s only updated every second so no need for sub-second timing.
Definition: oldStructs.h:439
unsigned short ppsNum
It&#39;s only updated every second so no need for sub-second timing.
Definition: oldStructs.h:406
UShort_t ppsNum
ppsNum of data
Definition: TurfRate.h:41
const char * packetCodeAsString(PacketCode_t code)
packetCodeAsString – utility function
UShort_t deadTime
Dead Time.
Definition: TurfRate.h:49
unsigned char l3RatesGated[16]
L3 rates, 1 per phi sector, in Hz.
Definition: oldStructs.h:411
UShort_t l2Rates[16]
L2 rates (or VPol A3 rates)
Definition: TurfRate.h:50
unsigned char refPulses
Ref pulses.
unsigned short ppsNum
It&#39;s only updated every second so no need for sub-second timing.
TurfRateStruct_t – Yes.
Int_t isL1Masked(int phi)
Deprecated.
Definition: TurfRate.cxx:434
unsigned char errorFlag
Bit 1-4 bufferdepth, Bits 5,6,7 are for upper,lower,nadir trig mask match.
Definition: oldStructs.h:447
unsigned short phiTrigMaskH
16 bit phi-sector mask
Definition: oldStructs.h:446
unsigned short deadTime
How much were we dead??
Definition: oldStructs.h:440
unsigned char errorFlag
Bit 1-4 bufferdepth, Bits 5,6,7 are for upper,lower,nadir trig mask match.
unsigned short phiTrigMask
16 bit phi-sector mask
Definition: oldStructs.h:428
UChar_t errorFlag
Error flag (who knows)?
Definition: TurfRate.h:58
UChar_t reserved[3]
Reserved???
Definition: TurfRate.h:65
TurfRate – The Turf Rate data.
Definition: TurfRate.h:21
unsigned short deadTime
How much were we dead??
Definition: oldStructs.h:423
unsigned short phiTrigMask
16 bit phi-sector mask
Definition: oldStructs.h:445
Int_t isL1MaskedHPol(int phi)
Deprecated.
Definition: TurfRate.cxx:438
unsigned char errorFlag
Bit 1-4 bufferdepth, Bits 5,6,7 are for upper,lower,nadir trig mask match.
Definition: oldStructs.h:430
Int_t intFlag
Interpolation flag, zero for raw data.
Definition: TurfRate.h:60
Turf Rates – Telemetered.
Int_t isPhiMasked(int phi)
Is the Phi Sector masked.
Definition: TurfRate.cxx:417
UChar_t l3RatesGated[16]
l3 gated rates
Definition: TurfRate.h:62
Int_t isPhiMaskedHPol(int phi)
Deprecated.
Definition: TurfRate.cxx:428
unsigned short phiTrigMask
16 bit phi-sector mask
Definition: oldStructs.h:413
UShort_t phiTrigMaskH
Which phi sectors are masked off (Hpol, == phiTrigMask in A4)?
Definition: TurfRate.h:57
int simplePacketCheck(GenericHeader_t *gHdr, PacketCode_t code)
simplePacketCheck – utility function
unsigned short l1TrigMask
As read from TURF (16-bit upper phi, lower phi)
Definition: oldStructs.h:412
unsigned short l2Rates[16]
to get Hz
unsigned short l2TrigMask
to get Hz