CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DTDDUWords.h
Go to the documentation of this file.
1 #ifndef DTDigi_DTDDUWords_h
2 #define DTDigi_DTDDUWords_h
3 
10 #define WORDCONTROLMASK 0xE0000000
11 #define WORDCONTROLSHIFT 29
12 #define WORDTYPEMASK 0x1F000000
13 #define WORDTYPESHIFT 24
14 
16 #define ERRORMASK 0x8000
17 #define ERRORSHIFT 15
18 
19 #define DEBUG_TYPE_MASK 0xE00000
20 #define DEBUG_TYPE_SHIFT 21
21 #define DEBUG_MESSAGE_MASK 0x7FFF
22 #define CEROS_ID_CEROS_STATUS_MASK 0x1F0000
23 #define CEROS_ID_CEROS_STATUS_SHIFT 16
24 #define EV_ID_CEROS_STATUS_MASK 0xFC0
25 #define EV_ID_CEROS_STATUS_SHIFT 6
26 #define DONTREAD_CEROS_STATUS_MASK 0x3F
27 #define CEROS_ID_ROS_STATUS_MASK 0x1F
28 
29 #define TTC_EVENT_COUNTER_MASK 0xFFFFFF
30 
31 #define TFF_MASK 0x800000
32 #define TFF_SHIFT 23
33 #define TPX_MASK 0x400000
34 #define TPX_SHIFT 22
35 #define L1A_FIFO_OCC_MASK 0x3F0000
36 #define L1A_FIFO_OCC_SHIFT 16
37 #define EVENT_WORD_COUNT_MASK 0xFFFF
38 
39 #define ERROR_TYPE_MASK 0xE00000
40 #define ERROR_TYPE_SHIFT 21
41 #define ERROR_ROB_ID_MASK 0x1F0000
42 #define ERROR_ROB_ID_SHIFT 16
43 #define ERROR_CEROS_ID_MASK 0x3F
44 
45 #define ROB_ID_MASK 0x1F000000
46 #define EVENT_ID_MASK 0xFFF000
47 #define EVENT_ID_SHIFT 12
48 #define BUNCH_ID_MASK 0xFFF
49 #define WORD_COUNT_MASK 0xFFF
50 
51 #define PC_MASK 0x8000000
52 #define PC_SHIFT 27
53 #define PAF_MASK 0x4000000
54 #define PAF_SHIFT 26
55 #define TDC_ID_MASK 0x3000000
56 #define TDC_ID_SHIFT 24
57 
58 #define TDC_CHANNEL_MASK 0xF80000
59 #define TDC_CHANNEL_SHIFT 19
60 #define TDC_TIME_MASK 0x7FFFC // First two bits are excluded
61 #define TDC_TIME_SHIFT 2
62 
63 #define TDC_ERROR_MASK 0x7FFF
64 
65 #define SCFO_MASK 0xFF
66 
67 #define TRIGGER_WORD_COUNT_MASK 0xFFFF
68 
69 #define TRIGGER_DATA_MASK 0xFFFF
70 
71 #define SC_LAT_SHIFT 8
72 #define SC_LAT_MASK 0x7F
73 
74 #define SC_NW_MASK 0xFF
75 
76 #define SC_TRIGGERDLY_MASK 0x7
77 #define SC_TRIGGERDLY_SHIFT 12
78 #define SC_BXC_MASK 0xFFF
79 
80 #include <iostream>
81 #include <cstdint>
82 
89 public:
91  DTROSWordType(const uint32_t index) { word_ = index; }
92 
93  DTROSWordType(const DTROSWordType& obj) { *this = obj; }
94 
95  DTROSWordType() : word_(0){};
96 
98  virtual ~DTROSWordType(){};
99 
101  enum wordTypes {
104  ROSError = 3,
110  TDCError = 9,
111  SCHeader = 10,
112  SCTrailer = 11,
113  SCData = 12,
114  ROSDebug = 13,
115  TDCDebug = 14,
116  Control = 15
117  };
118 
120  enum wordTypes type() {
121  enum wordTypes wordType = Control;
122 
123  // ROS/ROB/SC Headers
126  wordType = ROSHeader;
127  if (((word_ & WORDTYPEMASK) >> WORDTYPESHIFT) == scTypeWord)
128  wordType = SCHeader;
129  if (((word_ & WORDTYPEMASK) >> WORDTYPESHIFT) < scTypeWord)
130  wordType = GroupHeader;
131  }
132 
133  // ROS/ROB/SC Trailers
134  if (((word_ & WORDCONTROLMASK) >> WORDCONTROLSHIFT) == trailerControlWord) {
136  wordType = ROSTrailer;
137  if (((word_ & WORDTYPEMASK) >> WORDTYPESHIFT) == scTypeWord)
138  wordType = SCTrailer;
139  if (((word_ & WORDTYPEMASK) >> WORDTYPESHIFT) < scTypeWord)
140  wordType = GroupTrailer;
141  }
142 
143  // TDC Header
144  if (((word_ & WORDCONTROLMASK) >> WORDCONTROLSHIFT) == tdcHeaderControlWord)
145  wordType = TDCHeader;
146 
147  // TDC Trailer
148  if (((word_ & WORDCONTROLMASK) >> WORDCONTROLSHIFT) == tdcTrailerControlWord)
149  wordType = TDCTrailer;
150 
151  // TDC/SC Data
152  if (((word_ & WORDCONTROLMASK) >> WORDCONTROLSHIFT) == tdcDataControlWord) {
153  if (((word_ & WORDTYPEMASK) >> WORDTYPESHIFT) == scTypeWord)
154  wordType = SCData;
155  else
156  wordType = TDCMeasurement;
157  }
158 
159  // Errors
160  if (((word_ & WORDCONTROLMASK) >> WORDCONTROLSHIFT) == errorControlWord) {
162  wordType = ROSError;
163  if (((word_ & WORDTYPEMASK) >> WORDTYPESHIFT) < scTypeWord)
164  wordType = TDCError;
165  }
166 
167  // ROS Debug
168  if (((word_ & WORDCONTROLMASK) >> WORDCONTROLSHIFT) == debugControlWord) {
170  wordType = ROSDebug;
171  if (((word_ & WORDTYPEMASK) >> WORDTYPESHIFT) < scTypeWord)
172  wordType = TDCDebug;
173  }
174 
175  return wordType;
176  }
177 
179  static const uint32_t headerControlWord = 0;
180  static const uint32_t trailerControlWord = 1;
181  static const uint32_t tdcHeaderControlWord = 2;
182  static const uint32_t tdcTrailerControlWord = 3;
183  static const uint32_t tdcDataControlWord = 4;
184  static const uint32_t errorControlWord = 6;
185  static const uint32_t debugControlWord = 7;
186 
188  static const uint32_t rosTypeWord = 31;
189  static const uint32_t scTypeWord = 25;
190 
191 private:
192  uint32_t word_;
193 };
194 
202 public:
205 
206  DTROSHeaderWord(const DTROSHeaderWord& obj) { *this = obj; }
207 
208  DTROSHeaderWord(const uint32_t index) : word_(index) {}
209 
211  virtual ~DTROSHeaderWord() {}
212 
213  int TTCEventCounter() const { return word_ & TTC_EVENT_COUNTER_MASK; }
214 
215  static void set(uint32_t& word, int ttc_event_counter) {
217  ttc_event_counter;
218  }
219 
220 private:
221  uint32_t word_;
222 };
223 
235 public:
238 
240 
241  DTROSTrailerWord(const uint32_t index) : word_(index) {}
242 
244  virtual ~DTROSTrailerWord() {}
245 
246  int TFF() const { return (word_ & TFF_MASK) >> TFF_SHIFT; }
247  int TPX() const { return (word_ & TPX_MASK) >> TPX_SHIFT; }
249  int EventWordCount() const { return word_ & EVENT_WORD_COUNT_MASK; }
250 
251  static void set(uint32_t& word, int tff, int tpx, int l1a_fifo_occ, int event_word_count) {
253  tff << TFF_SHIFT | tpx << TPX_SHIFT | l1a_fifo_occ << L1A_FIFO_OCC_SHIFT | event_word_count;
254  }
255 
256 private:
257  uint32_t word_;
258 };
259 
267 public:
270 
271  DTROSErrorWord(const DTROSErrorWord& obj) { *this = obj; }
272 
273  DTROSErrorWord(const uint32_t index) : word_(index) {}
274 
276  virtual ~DTROSErrorWord() {}
277 
278  int errorType() const { return (word_ & ERROR_TYPE_MASK) >> ERROR_TYPE_SHIFT; }
279  int robID() const { return (word_ & ERROR_ROB_ID_MASK) >> ERROR_ROB_ID_SHIFT; }
280  int cerosID() const { return errorType() == 4 ? (word_ & ERROR_CEROS_ID_MASK) : 0; }
281 
282  static void set(uint32_t& word, int error_type, int rob_id) {
284  error_type << ERROR_TYPE_SHIFT | rob_id << ERROR_ROB_ID_SHIFT | 1 << ERRORSHIFT;
285  }
286 
287 private:
288  uint32_t word_;
289 };
290 
299 public:
302 
303  DTROSDebugWord(const DTROSDebugWord& obj) { *this = obj; }
304 
305  DTROSDebugWord(const uint32_t index) : word_(index) {}
306 
308  virtual ~DTROSDebugWord() {}
309 
310  int debugType() const { return (word_ & DEBUG_TYPE_MASK) >> DEBUG_TYPE_SHIFT; }
311  int debugMessage() const { return (word_ & DEBUG_MESSAGE_MASK); }
312  int cerosIdCerosStatus() const {
314  }
315  int evIdMis() const { return debugType() == 3 ? (word_ & EV_ID_CEROS_STATUS_MASK) >> EV_ID_CEROS_STATUS_SHIFT : 0; }
316  int dontRead() const { return debugType() == 3 ? (word_ & DONTREAD_CEROS_STATUS_MASK) : 0; }
317  int cerosIdRosStatus() const { return debugType() == 4 ? (word_ & CEROS_ID_ROS_STATUS_MASK) : 0; }
318 
319  static void set(uint32_t& word, //CB FIXME do we need setters for DEBUG Types 3 and 4?
320  int debug_type) {
322  debug_type << DEBUG_TYPE_SHIFT | 504 << 15; // TEMPORARY
323  }
324 
325  static void set(uint32_t& word, int debug_type, int ceros_id) {
327  debug_type << DEBUG_TYPE_SHIFT | ceros_id << CEROS_ID_CEROS_STATUS_SHIFT | 1 << 15;
328  }
329 
330 private:
331  uint32_t word_;
332 };
333 
342 public:
345 
346  DTROBHeaderWord(const DTROBHeaderWord& obj) { *this = obj; }
347 
348  DTROBHeaderWord(const uint32_t index) : word_(index) {}
349 
351  virtual ~DTROBHeaderWord() {}
352 
353  int robID() const { return (word_ & ROB_ID_MASK) >> WORDTYPESHIFT; }
354  int eventID() const { return (word_ & EVENT_ID_MASK) >> EVENT_ID_SHIFT; }
355  int bunchID() const { return (word_ & BUNCH_ID_MASK); }
356 
357  static void set(uint32_t& word, int rob_id, int event_id, int bunch_id) {
359  bunch_id;
360  }
361 
362 private:
363  uint32_t word_;
364 };
365 
374 public:
377 
379 
380  DTROBTrailerWord(const uint32_t index) : word_(index) {}
381 
383  virtual ~DTROBTrailerWord() {}
384 
385  int robID() const { return (word_ & ROB_ID_MASK) >> WORDTYPESHIFT; }
386  int eventID() const { return (word_ & EVENT_ID_MASK) >> EVENT_ID_SHIFT; }
387  int wordCount() const { return (word_ & WORD_COUNT_MASK); }
388 
389  static void set(uint32_t& word, int rob_id, int event_id, int word_count) {
391  event_id << EVENT_ID_SHIFT | word_count;
392  }
393 
394 private:
395  uint32_t word_;
396 };
397 
406 public:
409 
410  DTTDCHeaderWord(const DTTDCHeaderWord& obj) { *this = obj; }
411 
412  DTTDCHeaderWord(const uint32_t index) : word_(index) {}
413 
415  virtual ~DTTDCHeaderWord() {}
416 
417  int PC() const { return (word_ & PC_MASK) >> PC_SHIFT; }
418  int PAF() const { return (word_ & PAF_MASK) >> PAF_SHIFT; }
419  int HU() const { return (word_ & PAF_MASK) >> PAF_SHIFT; }
420  int tdcID() const { return (word_ & TDC_ID_MASK) >> TDC_ID_SHIFT; }
421  int eventID() const { return (word_ & EVENT_ID_MASK) >> EVENT_ID_SHIFT; }
422  int bunchID() const { return (word_ & BUNCH_ID_MASK); }
423 
424  static void set(uint32_t& word, int pc, int paf, int hu, int tdc_id, int event_id, int bunch_id) {
426  hu << PAF_SHIFT | tdc_id << TDC_ID_SHIFT | event_id << EVENT_ID_SHIFT | bunch_id;
427  }
428 
429 private:
430  uint32_t word_;
431 };
432 
441 public:
444 
446 
447  DTTDCTrailerWord(const uint32_t index) : word_(index) {}
448 
450  virtual ~DTTDCTrailerWord() {}
451 
452  int PC() const { return (word_ & PC_MASK) >> PC_SHIFT; }
453  int PAF() const { return (word_ & PAF_MASK) >> PAF_SHIFT; }
454  int HU() const { return (word_ & PAF_MASK) >> PAF_SHIFT; }
455  int tdcID() const { return (word_ & TDC_ID_MASK) >> TDC_ID_SHIFT; }
456  int eventID() const { return (word_ & EVENT_ID_MASK) >> EVENT_ID_SHIFT; }
457  int wordCount() const { return (word_ & WORD_COUNT_MASK); }
458 
459  static void set(uint32_t& word, int pc, int paf, int hu, int tdc_id, int event_id, int word_count) {
461  hu << PAF_SHIFT | tdc_id << TDC_ID_SHIFT | event_id << EVENT_ID_SHIFT | word_count;
462  }
463 
464 private:
465  uint32_t word_;
466 };
467 
476 public:
479 
481 
482  DTTDCMeasurementWord(const uint32_t index) : word_(index) {}
483 
486 
487  int PC() const { return (word_ & PC_MASK) >> PC_SHIFT; }
488  int PAF() const { return (word_ & PAF_MASK) >> PAF_SHIFT; }
489  int HU() const { return (word_ & PAF_MASK) >> PAF_SHIFT; }
490  int tdcID() const { return (word_ & TDC_ID_MASK) >> TDC_ID_SHIFT; }
491  int tdcChannel() const { return (word_ & TDC_CHANNEL_MASK) >> TDC_CHANNEL_SHIFT; }
492  int tdcTime() const { return (word_ & TDC_TIME_MASK) >> TDC_TIME_SHIFT; }
493 
494  static void set(uint32_t& word, int pc, int paf, int hu, int tdc_id, int tdc_channel, int tdc_time) {
496  tdc_id << TDC_ID_SHIFT | tdc_channel << TDC_CHANNEL_SHIFT | tdc_time;
497  }
498 
499 private:
500  uint32_t word_;
501 };
502 
511 public:
514 
515  DTTDCErrorWord(const DTTDCErrorWord& obj) { *this = obj; }
516 
517  DTTDCErrorWord(const uint32_t index) : word_(index) {}
518 
520  virtual ~DTTDCErrorWord() {}
521 
522  int PC() const { return (word_ & PC_MASK) >> PC_SHIFT; }
523  int PAF() const { return (word_ & PAF_MASK) >> PAF_SHIFT; }
524  int HU() const { return (word_ & PAF_MASK) >> PAF_SHIFT; }
525  int tdcID() const { return (word_ & TDC_ID_MASK) >> TDC_ID_SHIFT; }
526  int tdcError() const { return (word_ & TDC_ERROR_MASK); }
527 
528  static void set(uint32_t& word, int pc, int paf, int hu, int tdc_id, int tdc_error) {
530  tdc_id << TDC_ID_SHIFT | 0 << ERRORSHIFT | tdc_error;
531  }
532 
533 private:
534  uint32_t word_;
535 };
536 
544 public:
547 
549 
550  DTLocalTriggerHeaderWord(const uint32_t index) : word_(index) {}
551 
554 
555  int eventID() const { return (word_ & EVENT_ID_MASK) >> EVENT_ID_SHIFT; }
556  int SCFO() const { return (word_ & SCFO_MASK); }
557 
558  static void set(uint32_t& word, int event_id, int scfo) {
560  event_id << EVENT_ID_SHIFT | scfo;
561  }
562 
563 private:
564  uint32_t word_;
565 };
566 
574 public:
577 
579 
580  DTLocalTriggerTrailerWord(const uint32_t index) : word_(index) {}
581 
584 
585  int wordCount() const { return (word_ & TRIGGER_WORD_COUNT_MASK); }
586 
587  static void set(uint32_t& word, int word_count) {
588  word =
590  }
591 
592 private:
593  uint32_t word_;
594 };
595 
603 public:
606 
608 
609  DTLocalTriggerDataWord(const uint32_t index) : word_(index) {}
610 
613 
614  int SCData() const { return (word_ & TRIGGER_DATA_MASK); }
615 
616  int getBits(int first) const {
617  return first == 1 ? ((word_ & TRIGGER_DATA_MASK) >> 8) : ((word_ & TRIGGER_DATA_MASK) & 0xFF);
618  }
619 
620  //int hasTrigger(int first) const { return (getBits(first) & 0x40) >> 6; }
621  int hasTrigger(int first) const { return (trackQuality(first) != 7 ? 1 : 0); }
622  int trackQuality(int first) const { return (getBits(first) & 0xE) >> 1; }
623 
624  static void set(uint32_t& word, int sc_data) {
626  }
627 
628 private:
629  uint32_t word_;
630 };
631 
639 public:
642 
644 
645  DTDDUFirstStatusWord(const unsigned char index) : word_(index) {}
646 
649 
650  int channelEnabled() const { return (word_ & 0x1); }
651  int timeout() const { return (word_ & 0x2) >> 1; }
652  int eventTrailerLost() const { return (word_ & 0x4) >> 2; }
653  int opticalFiberSignalLost() const { return (word_ & 0x8) >> 3; }
654  int tlkPropagationError() const { return (word_ & 0x10) >> 4; }
655  int tlkPatternError() const { return (word_ & 0x20) >> 5; }
656  int tlkSignalLost() const { return (word_ & 0x40) >> 6; }
657  int errorFromROS() const { return (word_ & 0x80) >> 7; }
658 
659 private:
660  unsigned char word_;
661 };
662 
671 public:
674 
676 
677  DTDDUSecondStatusWord(const uint32_t index) : word_(index) {}
678 
681 
682  int l1AIDError() const { return (word_ & 0x1); }
683  int bxIDError() const { return (word_ & 0x2) >> 1; }
684  int fifoFull() const { return (word_ & 0x1C) >> 2; }
685  int inputFifoFull() const { return (word_ & 0xE0) >> 5; }
686  int fifoAlmostFull() const { return (word_ & 0x700) >> 8; }
687  int inputFifoAlmostFull() const { return (word_ & 0x3800) >> 11; }
688  int outputFifoFull() const { return (word_ & 0x4000) >> 14; }
689  int outputFifoAlmostFull() const { return (word_ & 0x8000) >> 15; }
690  int rosList() const { return (word_ & 0xFFF0000) >> 16; }
691  int warningROSPAF() const { return (word_ & 0x10000000) >> 28; }
692  int busyROSPAF() const { return (word_ & 0x20000000) >> 29; }
693  int outOfSynchROSError() const { return (word_ & 0x40000000) >> 30; }
694 
695  // int fifoAlmostEmpty() const { return (word_ & 0x1C000) >> 14; }
696  // int inputFifoAlmostEmpty() const { return (word_ & 0xE0000) >> 17; }
697  // int outputFifoFull() const { return (word_ & 0x100000) >> 20; }
698  // int outputFifoAlmostFull() const { return (word_ & 0x200000) >> 21; }
699  // int outputFifoAlmostEmpty() const { return (word_ & 0x400000) >> 22; }
700 
701 private:
702  uint32_t word_;
703 };
704 
713 public:
716 
718 
720 
723 
724  int Latency() const { return ((word_ >> SC_LAT_SHIFT) & SC_LAT_MASK); }
725  int NumberOf16bitWords() const { return (word_ & SC_NW_MASK); }
726 
727  static void set(uint32_t& word, int lat, int nw) {
729  (lat & SC_LAT_MASK) << SC_LAT_SHIFT | (nw & SC_NW_MASK);
730  }
731 
732 private:
733  uint32_t word_;
734 };
735 
744 public:
747 
749 
751 
754 
755  int TriggerDelay() const { return ((word_ >> SC_TRIGGERDLY_SHIFT) & SC_TRIGGERDLY_MASK); }
756  int LocalBunchCounter() const { return (word_ & SC_BXC_MASK); }
757 
758  static void set(uint32_t& word, int trigdly, int bxcount) {
760  (trigdly & SC_TRIGGERDLY_MASK) << SC_TRIGGERDLY_SHIFT | (bxcount & SC_BXC_MASK);
761  }
762 
763 private:
764  uint32_t word_;
765 };
766 
767 #endif
DTROSWordType(const uint32_t index)
Constructor.
Definition: DTDDUWords.h:91
int trackQuality(int first) const
Definition: DTDDUWords.h:622
int EventWordCount() const
Definition: DTDDUWords.h:249
DTLocalTriggerDataWord()
Constructor.
Definition: DTDDUWords.h:605
int HU() const
Definition: DTDDUWords.h:489
int opticalFiberSignalLost() const
Definition: DTDDUWords.h:653
virtual ~DTTDCErrorWord()
Destructor.
Definition: DTDDUWords.h:520
DTTDCHeaderWord()
Constructor.
Definition: DTDDUWords.h:408
int tdcError() const
Definition: DTDDUWords.h:526
#define WORDCONTROLMASK
Definition: DTDDUWords.h:10
int tlkPropagationError() const
Definition: DTDDUWords.h:654
DTLocalTriggerDataWord(const uint32_t index)
Definition: DTDDUWords.h:609
int evIdMis() const
Definition: DTDDUWords.h:315
#define EV_ID_CEROS_STATUS_SHIFT
Definition: DTDDUWords.h:25
int HU() const
Definition: DTDDUWords.h:454
int PC() const
Definition: DTDDUWords.h:522
#define TDC_TIME_MASK
Definition: DTDDUWords.h:60
virtual ~DTROSTrailerWord()
Destructor.
Definition: DTDDUWords.h:244
DTDDUFirstStatusWord(const DTDDUFirstStatusWord &obj)
Definition: DTDDUWords.h:643
DTLocalTriggerTrailerWord(const uint32_t index)
Definition: DTDDUWords.h:580
#define DEBUG_TYPE_MASK
Definition: DTDDUWords.h:19
DTDDUSecondStatusWord()
Constructor.
Definition: DTDDUWords.h:673
DTDDUSecondStatusWord(const DTDDUSecondStatusWord &obj)
Definition: DTDDUWords.h:675
int outputFifoFull() const
Definition: DTDDUWords.h:688
int PC() const
Definition: DTDDUWords.h:487
uint32_t word_
Definition: DTDDUWords.h:331
int PAF() const
Definition: DTDDUWords.h:488
int rosList() const
Definition: DTDDUWords.h:690
int SCData() const
Definition: DTDDUWords.h:614
#define WORDCONTROLSHIFT
Definition: DTDDUWords.h:11
virtual ~DTTDCHeaderWord()
Destructor.
Definition: DTDDUWords.h:415
int PC() const
Definition: DTDDUWords.h:417
int hasTrigger(int first) const
Definition: DTDDUWords.h:621
DTROSErrorWord(const uint32_t index)
Definition: DTDDUWords.h:273
#define SC_TRIGGERDLY_MASK
Definition: DTDDUWords.h:76
int l1AFifoOccupancy() const
Definition: DTDDUWords.h:248
int errorFromROS() const
Definition: DTDDUWords.h:657
#define L1A_FIFO_OCC_MASK
Definition: DTDDUWords.h:35
DTROSDebugWord(const uint32_t index)
Definition: DTDDUWords.h:305
static void set(uint32_t &word, int rob_id, int event_id, int bunch_id)
Definition: DTDDUWords.h:357
#define WORD_COUNT_MASK
Definition: DTDDUWords.h:49
virtual ~DTROSHeaderWord()
Destructor.
Definition: DTDDUWords.h:211
static const uint32_t trailerControlWord
Definition: DTDDUWords.h:180
int robID() const
Definition: DTDDUWords.h:279
int tdcID() const
&lt;== OBSOLETE!!
Definition: DTDDUWords.h:420
DTTDCErrorWord()
Constructor.
Definition: DTDDUWords.h:513
DTROBHeaderWord(const uint32_t index)
Definition: DTDDUWords.h:348
int eventTrailerLost() const
Definition: DTDDUWords.h:652
int getBits(int first) const
Definition: DTDDUWords.h:616
static void set(uint32_t &word, int rob_id, int event_id, int word_count)
Definition: DTDDUWords.h:389
#define ERROR_CEROS_ID_MASK
Definition: DTDDUWords.h:43
uint32_t word_
Definition: DTDDUWords.h:192
uint32_t word_
Definition: DTDDUWords.h:534
DTLocalTriggerSectorCollectorSubHeaderWord(const uint32_t index)
Definition: DTDDUWords.h:750
DTROBTrailerWord()
Constructor.
Definition: DTDDUWords.h:376
int busyROSPAF() const
Definition: DTDDUWords.h:692
virtual ~DTLocalTriggerHeaderWord()
Destructor.
Definition: DTDDUWords.h:553
#define WORDTYPEMASK
Definition: DTDDUWords.h:12
int l1AIDError() const
Definition: DTDDUWords.h:682
DTLocalTriggerSectorCollectorSubHeaderWord()
Constructor.
Definition: DTDDUWords.h:746
virtual ~DTROBTrailerWord()
Destructor.
Definition: DTDDUWords.h:383
int tdcChannel() const
Definition: DTDDUWords.h:491
int wordCount() const
Definition: DTDDUWords.h:387
DTLocalTriggerHeaderWord()
Constructor.
Definition: DTDDUWords.h:546
DTTDCTrailerWord(const DTTDCTrailerWord &obj)
Definition: DTDDUWords.h:445
static void set(uint32_t &word, int word_count)
Definition: DTDDUWords.h:587
#define SC_LAT_MASK
Definition: DTDDUWords.h:72
static const uint32_t tdcHeaderControlWord
Definition: DTDDUWords.h:181
#define TRIGGER_DATA_MASK
Definition: DTDDUWords.h:69
#define SC_TRIGGERDLY_SHIFT
Definition: DTDDUWords.h:77
DTDDUFirstStatusWord(const unsigned char index)
Definition: DTDDUWords.h:645
unsigned char word_
Definition: DTDDUWords.h:660
#define TFF_MASK
Definition: DTDDUWords.h:31
#define TTC_EVENT_COUNTER_MASK
Definition: DTDDUWords.h:29
int cerosIdRosStatus() const
Definition: DTDDUWords.h:317
DTTDCMeasurementWord()
Constructor.
Definition: DTDDUWords.h:478
virtual ~DTLocalTriggerDataWord()
Destructor.
Definition: DTDDUWords.h:612
uint64_t word
static void set(uint32_t &word, int pc, int paf, int hu, int tdc_id, int event_id, int word_count)
Definition: DTDDUWords.h:459
int warningROSPAF() const
Definition: DTDDUWords.h:691
DTTDCHeaderWord(const uint32_t index)
Definition: DTDDUWords.h:412
static const uint32_t errorControlWord
Definition: DTDDUWords.h:184
#define PC_SHIFT
Definition: DTDDUWords.h:52
int TTCEventCounter() const
Definition: DTDDUWords.h:213
DTLocalTriggerSectorCollectorHeaderWord(const uint32_t index)
Definition: DTDDUWords.h:719
DTTDCMeasurementWord(const DTTDCMeasurementWord &obj)
Definition: DTDDUWords.h:480
DTROBTrailerWord(const uint32_t index)
Definition: DTDDUWords.h:380
#define EVENT_ID_MASK
Definition: DTDDUWords.h:46
#define ERROR_TYPE_MASK
Definition: DTDDUWords.h:39
static void set(uint32_t &word, int debug_type, int ceros_id)
Definition: DTDDUWords.h:325
virtual ~DTTDCTrailerWord()
Destructor.
Definition: DTDDUWords.h:450
int wordCount() const
Definition: DTDDUWords.h:457
#define TRIGGER_WORD_COUNT_MASK
Definition: DTDDUWords.h:67
DTLocalTriggerHeaderWord(const uint32_t index)
Definition: DTDDUWords.h:550
int tdcTime() const
Definition: DTDDUWords.h:492
DTLocalTriggerSectorCollectorHeaderWord()
Constructor.
Definition: DTDDUWords.h:715
#define ROB_ID_MASK
Definition: DTDDUWords.h:45
#define CEROS_ID_ROS_STATUS_MASK
Definition: DTDDUWords.h:27
static const uint32_t tdcTrailerControlWord
Definition: DTDDUWords.h:182
static void set(uint32_t &word, int pc, int paf, int hu, int tdc_id, int tdc_error)
Definition: DTDDUWords.h:528
static const uint32_t scTypeWord
Definition: DTDDUWords.h:189
#define PC_MASK
Definition: DTDDUWords.h:51
DTLocalTriggerDataWord(const DTLocalTriggerDataWord &obj)
Definition: DTDDUWords.h:607
#define ERRORSHIFT
Definition: DTDDUWords.h:17
DTROSWordType(const DTROSWordType &obj)
Definition: DTDDUWords.h:93
virtual ~DTROBHeaderWord()
Destructor.
Definition: DTDDUWords.h:351
int TPX() const
Definition: DTDDUWords.h:247
DTROBTrailerWord(const DTROBTrailerWord &obj)
Definition: DTDDUWords.h:378
DTROSHeaderWord(const uint32_t index)
Definition: DTDDUWords.h:208
virtual ~DTLocalTriggerSectorCollectorHeaderWord()
Destructor.
Definition: DTDDUWords.h:722
int debugMessage() const
Definition: DTDDUWords.h:311
virtual ~DTTDCMeasurementWord()
Destructor.
Definition: DTDDUWords.h:485
int PC() const
Definition: DTDDUWords.h:452
virtual ~DTDDUFirstStatusWord()
Destructor.
Definition: DTDDUWords.h:648
static void set(uint32_t &word, int error_type, int rob_id)
Definition: DTDDUWords.h:282
#define WORDTYPESHIFT
Definition: DTDDUWords.h:13
static void set(uint32_t &word, int ttc_event_counter)
Definition: DTDDUWords.h:215
int fifoFull() const
Definition: DTDDUWords.h:684
DTTDCTrailerWord()
Constructor.
Definition: DTDDUWords.h:443
int eventID() const
Definition: DTDDUWords.h:456
#define DEBUG_MESSAGE_MASK
Definition: DTDDUWords.h:21
int dontRead() const
Definition: DTDDUWords.h:316
#define CEROS_ID_CEROS_STATUS_SHIFT
Definition: DTDDUWords.h:23
DTROSDebugWord(const DTROSDebugWord &obj)
Definition: DTDDUWords.h:303
uint32_t word_
Definition: DTDDUWords.h:363
#define ERROR_ROB_ID_MASK
Definition: DTDDUWords.h:41
#define PAF_SHIFT
Definition: DTDDUWords.h:54
int tdcID() const
&lt;== OBSOLETE!!
Definition: DTDDUWords.h:490
DTTDCErrorWord(const uint32_t index)
Definition: DTDDUWords.h:517
DTROSTrailerWord(const uint32_t index)
Definition: DTDDUWords.h:241
uint32_t word_
Definition: DTDDUWords.h:395
int inputFifoAlmostFull() const
Definition: DTDDUWords.h:687
#define SC_BXC_MASK
Definition: DTDDUWords.h:78
#define TPX_MASK
Definition: DTDDUWords.h:33
int robID() const
Definition: DTDDUWords.h:353
int inputFifoFull() const
Definition: DTDDUWords.h:685
DTTDCHeaderWord(const DTTDCHeaderWord &obj)
Definition: DTDDUWords.h:410
#define EVENT_WORD_COUNT_MASK
Definition: DTDDUWords.h:37
#define TDC_ID_MASK
Definition: DTDDUWords.h:55
DTROSDebugWord()
Constructor.
Definition: DTDDUWords.h:301
int tlkSignalLost() const
Definition: DTDDUWords.h:656
int cerosID() const
Definition: DTDDUWords.h:280
enum wordTypes type()
DDU word type getter.
Definition: DTDDUWords.h:120
#define TFF_SHIFT
Definition: DTDDUWords.h:32
virtual ~DTDDUSecondStatusWord()
Destructor.
Definition: DTDDUWords.h:680
#define DONTREAD_CEROS_STATUS_MASK
Definition: DTDDUWords.h:26
int errorType() const
Definition: DTDDUWords.h:278
#define DEBUG_TYPE_SHIFT
Definition: DTDDUWords.h:20
virtual ~DTLocalTriggerSectorCollectorSubHeaderWord()
Destructor.
Definition: DTDDUWords.h:753
DTROSTrailerWord(const DTROSTrailerWord &obj)
Definition: DTDDUWords.h:239
uint32_t word_
Definition: DTDDUWords.h:465
static const uint32_t tdcDataControlWord
Definition: DTDDUWords.h:183
wordTypes
List of DT DDU Word Types.
Definition: DTDDUWords.h:101
static const uint32_t rosTypeWord
Word Type bits definitions.
Definition: DTDDUWords.h:188
int tdcID() const
&lt;== OBSOLETE!!
Definition: DTDDUWords.h:455
DTROSHeaderWord(const DTROSHeaderWord &obj)
Definition: DTDDUWords.h:206
DTLocalTriggerHeaderWord(const DTLocalTriggerHeaderWord &obj)
Definition: DTDDUWords.h:548
int timeout() const
Definition: DTDDUWords.h:651
int bxIDError() const
Definition: DTDDUWords.h:683
DTTDCTrailerWord(const uint32_t index)
Definition: DTDDUWords.h:447
static void set(uint32_t &word, int pc, int paf, int hu, int tdc_id, int tdc_channel, int tdc_time)
Definition: DTDDUWords.h:494
static void set(uint32_t &word, int sc_data)
Definition: DTDDUWords.h:624
#define BUNCH_ID_MASK
Definition: DTDDUWords.h:48
#define CEROS_ID_CEROS_STATUS_MASK
Definition: DTDDUWords.h:22
int debugType() const
Definition: DTDDUWords.h:310
#define TDC_CHANNEL_MASK
Definition: DTDDUWords.h:58
static const uint32_t debugControlWord
Definition: DTDDUWords.h:185
DTTDCErrorWord(const DTTDCErrorWord &obj)
Definition: DTDDUWords.h:515
#define EV_ID_CEROS_STATUS_MASK
Definition: DTDDUWords.h:24
#define SC_LAT_SHIFT
Definition: DTDDUWords.h:71
int PAF() const
Definition: DTDDUWords.h:453
int tlkPatternError() const
Definition: DTDDUWords.h:655
#define TDC_ERROR_MASK
Definition: DTDDUWords.h:63
int outputFifoAlmostFull() const
Definition: DTDDUWords.h:689
int robID() const
Definition: DTDDUWords.h:385
#define ERROR_TYPE_SHIFT
Definition: DTDDUWords.h:40
#define SCFO_MASK
Definition: DTDDUWords.h:65
#define SC_NW_MASK
Definition: DTDDUWords.h:74
int HU() const
Definition: DTDDUWords.h:419
#define TDC_ID_SHIFT
Definition: DTDDUWords.h:56
#define PAF_MASK
Definition: DTDDUWords.h:53
DTROSErrorWord()
Constructor.
Definition: DTDDUWords.h:269
static void set(uint32_t &word, int tff, int tpx, int l1a_fifo_occ, int event_word_count)
Definition: DTDDUWords.h:251
int tdcID() const
&lt;== OBSOLETE!!
Definition: DTDDUWords.h:525
uint32_t word_
Definition: DTDDUWords.h:257
int HU() const
Definition: DTDDUWords.h:524
#define TDC_CHANNEL_SHIFT
Definition: DTDDUWords.h:59
static void set(uint32_t &word, int lat, int nw)
Definition: DTDDUWords.h:727
static void set(uint32_t &word, int pc, int paf, int hu, int tdc_id, int event_id, int bunch_id)
Definition: DTDDUWords.h:424
#define EVENT_ID_SHIFT
Definition: DTDDUWords.h:47
static const uint32_t headerControlWord
Control bits definitions.
Definition: DTDDUWords.h:179
DTLocalTriggerSectorCollectorSubHeaderWord(const DTLocalTriggerSectorCollectorSubHeaderWord &obj)
Definition: DTDDUWords.h:748
int PAF() const
Definition: DTDDUWords.h:523
DTLocalTriggerTrailerWord(const DTLocalTriggerTrailerWord &obj)
Definition: DTDDUWords.h:578
static void set(uint32_t &word, int debug_type)
Definition: DTDDUWords.h:319
DTROSHeaderWord()
Constructor.
Definition: DTDDUWords.h:204
virtual ~DTROSWordType()
Destructor.
Definition: DTDDUWords.h:98
virtual ~DTROSErrorWord()
Destructor.
Definition: DTDDUWords.h:276
uint32_t word_
Definition: DTDDUWords.h:221
DTROBHeaderWord()
Constructor.
Definition: DTDDUWords.h:344
DTROBHeaderWord(const DTROBHeaderWord &obj)
Definition: DTDDUWords.h:346
int TFF() const
Definition: DTDDUWords.h:246
int fifoAlmostFull() const
Definition: DTDDUWords.h:686
DTROSTrailerWord()
Constructor.
Definition: DTDDUWords.h:237
int channelEnabled() const
Definition: DTDDUWords.h:650
int PAF() const
Definition: DTDDUWords.h:418
int outOfSynchROSError() const
Definition: DTDDUWords.h:693
DTROSErrorWord(const DTROSErrorWord &obj)
Definition: DTDDUWords.h:271
int bunchID() const
Definition: DTDDUWords.h:355
uint32_t word_
Definition: DTDDUWords.h:288
DTTDCMeasurementWord(const uint32_t index)
Definition: DTDDUWords.h:482
uint32_t word_
Definition: DTDDUWords.h:430
DTLocalTriggerTrailerWord()
Constructor.
Definition: DTDDUWords.h:576
#define TPX_SHIFT
Definition: DTDDUWords.h:34
static void set(uint32_t &word, int trigdly, int bxcount)
Definition: DTDDUWords.h:758
DTDDUSecondStatusWord(const uint32_t index)
Definition: DTDDUWords.h:677
int cerosIdCerosStatus() const
Definition: DTDDUWords.h:312
#define ERROR_ROB_ID_SHIFT
Definition: DTDDUWords.h:42
DTLocalTriggerSectorCollectorHeaderWord(const DTLocalTriggerSectorCollectorHeaderWord &obj)
Definition: DTDDUWords.h:717
virtual ~DTLocalTriggerTrailerWord()
Destructor.
Definition: DTDDUWords.h:583
int eventID() const
Definition: DTDDUWords.h:354
int eventID() const
Definition: DTDDUWords.h:386
DTDDUFirstStatusWord()
Constructor.
Definition: DTDDUWords.h:641
virtual ~DTROSDebugWord()
Destructor.
Definition: DTDDUWords.h:308
#define TDC_TIME_SHIFT
Definition: DTDDUWords.h:61
#define L1A_FIFO_OCC_SHIFT
Definition: DTDDUWords.h:36
static void set(uint32_t &word, int event_id, int scfo)
Definition: DTDDUWords.h:558
int bunchID() const
Definition: DTDDUWords.h:422
int eventID() const
Definition: DTDDUWords.h:421