CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros 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 0x3F
28 
29 
30 #define TTC_EVENT_COUNTER_MASK 0xFFFFFF
31 
32 #define TFF_MASK 0x800000
33 #define TFF_SHIFT 23
34 #define TPX_MASK 0x400000
35 #define TPX_SHIFT 22
36 #define L1A_FIFO_OCC_MASK 0x3F0000
37 #define L1A_FIFO_OCC_SHIFT 16
38 #define EVENT_WORD_COUNT_MASK 0xFFFF
39 
40 #define ERROR_TYPE_MASK 0xE00000
41 #define ERROR_TYPE_SHIFT 21
42 #define ERROR_ROB_ID_MASK 0x1F0000
43 #define ERROR_ROB_ID_SHIFT 16
44 #define ERROR_CEROS_ID_MASK 0x3F
45 
46 #define ROB_ID_MASK 0x1F000000
47 #define EVENT_ID_MASK 0xFFF000
48 #define EVENT_ID_SHIFT 12
49 #define BUNCH_ID_MASK 0xFFF
50 #define WORD_COUNT_MASK 0xFFF
51 
52 #define PC_MASK 0x8000000
53 #define PC_SHIFT 27
54 #define PAF_MASK 0x4000000
55 #define PAF_SHIFT 26
56 #define TDC_ID_MASK 0x3000000
57 #define TDC_ID_SHIFT 24
58 
59 #define TDC_CHANNEL_MASK 0xF80000
60 #define TDC_CHANNEL_SHIFT 19
61 #define TDC_TIME_MASK 0x7FFFC // First two bits are excluded
62 #define TDC_TIME_SHIFT 2
63 
64 #define TDC_ERROR_MASK 0x7FFF
65 
66 #define SCFO_MASK 0xFF
67 
68 #define TRIGGER_WORD_COUNT_MASK 0xFFFF
69 
70 #define TRIGGER_DATA_MASK 0xFFFF
71 
72 
73 #define SC_LAT_SHIFT 8
74 #define SC_LAT_MASK 0x7F
75 
76 #define SC_NW_MASK 0xFF
77 
78 #define SC_TRIGGERDLY_MASK 0x7
79 #define SC_TRIGGERDLY_SHIFT 12
80 #define SC_BXC_MASK 0xFFF
81 
82 
83 
84 #include <boost/cstdint.hpp>
85 #include <iostream>
86 
87 
88 
95 
96 public:
97 
99  DTROSWordType(const uint32_t index) {
100  word_ = index;
101  }
102 
104  *this = obj;
105  }
106 
107  DTROSWordType() : word_(0) {};
108 
110  virtual ~DTROSWordType() {};
111 
113  enum wordTypes {
116  ROSError = 3,
122  TDCError = 9,
123  SCHeader = 10,
124  SCTrailer = 11,
125  SCData = 12,
126  ROSDebug = 13,
127  TDCDebug = 14,
128  Control = 15
129  };
130 
131 
133  enum wordTypes type() {
134 
135  enum wordTypes wordType = Control;
136 
137  // ROS/ROB/SC Headers
139  if ( ((word_ & WORDTYPEMASK) >> WORDTYPESHIFT) == rosTypeWord ) wordType = ROSHeader;
140  if ( ((word_ & WORDTYPEMASK) >> WORDTYPESHIFT) == scTypeWord ) wordType = SCHeader;
141  if ( ((word_ & WORDTYPEMASK) >> WORDTYPESHIFT) < scTypeWord ) wordType = GroupHeader;
142  }
143 
144  // ROS/ROB/SC Trailers
145  if ( ((word_ & WORDCONTROLMASK) >> WORDCONTROLSHIFT) == trailerControlWord ) {
146  if ( ((word_ & WORDTYPEMASK) >> WORDTYPESHIFT) == rosTypeWord ) wordType = ROSTrailer;
147  if ( ((word_ & WORDTYPEMASK) >> WORDTYPESHIFT) == scTypeWord ) wordType = SCTrailer;
148  if ( ((word_ & WORDTYPEMASK) >> WORDTYPESHIFT) < scTypeWord ) wordType = GroupTrailer;
149  }
150 
151  // TDC Header
152  if ( ((word_ & WORDCONTROLMASK) >> WORDCONTROLSHIFT) == tdcHeaderControlWord )
153  wordType = TDCHeader;
154 
155  // TDC Trailer
156  if ( ((word_ & WORDCONTROLMASK) >> WORDCONTROLSHIFT) == tdcTrailerControlWord )
157  wordType = TDCTrailer;
158 
159  // TDC/SC Data
160  if ( ((word_ & WORDCONTROLMASK) >> WORDCONTROLSHIFT) == tdcDataControlWord ) {
161  if ( ((word_ & WORDTYPEMASK) >> WORDTYPESHIFT) == scTypeWord ) wordType = SCData;
162  else wordType = TDCMeasurement;
163  }
164 
165  // Errors
166  if ( ((word_ & WORDCONTROLMASK) >> WORDCONTROLSHIFT) == errorControlWord ) {
167  if ( ((word_ & WORDTYPEMASK) >> WORDTYPESHIFT) == rosTypeWord ) wordType = ROSError;
168  if ( ((word_ & WORDTYPEMASK) >> WORDTYPESHIFT) < scTypeWord ) wordType = TDCError;
169  }
170 
171  // ROS Debug
172  if ( ((word_ & WORDCONTROLMASK) >> WORDCONTROLSHIFT) == debugControlWord ) {
173  if ( ((word_ & WORDTYPEMASK) >> WORDTYPESHIFT) == rosTypeWord ) wordType = ROSDebug;
174  if ( ((word_ & WORDTYPEMASK) >> WORDTYPESHIFT) < scTypeWord ) wordType = TDCDebug;
175  }
176 
177 
178  return wordType;
179  }
180 
181 
183  static const uint32_t headerControlWord = 0;
184  static const uint32_t trailerControlWord = 1;
185  static const uint32_t tdcHeaderControlWord = 2;
186  static const uint32_t tdcTrailerControlWord = 3;
187  static const uint32_t tdcDataControlWord = 4;
188  static const uint32_t errorControlWord = 6;
189  static const uint32_t debugControlWord = 7;
190 
192  static const uint32_t rosTypeWord = 31;
193  static const uint32_t scTypeWord = 25;
194 
195 
196 private:
197 
198  uint32_t word_;
199 
200 };
201 
202 
203 
211 
212 public:
213 
216 
217  DTROSHeaderWord(const DTROSHeaderWord& obj) { *this = obj; }
218 
219  DTROSHeaderWord(const uint32_t index) :
220  word_(index) {}
221 
223  virtual ~DTROSHeaderWord() {}
224 
225  int TTCEventCounter() const { return word_ & TTC_EVENT_COUNTER_MASK; }
226 
227  static void set(uint32_t &word,
228  int ttc_event_counter) {
229 
230  word =
233  ttc_event_counter;
234  }
235 
236 
237 private:
238 
239  uint32_t word_;
240 
241 };
242 
243 
255 
256 public:
257 
260 
262 
263  DTROSTrailerWord(const uint32_t index) :
264  word_(index) {}
265 
267  virtual ~DTROSTrailerWord() {}
268 
269  int TFF() const { return (word_ & TFF_MASK) >> TFF_SHIFT; }
270  int TPX() const { return (word_ & TPX_MASK) >> TPX_SHIFT; }
272  int EventWordCount() const { return word_ & EVENT_WORD_COUNT_MASK; }
273 
274  static void set(uint32_t &word,
275  int tff,
276  int tpx,
277  int l1a_fifo_occ,
278  int event_word_count) {
279 
280  word =
283  tff << TFF_SHIFT |
284  tpx << TPX_SHIFT |
285  l1a_fifo_occ << L1A_FIFO_OCC_SHIFT |
286  event_word_count;
287  }
288 
289 
290 private:
291 
292  uint32_t word_;
293 
294 };
295 
296 
304 
305 public:
306 
309 
310  DTROSErrorWord(const DTROSErrorWord& obj) { *this = obj; }
311 
312  DTROSErrorWord(const uint32_t index) :
313  word_(index) {}
314 
316  virtual ~DTROSErrorWord() {}
317 
318  int errorType() const { return (word_ & ERROR_TYPE_MASK) >> ERROR_TYPE_SHIFT;}
319  int robID() const { return (word_ & ERROR_ROB_ID_MASK) >> ERROR_ROB_ID_SHIFT;}
320  int cerosID() const {return errorType()==4 ? (word_ & ERROR_CEROS_ID_MASK) : 0;}
321 
322  static void set(uint32_t &word,
323  int error_type,
324  int rob_id) {
325 
326  word =
329  error_type << ERROR_TYPE_SHIFT |
330  rob_id << ERROR_ROB_ID_SHIFT |
331  1 << ERRORSHIFT;
332  }
333 
334 private:
335 
336  uint32_t word_;
337 
338 };
339 
340 
349 
350 public:
351 
354 
355  DTROSDebugWord(const DTROSDebugWord& obj) { *this = obj; }
356 
357  DTROSDebugWord(const uint32_t index) :
358  word_(index) {}
359 
361  virtual ~DTROSDebugWord() {}
362 
363  int debugType() const { return (word_ & DEBUG_TYPE_MASK) >> DEBUG_TYPE_SHIFT;}
364  int debugMessage() const { return (word_ & DEBUG_MESSAGE_MASK) ;}
366  int evIdMis() const { return debugType()==3 ? (word_ & EV_ID_CEROS_STATUS_MASK) >> EV_ID_CEROS_STATUS_SHIFT : 0;}
367  int dontRead() const { return debugType()==3 ? (word_ & DONTREAD_CEROS_STATUS_MASK) : 0;}
368  int cerosIdRosStatus() const { return debugType()==4 ? (word_ & CEROS_ID_ROS_STATUS_MASK) : 0;}
369 
370  static void set(uint32_t &word, //CB FIXME do we need setters for DEBUG Types 3 and 4?
371  int debug_type) {
372 
373  word =
376  debug_type << DEBUG_TYPE_SHIFT |
377  504 << 15; // TEMPORARY
378  }
379 
380  static void set(uint32_t &word,
381  int debug_type,
382  int ceros_id) {
383 
384  word =
387  debug_type << DEBUG_TYPE_SHIFT |
388  ceros_id << CEROS_ID_CEROS_STATUS_SHIFT |
389  1 << 15;
390  }
391 
392 private:
393 
394  uint32_t word_;
395 
396 };
397 
398 
407 
408 public:
409 
412 
413  DTROBHeaderWord(const DTROBHeaderWord& obj) { *this = obj; }
414 
415  DTROBHeaderWord(const uint32_t index) :
416  word_(index) {}
417 
419  virtual ~DTROBHeaderWord() {}
420 
421  int robID() const { return (word_ & ROB_ID_MASK) >> WORDTYPESHIFT;}
422  int eventID() const { return (word_ & EVENT_ID_MASK) >> EVENT_ID_SHIFT;}
423  int bunchID() const { return (word_ & BUNCH_ID_MASK);}
424 
425 
426  static void set(uint32_t &word,
427  int rob_id,
428  int event_id,
429  int bunch_id) {
430 
431  word =
433  rob_id << WORDTYPESHIFT |
434  event_id << EVENT_ID_SHIFT |
435  bunch_id;
436  }
437 
438 
439 private:
440 
441  uint32_t word_;
442 
443 };
444 
445 
454 
455 public:
456 
459 
461 
462  DTROBTrailerWord(const uint32_t index) :
463  word_(index) {}
464 
466  virtual ~DTROBTrailerWord() {}
467 
468  int robID() const { return (word_ & ROB_ID_MASK) >> WORDTYPESHIFT;}
469  int eventID() const { return (word_ & EVENT_ID_MASK) >> EVENT_ID_SHIFT;}
470  int wordCount() const { return (word_ & WORD_COUNT_MASK);}
471 
472  static void set(uint32_t &word,
473  int rob_id,
474  int event_id,
475  int word_count) {
476 
477  word =
479  rob_id << WORDTYPESHIFT |
480  event_id << EVENT_ID_SHIFT |
481  word_count;
482  }
483 
484 
485 private:
486 
487  uint32_t word_;
488 };
489 
490 
491 
492 
501 
502 public:
503 
506 
507  DTTDCHeaderWord(const DTTDCHeaderWord& obj) { *this = obj; }
508 
509  DTTDCHeaderWord(const uint32_t index) :
510  word_(index) {}
511 
513  virtual ~DTTDCHeaderWord() {}
514 
515  int PC() const { return (word_ & PC_MASK) >> PC_SHIFT;}
516  int PAF() const { return (word_ & PAF_MASK) >> PAF_SHIFT;}
517  int HU() const { return (word_ & PAF_MASK) >> PAF_SHIFT;}
518  int tdcID() const { return (word_ & TDC_ID_MASK) >> TDC_ID_SHIFT;}
519  int eventID() const { return (word_ & EVENT_ID_MASK) >> EVENT_ID_SHIFT;}
520  int bunchID() const { return (word_ & BUNCH_ID_MASK);}
521 
522  static void set(uint32_t &word,
523  int pc,
524  int paf,
525  int hu,
526  int tdc_id,
527  int event_id,
528  int bunch_id) {
529 
530  word =
532  pc << PC_SHIFT |
533  paf << PAF_SHIFT |
534  hu << PAF_SHIFT |
535  tdc_id << TDC_ID_SHIFT |
536  event_id << EVENT_ID_SHIFT |
537  bunch_id;
538  }
539 
540 
541 private:
542 
543  uint32_t word_;
544 };
545 
546 
555 
556 public:
557 
560 
562 
563  DTTDCTrailerWord(const uint32_t index) :
564  word_(index) {}
565 
567  virtual ~DTTDCTrailerWord() {}
568 
569  int PC() const { return (word_ & PC_MASK) >> PC_SHIFT;}
570  int PAF() const { return (word_ & PAF_MASK) >> PAF_SHIFT;}
571  int HU() const { return (word_ & PAF_MASK) >> PAF_SHIFT;}
572  int tdcID() const { return (word_ & TDC_ID_MASK) >> TDC_ID_SHIFT;}
573  int eventID() const { return (word_ & EVENT_ID_MASK) >> EVENT_ID_SHIFT;}
574  int wordCount() const { return (word_ & WORD_COUNT_MASK);}
575 
576  static void set(uint32_t &word,
577  int pc,
578  int paf,
579  int hu,
580  int tdc_id,
581  int event_id,
582  int word_count) {
583 
584  word =
586  pc << PC_SHIFT |
587  paf << PAF_SHIFT |
588  hu << PAF_SHIFT |
589  tdc_id << TDC_ID_SHIFT |
590  event_id << EVENT_ID_SHIFT |
591  word_count;
592  }
593 
594 private:
595 
596  uint32_t word_;
597 };
598 
599 
608 
609 public:
610 
613 
615 
616  DTTDCMeasurementWord(const uint32_t index) :
617  word_(index) {}
618 
621 
622  int PC() const { return (word_ & PC_MASK) >> PC_SHIFT;}
623  int PAF() const { return (word_ & PAF_MASK) >> PAF_SHIFT;}
624  int HU() const { return (word_ & PAF_MASK) >> PAF_SHIFT;}
625  int tdcID() const { return (word_ & TDC_ID_MASK) >> TDC_ID_SHIFT;}
626  int tdcChannel() const { return (word_ & TDC_CHANNEL_MASK) >> TDC_CHANNEL_SHIFT;}
627  int tdcTime() const { return (word_ & TDC_TIME_MASK) >> TDC_TIME_SHIFT;}
628 
629 
630  static void set(uint32_t &word,
631  int pc,
632  int paf,
633  int hu,
634  int tdc_id,
635  int tdc_channel,
636  int tdc_time) {
637 
638  word =
640  pc << PC_SHIFT |
641  paf << PAF_SHIFT |
642  hu << PAF_SHIFT |
643  tdc_id << TDC_ID_SHIFT |
644  tdc_channel << TDC_CHANNEL_SHIFT |
645  tdc_time;
646  }
647 
648 
649 
650 private:
651 
652  uint32_t word_;
653 };
654 
655 
664 
665 public:
666 
669 
670  DTTDCErrorWord(const DTTDCErrorWord& obj) { *this = obj; }
671 
672  DTTDCErrorWord(const uint32_t index) :
673  word_(index) {}
674 
676  virtual ~DTTDCErrorWord() {}
677 
678  int PC() const { return (word_ & PC_MASK) >> PC_SHIFT;}
679  int PAF() const { return (word_ & PAF_MASK) >> PAF_SHIFT;}
680  int HU() const { return (word_ & PAF_MASK) >> PAF_SHIFT;}
681  int tdcID() const { return (word_ & TDC_ID_MASK) >> TDC_ID_SHIFT;}
682  int tdcError() const { return (word_ & TDC_ERROR_MASK);}
683 
684  static void set(uint32_t &word,
685  int pc,
686  int paf,
687  int hu,
688  int tdc_id,
689  int tdc_error) {
690 
691  word =
693  pc << PC_SHIFT |
694  paf << PAF_SHIFT |
695  hu << PAF_SHIFT |
696  tdc_id << TDC_ID_SHIFT |
697  0 << ERRORSHIFT |
698  tdc_error;
699  }
700 
701 private:
702 
703  uint32_t word_;
704 };
705 
706 
714 
715 public:
716 
719 
721 
722  DTLocalTriggerHeaderWord(const uint32_t index) :
723  word_(index) {}
724 
727 
728  int eventID() const { return (word_ & EVENT_ID_MASK) >> EVENT_ID_SHIFT;}
729  int SCFO() const { return (word_ & SCFO_MASK);}
730 
731 
732  static void set(uint32_t &word,
733  int event_id,
734  int scfo) {
735 
736  word =
739  event_id << EVENT_ID_SHIFT |
740  scfo;
741  }
742 
743 private:
744 
745  uint32_t word_;
746 };
747 
748 
756 
757 public:
758 
761 
763 
764  DTLocalTriggerTrailerWord(const uint32_t index) :
765  word_(index) {}
766 
769 
770  int wordCount() const { return (word_ & TRIGGER_WORD_COUNT_MASK);}
771 
772  static void set(uint32_t &word,
773  int word_count) {
774 
775  word =
778  word_count;
779  }
780 
781 
782 private:
783 
784  uint32_t word_;
785 };
786 
787 
795 
796 public:
797 
800 
802 
803  DTLocalTriggerDataWord(const uint32_t index) :
804  word_(index) {}
805 
808 
809  int SCData() const { return (word_ & TRIGGER_DATA_MASK);}
810 
811  int getBits(int first) const {
812  return first==1 ? ((word_ & TRIGGER_DATA_MASK) >> 8) : ((word_ & TRIGGER_DATA_MASK)&0xFF);
813  }
814 
815  //int hasTrigger(int first) const { return (getBits(first) & 0x40) >> 6; }
816  int hasTrigger(int first) const { return (trackQuality(first) != 7? 1 : 0);}
817  int trackQuality(int first) const { return (getBits(first) & 0xE) >> 1; }
818 
819 
820  static void set(uint32_t &word,
821  int sc_data) {
822 
823  word =
826  sc_data;
827  }
828 
829 
830 private:
831 
832  uint32_t word_;
833 };
834 
835 
843 
844 public:
845 
848 
850 
851  DTDDUFirstStatusWord(const unsigned char index) :
852  word_(index) {}
853 
856 
857  int channelEnabled() const { return (word_ & 0x1);}
858  int timeout() const { return (word_ & 0x2) >> 1;}
859  int eventTrailerLost() const { return (word_ & 0x4) >> 2;}
860  int opticalFiberSignalLost() const { return (word_ & 0x8) >> 3;}
861  int tlkPropagationError() const { return (word_ & 0x10) >> 4;}
862  int tlkPatternError() const { return (word_ & 0x20) >> 5;}
863  int tlkSignalLost() const { return (word_ & 0x40) >> 6;}
864  int errorFromROS() const { return (word_ & 0x80) >> 7;}
865 
866 
867 private:
868 
869  unsigned char word_;
870 };
871 
872 
881 
882 public:
883 
886 
888 
889  DTDDUSecondStatusWord(const uint32_t index) :
890  word_(index) {}
891 
894 
895  int l1AIDError() const { return (word_ & 0x1); }
896  int bxIDError() const { return (word_ & 0x2) >> 1; }
897  int fifoFull() const { return (word_ & 0x1C ) >> 2; }
898  int inputFifoFull() const { return (word_ & 0xE0) >> 5; }
899  int fifoAlmostFull() const { return (word_ & 0x700) >> 8; }
900  int inputFifoAlmostFull() const { return (word_ & 0x3800) >> 11; }
901  int outputFifoFull() const { return (word_ & 0x4000) >> 14; }
902  int outputFifoAlmostFull() const { return (word_ & 0x8000) >> 15; }
903  int rosList() const {return (word_ & 0xFFF0000) >> 16; }
904  int warningROSPAF() const {return (word_ & 0x10000000) >> 28; }
905  int busyROSPAF() const {return (word_ & 0x20000000) >> 29; }
906  int outOfSynchROSError() const {return (word_ & 0x40000000) >> 30; }
907 
908 
909 // int fifoAlmostEmpty() const { return (word_ & 0x1C000) >> 14; }
910 // int inputFifoAlmostEmpty() const { return (word_ & 0xE0000) >> 17; }
911 // int outputFifoFull() const { return (word_ & 0x100000) >> 20; }
912 // int outputFifoAlmostFull() const { return (word_ & 0x200000) >> 21; }
913 // int outputFifoAlmostEmpty() const { return (word_ & 0x400000) >> 22; }
914 
915 private:
916 
917  uint32_t word_;
918 };
919 
920 
929 
930 public:
931 
934 
936 
938  word_(index) {}
939 
942 
943  int Latency() const { return ((word_ >> SC_LAT_SHIFT) & SC_LAT_MASK);}
944  int NumberOf16bitWords() const { return (word_ & SC_NW_MASK);}
945 
946 
947  static void set(uint32_t &word,
948  int lat,
949  int nw) {
950 
951  word =
954  (lat & SC_LAT_MASK) << SC_LAT_SHIFT |
955  (nw & SC_NW_MASK) ;
956  }
957 
958 private:
959 
960  uint32_t word_;
961 };
962 
963 
972 
973 public:
974 
977 
979 
981  word_(index) {}
982 
985 
987  int LocalBunchCounter() const { return (word_ & SC_BXC_MASK );}
988 
989 
990  static void set(uint32_t &word,
991  int trigdly,
992  int bxcount) {
993 
994  word =
997  (trigdly & SC_TRIGGERDLY_MASK) << SC_TRIGGERDLY_SHIFT |
998  (bxcount & SC_BXC_MASK) ;
999  }
1000 
1001 private:
1002 
1003  uint32_t word_;
1004 };
1005 
1006 
1007 #endif
DTROSWordType(const uint32_t index)
Constructor.
Definition: DTDDUWords.h:99
int trackQuality(int first) const
Definition: DTDDUWords.h:817
int EventWordCount() const
Definition: DTDDUWords.h:272
DTLocalTriggerDataWord()
Constructor.
Definition: DTDDUWords.h:799
int HU() const
Definition: DTDDUWords.h:624
int opticalFiberSignalLost() const
Definition: DTDDUWords.h:860
virtual ~DTTDCErrorWord()
Destructor.
Definition: DTDDUWords.h:676
DTTDCHeaderWord()
Constructor.
Definition: DTDDUWords.h:505
int tdcError() const
Definition: DTDDUWords.h:682
#define WORDCONTROLMASK
Definition: DTDDUWords.h:10
int tlkPropagationError() const
Definition: DTDDUWords.h:861
DTLocalTriggerDataWord(const uint32_t index)
Definition: DTDDUWords.h:803
int evIdMis() const
Definition: DTDDUWords.h:366
#define EV_ID_CEROS_STATUS_SHIFT
Definition: DTDDUWords.h:25
int HU() const
Definition: DTDDUWords.h:571
int PC() const
Definition: DTDDUWords.h:678
#define TDC_TIME_MASK
Definition: DTDDUWords.h:61
virtual ~DTROSTrailerWord()
Destructor.
Definition: DTDDUWords.h:267
DTDDUFirstStatusWord(const DTDDUFirstStatusWord &obj)
Definition: DTDDUWords.h:849
DTLocalTriggerTrailerWord(const uint32_t index)
Definition: DTDDUWords.h:764
#define DEBUG_TYPE_MASK
Definition: DTDDUWords.h:19
DTDDUSecondStatusWord()
Constructor.
Definition: DTDDUWords.h:885
DTDDUSecondStatusWord(const DTDDUSecondStatusWord &obj)
Definition: DTDDUWords.h:887
int outputFifoFull() const
Definition: DTDDUWords.h:901
int PC() const
Definition: DTDDUWords.h:622
uint32_t word_
Definition: DTDDUWords.h:394
int PAF() const
Definition: DTDDUWords.h:623
int rosList() const
Definition: DTDDUWords.h:903
int SCData() const
Definition: DTDDUWords.h:809
#define WORDCONTROLSHIFT
Definition: DTDDUWords.h:11
virtual ~DTTDCHeaderWord()
Destructor.
Definition: DTDDUWords.h:513
int PC() const
Definition: DTDDUWords.h:515
int hasTrigger(int first) const
Definition: DTDDUWords.h:816
DTROSErrorWord(const uint32_t index)
Definition: DTDDUWords.h:312
#define SC_TRIGGERDLY_MASK
Definition: DTDDUWords.h:78
int l1AFifoOccupancy() const
Definition: DTDDUWords.h:271
int errorFromROS() const
Definition: DTDDUWords.h:864
#define L1A_FIFO_OCC_MASK
Definition: DTDDUWords.h:36
DTROSDebugWord(const uint32_t index)
Definition: DTDDUWords.h:357
static void set(uint32_t &word, int rob_id, int event_id, int bunch_id)
Definition: DTDDUWords.h:426
#define WORD_COUNT_MASK
Definition: DTDDUWords.h:50
virtual ~DTROSHeaderWord()
Destructor.
Definition: DTDDUWords.h:223
static const uint32_t trailerControlWord
Definition: DTDDUWords.h:184
int robID() const
Definition: DTDDUWords.h:319
int tdcID() const
&lt;== OBSOLETE!!
Definition: DTDDUWords.h:518
DTTDCErrorWord()
Constructor.
Definition: DTDDUWords.h:668
DTROBHeaderWord(const uint32_t index)
Definition: DTDDUWords.h:415
int eventTrailerLost() const
Definition: DTDDUWords.h:859
int getBits(int first) const
Definition: DTDDUWords.h:811
static void set(uint32_t &word, int rob_id, int event_id, int word_count)
Definition: DTDDUWords.h:472
#define ERROR_CEROS_ID_MASK
Definition: DTDDUWords.h:44
uint32_t word_
Definition: DTDDUWords.h:198
uint32_t word_
Definition: DTDDUWords.h:703
DTLocalTriggerSectorCollectorSubHeaderWord(const uint32_t index)
Definition: DTDDUWords.h:980
DTROBTrailerWord()
Constructor.
Definition: DTDDUWords.h:458
int busyROSPAF() const
Definition: DTDDUWords.h:905
virtual ~DTLocalTriggerHeaderWord()
Destructor.
Definition: DTDDUWords.h:726
#define WORDTYPEMASK
Definition: DTDDUWords.h:12
int l1AIDError() const
Definition: DTDDUWords.h:895
DTLocalTriggerSectorCollectorSubHeaderWord()
Constructor.
Definition: DTDDUWords.h:976
virtual ~DTROBTrailerWord()
Destructor.
Definition: DTDDUWords.h:466
int tdcChannel() const
Definition: DTDDUWords.h:626
int wordCount() const
Definition: DTDDUWords.h:470
DTLocalTriggerHeaderWord()
Constructor.
Definition: DTDDUWords.h:718
DTTDCTrailerWord(const DTTDCTrailerWord &obj)
Definition: DTDDUWords.h:561
static void set(uint32_t &word, int word_count)
Definition: DTDDUWords.h:772
#define SC_LAT_MASK
Definition: DTDDUWords.h:74
static const uint32_t tdcHeaderControlWord
Definition: DTDDUWords.h:185
#define TRIGGER_DATA_MASK
Definition: DTDDUWords.h:70
#define SC_TRIGGERDLY_SHIFT
Definition: DTDDUWords.h:79
DTDDUFirstStatusWord(const unsigned char index)
Definition: DTDDUWords.h:851
unsigned char word_
Definition: DTDDUWords.h:869
#define TFF_MASK
Definition: DTDDUWords.h:32
#define TTC_EVENT_COUNTER_MASK
Definition: DTDDUWords.h:30
int cerosIdRosStatus() const
Definition: DTDDUWords.h:368
DTTDCMeasurementWord()
Constructor.
Definition: DTDDUWords.h:612
virtual ~DTLocalTriggerDataWord()
Destructor.
Definition: DTDDUWords.h:807
static void set(uint32_t &word, int pc, int paf, int hu, int tdc_id, int event_id, int word_count)
Definition: DTDDUWords.h:576
int warningROSPAF() const
Definition: DTDDUWords.h:904
DTTDCHeaderWord(const uint32_t index)
Definition: DTDDUWords.h:509
static const uint32_t errorControlWord
Definition: DTDDUWords.h:188
#define PC_SHIFT
Definition: DTDDUWords.h:53
int TTCEventCounter() const
Definition: DTDDUWords.h:225
DTLocalTriggerSectorCollectorHeaderWord(const uint32_t index)
Definition: DTDDUWords.h:937
DTTDCMeasurementWord(const DTTDCMeasurementWord &obj)
Definition: DTDDUWords.h:614
DTROBTrailerWord(const uint32_t index)
Definition: DTDDUWords.h:462
#define EVENT_ID_MASK
Definition: DTDDUWords.h:47
#define ERROR_TYPE_MASK
Definition: DTDDUWords.h:40
static void set(uint32_t &word, int debug_type, int ceros_id)
Definition: DTDDUWords.h:380
virtual ~DTTDCTrailerWord()
Destructor.
Definition: DTDDUWords.h:567
int wordCount() const
Definition: DTDDUWords.h:574
#define TRIGGER_WORD_COUNT_MASK
Definition: DTDDUWords.h:68
DTLocalTriggerHeaderWord(const uint32_t index)
Definition: DTDDUWords.h:722
int tdcTime() const
Definition: DTDDUWords.h:627
DTLocalTriggerSectorCollectorHeaderWord()
Constructor.
Definition: DTDDUWords.h:933
#define ROB_ID_MASK
Definition: DTDDUWords.h:46
#define CEROS_ID_ROS_STATUS_MASK
Definition: DTDDUWords.h:27
static const uint32_t tdcTrailerControlWord
Definition: DTDDUWords.h:186
static void set(uint32_t &word, int pc, int paf, int hu, int tdc_id, int tdc_error)
Definition: DTDDUWords.h:684
static const uint32_t scTypeWord
Definition: DTDDUWords.h:193
#define PC_MASK
Definition: DTDDUWords.h:52
DTLocalTriggerDataWord(const DTLocalTriggerDataWord &obj)
Definition: DTDDUWords.h:801
#define ERRORSHIFT
Definition: DTDDUWords.h:17
DTROSWordType(const DTROSWordType &obj)
Definition: DTDDUWords.h:103
virtual ~DTROBHeaderWord()
Destructor.
Definition: DTDDUWords.h:419
int TPX() const
Definition: DTDDUWords.h:270
DTROBTrailerWord(const DTROBTrailerWord &obj)
Definition: DTDDUWords.h:460
DTROSHeaderWord(const uint32_t index)
Definition: DTDDUWords.h:219
virtual ~DTLocalTriggerSectorCollectorHeaderWord()
Destructor.
Definition: DTDDUWords.h:941
int debugMessage() const
Definition: DTDDUWords.h:364
virtual ~DTTDCMeasurementWord()
Destructor.
Definition: DTDDUWords.h:620
int PC() const
Definition: DTDDUWords.h:569
virtual ~DTDDUFirstStatusWord()
Destructor.
Definition: DTDDUWords.h:855
static void set(uint32_t &word, int error_type, int rob_id)
Definition: DTDDUWords.h:322
#define WORDTYPESHIFT
Definition: DTDDUWords.h:13
static void set(uint32_t &word, int ttc_event_counter)
Definition: DTDDUWords.h:227
int fifoFull() const
Definition: DTDDUWords.h:897
DTTDCTrailerWord()
Constructor.
Definition: DTDDUWords.h:559
int eventID() const
Definition: DTDDUWords.h:573
#define DEBUG_MESSAGE_MASK
Definition: DTDDUWords.h:21
int dontRead() const
Definition: DTDDUWords.h:367
#define CEROS_ID_CEROS_STATUS_SHIFT
Definition: DTDDUWords.h:23
DTROSDebugWord(const DTROSDebugWord &obj)
Definition: DTDDUWords.h:355
uint32_t word_
Definition: DTDDUWords.h:441
#define ERROR_ROB_ID_MASK
Definition: DTDDUWords.h:42
#define PAF_SHIFT
Definition: DTDDUWords.h:55
int tdcID() const
&lt;== OBSOLETE!!
Definition: DTDDUWords.h:625
DTTDCErrorWord(const uint32_t index)
Definition: DTDDUWords.h:672
DTROSTrailerWord(const uint32_t index)
Definition: DTDDUWords.h:263
uint32_t word_
Definition: DTDDUWords.h:487
int inputFifoAlmostFull() const
Definition: DTDDUWords.h:900
#define SC_BXC_MASK
Definition: DTDDUWords.h:80
#define TPX_MASK
Definition: DTDDUWords.h:34
int robID() const
Definition: DTDDUWords.h:421
int inputFifoFull() const
Definition: DTDDUWords.h:898
DTTDCHeaderWord(const DTTDCHeaderWord &obj)
Definition: DTDDUWords.h:507
#define EVENT_WORD_COUNT_MASK
Definition: DTDDUWords.h:38
#define TDC_ID_MASK
Definition: DTDDUWords.h:56
DTROSDebugWord()
Constructor.
Definition: DTDDUWords.h:353
int tlkSignalLost() const
Definition: DTDDUWords.h:863
int cerosID() const
Definition: DTDDUWords.h:320
enum wordTypes type()
DDU word type getter.
Definition: DTDDUWords.h:133
#define TFF_SHIFT
Definition: DTDDUWords.h:33
virtual ~DTDDUSecondStatusWord()
Destructor.
Definition: DTDDUWords.h:893
#define DONTREAD_CEROS_STATUS_MASK
Definition: DTDDUWords.h:26
int errorType() const
Definition: DTDDUWords.h:318
#define DEBUG_TYPE_SHIFT
Definition: DTDDUWords.h:20
virtual ~DTLocalTriggerSectorCollectorSubHeaderWord()
Destructor.
Definition: DTDDUWords.h:984
DTROSTrailerWord(const DTROSTrailerWord &obj)
Definition: DTDDUWords.h:261
uint32_t word_
Definition: DTDDUWords.h:596
static const uint32_t tdcDataControlWord
Definition: DTDDUWords.h:187
wordTypes
List of DT DDU Word Types.
Definition: DTDDUWords.h:113
static const uint32_t rosTypeWord
Word Type bits definitions.
Definition: DTDDUWords.h:192
int tdcID() const
&lt;== OBSOLETE!!
Definition: DTDDUWords.h:572
DTROSHeaderWord(const DTROSHeaderWord &obj)
Definition: DTDDUWords.h:217
DTLocalTriggerHeaderWord(const DTLocalTriggerHeaderWord &obj)
Definition: DTDDUWords.h:720
int timeout() const
Definition: DTDDUWords.h:858
int bxIDError() const
Definition: DTDDUWords.h:896
DTTDCTrailerWord(const uint32_t index)
Definition: DTDDUWords.h:563
static void set(uint32_t &word, int pc, int paf, int hu, int tdc_id, int tdc_channel, int tdc_time)
Definition: DTDDUWords.h:630
static void set(uint32_t &word, int sc_data)
Definition: DTDDUWords.h:820
#define BUNCH_ID_MASK
Definition: DTDDUWords.h:49
#define CEROS_ID_CEROS_STATUS_MASK
Definition: DTDDUWords.h:22
int debugType() const
Definition: DTDDUWords.h:363
#define TDC_CHANNEL_MASK
Definition: DTDDUWords.h:59
static const uint32_t debugControlWord
Definition: DTDDUWords.h:189
DTTDCErrorWord(const DTTDCErrorWord &obj)
Definition: DTDDUWords.h:670
#define EV_ID_CEROS_STATUS_MASK
Definition: DTDDUWords.h:24
#define SC_LAT_SHIFT
Definition: DTDDUWords.h:73
int PAF() const
Definition: DTDDUWords.h:570
int tlkPatternError() const
Definition: DTDDUWords.h:862
#define TDC_ERROR_MASK
Definition: DTDDUWords.h:64
int outputFifoAlmostFull() const
Definition: DTDDUWords.h:902
int robID() const
Definition: DTDDUWords.h:468
#define ERROR_TYPE_SHIFT
Definition: DTDDUWords.h:41
#define SCFO_MASK
Definition: DTDDUWords.h:66
#define SC_NW_MASK
Definition: DTDDUWords.h:76
int HU() const
Definition: DTDDUWords.h:517
#define TDC_ID_SHIFT
Definition: DTDDUWords.h:57
#define PAF_MASK
Definition: DTDDUWords.h:54
DTROSErrorWord()
Constructor.
Definition: DTDDUWords.h:308
static void set(uint32_t &word, int tff, int tpx, int l1a_fifo_occ, int event_word_count)
Definition: DTDDUWords.h:274
int tdcID() const
&lt;== OBSOLETE!!
Definition: DTDDUWords.h:681
uint32_t word_
Definition: DTDDUWords.h:292
int HU() const
Definition: DTDDUWords.h:680
#define TDC_CHANNEL_SHIFT
Definition: DTDDUWords.h:60
static void set(uint32_t &word, int lat, int nw)
Definition: DTDDUWords.h:947
static void set(uint32_t &word, int pc, int paf, int hu, int tdc_id, int event_id, int bunch_id)
Definition: DTDDUWords.h:522
#define EVENT_ID_SHIFT
Definition: DTDDUWords.h:48
static const uint32_t headerControlWord
Control bits definitions.
Definition: DTDDUWords.h:183
DTLocalTriggerSectorCollectorSubHeaderWord(const DTLocalTriggerSectorCollectorSubHeaderWord &obj)
Definition: DTDDUWords.h:978
int PAF() const
Definition: DTDDUWords.h:679
DTLocalTriggerTrailerWord(const DTLocalTriggerTrailerWord &obj)
Definition: DTDDUWords.h:762
static void set(uint32_t &word, int debug_type)
Definition: DTDDUWords.h:370
DTROSHeaderWord()
Constructor.
Definition: DTDDUWords.h:215
virtual ~DTROSWordType()
Destructor.
Definition: DTDDUWords.h:110
virtual ~DTROSErrorWord()
Destructor.
Definition: DTDDUWords.h:316
uint32_t word_
Definition: DTDDUWords.h:239
DTROBHeaderWord()
Constructor.
Definition: DTDDUWords.h:411
DTROBHeaderWord(const DTROBHeaderWord &obj)
Definition: DTDDUWords.h:413
int TFF() const
Definition: DTDDUWords.h:269
int fifoAlmostFull() const
Definition: DTDDUWords.h:899
DTROSTrailerWord()
Constructor.
Definition: DTDDUWords.h:259
int channelEnabled() const
Definition: DTDDUWords.h:857
int PAF() const
Definition: DTDDUWords.h:516
int outOfSynchROSError() const
Definition: DTDDUWords.h:906
DTROSErrorWord(const DTROSErrorWord &obj)
Definition: DTDDUWords.h:310
int bunchID() const
Definition: DTDDUWords.h:423
uint32_t word_
Definition: DTDDUWords.h:336
DTTDCMeasurementWord(const uint32_t index)
Definition: DTDDUWords.h:616
uint32_t word_
Definition: DTDDUWords.h:543
DTLocalTriggerTrailerWord()
Constructor.
Definition: DTDDUWords.h:760
#define TPX_SHIFT
Definition: DTDDUWords.h:35
static void set(uint32_t &word, int trigdly, int bxcount)
Definition: DTDDUWords.h:990
DTDDUSecondStatusWord(const uint32_t index)
Definition: DTDDUWords.h:889
int cerosIdCerosStatus() const
Definition: DTDDUWords.h:365
#define ERROR_ROB_ID_SHIFT
Definition: DTDDUWords.h:43
DTLocalTriggerSectorCollectorHeaderWord(const DTLocalTriggerSectorCollectorHeaderWord &obj)
Definition: DTDDUWords.h:935
virtual ~DTLocalTriggerTrailerWord()
Destructor.
Definition: DTDDUWords.h:768
int eventID() const
Definition: DTDDUWords.h:422
int eventID() const
Definition: DTDDUWords.h:469
DTDDUFirstStatusWord()
Constructor.
Definition: DTDDUWords.h:847
virtual ~DTROSDebugWord()
Destructor.
Definition: DTDDUWords.h:361
#define TDC_TIME_SHIFT
Definition: DTDDUWords.h:62
#define L1A_FIFO_OCC_SHIFT
Definition: DTDDUWords.h:37
static void set(uint32_t &word, int event_id, int scfo)
Definition: DTDDUWords.h:732
int bunchID() const
Definition: DTDDUWords.h:520
int eventID() const
Definition: DTDDUWords.h:519