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 DTRawToDigi_DTDDUWords_h
2 #define DTRawToDigi_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 
108  virtual ~DTROSWordType() {};
109 
111  enum wordTypes {
114  ROSError = 3,
120  TDCError = 9,
121  SCHeader = 10,
122  SCTrailer = 11,
123  SCData = 12,
124  ROSDebug = 13,
125  TDCDebug = 14,
126  Control = 15
127  };
128 
129 
131  enum wordTypes type() {
132 
133  enum wordTypes wordType = Control;
134 
135  // ROS/ROB/SC Headers
137  if ( ((word_ & WORDTYPEMASK) >> WORDTYPESHIFT) == rosTypeWord ) wordType = ROSHeader;
138  if ( ((word_ & WORDTYPEMASK) >> WORDTYPESHIFT) == scTypeWord ) wordType = SCHeader;
139  if ( ((word_ & WORDTYPEMASK) >> WORDTYPESHIFT) < scTypeWord ) wordType = GroupHeader;
140  }
141 
142  // ROS/ROB/SC Trailers
143  if ( ((word_ & WORDCONTROLMASK) >> WORDCONTROLSHIFT) == trailerControlWord ) {
144  if ( ((word_ & WORDTYPEMASK) >> WORDTYPESHIFT) == rosTypeWord ) wordType = ROSTrailer;
145  if ( ((word_ & WORDTYPEMASK) >> WORDTYPESHIFT) == scTypeWord ) wordType = SCTrailer;
146  if ( ((word_ & WORDTYPEMASK) >> WORDTYPESHIFT) < scTypeWord ) wordType = GroupTrailer;
147  }
148 
149  // TDC Header
150  if ( ((word_ & WORDCONTROLMASK) >> WORDCONTROLSHIFT) == tdcHeaderControlWord )
151  wordType = TDCHeader;
152 
153  // TDC Trailer
154  if ( ((word_ & WORDCONTROLMASK) >> WORDCONTROLSHIFT) == tdcTrailerControlWord )
155  wordType = TDCTrailer;
156 
157  // TDC/SC Data
158  if ( ((word_ & WORDCONTROLMASK) >> WORDCONTROLSHIFT) == tdcDataControlWord ) {
159  if ( ((word_ & WORDTYPEMASK) >> WORDTYPESHIFT) == scTypeWord ) wordType = SCData;
160  else wordType = TDCMeasurement;
161  }
162 
163  // Errors
164  if ( ((word_ & WORDCONTROLMASK) >> WORDCONTROLSHIFT) == errorControlWord ) {
165  if ( ((word_ & WORDTYPEMASK) >> WORDTYPESHIFT) == rosTypeWord ) wordType = ROSError;
166  if ( ((word_ & WORDTYPEMASK) >> WORDTYPESHIFT) < scTypeWord ) wordType = TDCError;
167  }
168 
169  // ROS Debug
170  if ( ((word_ & WORDCONTROLMASK) >> WORDCONTROLSHIFT) == debugControlWord ) {
171  if ( ((word_ & WORDTYPEMASK) >> WORDTYPESHIFT) == rosTypeWord ) wordType = ROSDebug;
172  if ( ((word_ & WORDTYPEMASK) >> WORDTYPESHIFT) < scTypeWord ) wordType = TDCDebug;
173  }
174 
175 
176  return wordType;
177  }
178 
179 
181  static const uint32_t headerControlWord = 0;
182  static const uint32_t trailerControlWord = 1;
183  static const uint32_t tdcHeaderControlWord = 2;
184  static const uint32_t tdcTrailerControlWord = 3;
185  static const uint32_t tdcDataControlWord = 4;
186  static const uint32_t errorControlWord = 6;
187  static const uint32_t debugControlWord = 7;
188 
190  static const uint32_t rosTypeWord = 31;
191  static const uint32_t scTypeWord = 25;
192 
193 
194 private:
195 
196  uint32_t word_;
197 
198 };
199 
200 
201 
209 
210 public:
211 
214 
215  DTROSHeaderWord(const DTROSHeaderWord& obj) { *this = obj; }
216 
217  DTROSHeaderWord(const uint32_t index) :
218  word_(index) {}
219 
221  virtual ~DTROSHeaderWord() {}
222 
223  int TTCEventCounter() const { return word_ & TTC_EVENT_COUNTER_MASK; }
224 
225  static void set(uint32_t &word,
226  int ttc_event_counter) {
227 
228  word =
231  ttc_event_counter;
232  }
233 
234 
235 private:
236 
237  uint32_t word_;
238 
239 };
240 
241 
253 
254 public:
255 
258 
260 
261  DTROSTrailerWord(const uint32_t index) :
262  word_(index) {}
263 
265  virtual ~DTROSTrailerWord() {}
266 
267  int TFF() const { return (word_ & TFF_MASK) >> TFF_SHIFT; }
268  int TPX() const { return (word_ & TPX_MASK) >> TPX_SHIFT; }
270  int EventWordCount() const { return word_ & EVENT_WORD_COUNT_MASK; }
271 
272  static void set(uint32_t &word,
273  int tff,
274  int tpx,
275  int l1a_fifo_occ,
276  int event_word_count) {
277 
278  word =
281  tff << TFF_SHIFT |
282  tpx << TPX_SHIFT |
283  l1a_fifo_occ << L1A_FIFO_OCC_SHIFT |
284  event_word_count;
285  }
286 
287 
288 private:
289 
290  uint32_t word_;
291 
292 };
293 
294 
302 
303 public:
304 
307 
308  DTROSErrorWord(const DTROSErrorWord& obj) { *this = obj; }
309 
310  DTROSErrorWord(const uint32_t index) :
311  word_(index) {}
312 
314  virtual ~DTROSErrorWord() {}
315 
316  int errorType() const { return (word_ & ERROR_TYPE_MASK) >> ERROR_TYPE_SHIFT;}
317  int robID() const { return (word_ & ERROR_ROB_ID_MASK) >> ERROR_ROB_ID_SHIFT;}
318  int cerosID() const {return errorType()==4 ? (word_ & ERROR_CEROS_ID_MASK) : 0;}
319 
320  static void set(uint32_t &word,
321  int error_type,
322  int rob_id) {
323 
324  word =
327  error_type << ERROR_TYPE_SHIFT |
328  rob_id << ERROR_ROB_ID_SHIFT |
329  1 << ERRORSHIFT;
330  }
331 
332 private:
333 
334  uint32_t word_;
335 
336 };
337 
338 
347 
348 public:
349 
352 
353  DTROSDebugWord(const DTROSDebugWord& obj) { *this = obj; }
354 
355  DTROSDebugWord(const uint32_t index) :
356  word_(index) {}
357 
359  virtual ~DTROSDebugWord() {}
360 
361  int debugType() const { return (word_ & DEBUG_TYPE_MASK) >> DEBUG_TYPE_SHIFT;}
362  int debugMessage() const { return (word_ & DEBUG_MESSAGE_MASK) ;}
364  int evIdMis() const { return debugType()==3 ? (word_ & EV_ID_CEROS_STATUS_MASK) >> EV_ID_CEROS_STATUS_SHIFT : 0;}
365  int dontRead() const { return debugType()==3 ? (word_ & DONTREAD_CEROS_STATUS_MASK) : 0;}
366  int cerosIdRosStatus() const { return debugType()==4 ? (word_ & CEROS_ID_ROS_STATUS_MASK) : 0;}
367 
368  static void set(uint32_t &word, //CB FIXME do we need setters for DEBUG Types 3 and 4?
369  int debug_type) {
370 
371  word =
374  debug_type << DEBUG_TYPE_SHIFT |
375  504 << 15; // TEMPORARY
376  }
377 
378  static void set(uint32_t &word,
379  int debug_type,
380  int ceros_id) {
381 
382  word =
385  debug_type << DEBUG_TYPE_SHIFT |
386  ceros_id << CEROS_ID_CEROS_STATUS_SHIFT |
387  1 << 15;
388  }
389 
390 private:
391 
392  uint32_t word_;
393 
394 };
395 
396 
405 
406 public:
407 
410 
411  DTROBHeaderWord(const DTROBHeaderWord& obj) { *this = obj; }
412 
413  DTROBHeaderWord(const uint32_t index) :
414  word_(index) {}
415 
417  virtual ~DTROBHeaderWord() {}
418 
419  int robID() const { return (word_ & ROB_ID_MASK) >> WORDTYPESHIFT;}
420  int eventID() const { return (word_ & EVENT_ID_MASK) >> EVENT_ID_SHIFT;}
421  int bunchID() const { return (word_ & BUNCH_ID_MASK);}
422 
423 
424  static void set(uint32_t &word,
425  int rob_id,
426  int event_id,
427  int bunch_id) {
428 
429  word =
431  rob_id << WORDTYPESHIFT |
432  event_id << EVENT_ID_SHIFT |
433  bunch_id;
434  }
435 
436 
437 private:
438 
439  uint32_t word_;
440 
441 };
442 
443 
452 
453 public:
454 
457 
459 
460  DTROBTrailerWord(const uint32_t index) :
461  word_(index) {}
462 
464  virtual ~DTROBTrailerWord() {}
465 
466  int robID() const { return (word_ & ROB_ID_MASK) >> WORDTYPESHIFT;}
467  int eventID() const { return (word_ & EVENT_ID_MASK) >> EVENT_ID_SHIFT;}
468  int wordCount() const { return (word_ & WORD_COUNT_MASK);}
469 
470  static void set(uint32_t &word,
471  int rob_id,
472  int event_id,
473  int word_count) {
474 
475  word =
477  rob_id << WORDTYPESHIFT |
478  event_id << EVENT_ID_SHIFT |
479  word_count;
480  }
481 
482 
483 private:
484 
485  uint32_t word_;
486 };
487 
488 
489 
490 
499 
500 public:
501 
504 
505  DTTDCHeaderWord(const DTTDCHeaderWord& obj) { *this = obj; }
506 
507  DTTDCHeaderWord(const uint32_t index) :
508  word_(index) {}
509 
511  virtual ~DTTDCHeaderWord() {}
512 
513  int PC() const { return (word_ & PC_MASK) >> PC_SHIFT;}
514  int PAF() const { return (word_ & PAF_MASK) >> PAF_SHIFT;}
515  int HU() const { return (word_ & PAF_MASK) >> PAF_SHIFT;}
516  int tdcID() const { return (word_ & TDC_ID_MASK) >> TDC_ID_SHIFT;}
517  int eventID() const { return (word_ & EVENT_ID_MASK) >> EVENT_ID_SHIFT;}
518  int bunchID() const { return (word_ & BUNCH_ID_MASK);}
519 
520  static void set(uint32_t &word,
521  int pc,
522  int paf,
523  int hu,
524  int tdc_id,
525  int event_id,
526  int bunch_id) {
527 
528  word =
530  pc << PC_SHIFT |
531  paf << PAF_SHIFT |
532  hu << PAF_SHIFT |
533  tdc_id << TDC_ID_SHIFT |
534  event_id << EVENT_ID_SHIFT |
535  bunch_id;
536  }
537 
538 
539 private:
540 
541  uint32_t word_;
542 };
543 
544 
553 
554 public:
555 
558 
560 
561  DTTDCTrailerWord(const uint32_t index) :
562  word_(index) {}
563 
565  virtual ~DTTDCTrailerWord() {}
566 
567  int PC() const { return (word_ & PC_MASK) >> PC_SHIFT;}
568  int PAF() const { return (word_ & PAF_MASK) >> PAF_SHIFT;}
569  int HU() const { return (word_ & PAF_MASK) >> PAF_SHIFT;}
570  int tdcID() const { return (word_ & TDC_ID_MASK) >> TDC_ID_SHIFT;}
571  int eventID() const { return (word_ & EVENT_ID_MASK) >> EVENT_ID_SHIFT;}
572  int wordCount() const { return (word_ & WORD_COUNT_MASK);}
573 
574  static void set(uint32_t &word,
575  int pc,
576  int paf,
577  int hu,
578  int tdc_id,
579  int event_id,
580  int word_count) {
581 
582  word =
584  pc << PC_SHIFT |
585  paf << PAF_SHIFT |
586  hu << PAF_SHIFT |
587  tdc_id << TDC_ID_SHIFT |
588  event_id << EVENT_ID_SHIFT |
589  word_count;
590  }
591 
592 private:
593 
594  uint32_t word_;
595 };
596 
597 
606 
607 public:
608 
611 
613 
614  DTTDCMeasurementWord(const uint32_t index) :
615  word_(index) {}
616 
619 
620  int PC() const { return (word_ & PC_MASK) >> PC_SHIFT;}
621  int PAF() const { return (word_ & PAF_MASK) >> PAF_SHIFT;}
622  int HU() const { return (word_ & PAF_MASK) >> PAF_SHIFT;}
623  int tdcID() const { return (word_ & TDC_ID_MASK) >> TDC_ID_SHIFT;}
624  int tdcChannel() const { return (word_ & TDC_CHANNEL_MASK) >> TDC_CHANNEL_SHIFT;}
625  int tdcTime() const { return (word_ & TDC_TIME_MASK) >> TDC_TIME_SHIFT;}
626 
627 
628  static void set(uint32_t &word,
629  int pc,
630  int paf,
631  int hu,
632  int tdc_id,
633  int tdc_channel,
634  int tdc_time) {
635 
636  word =
638  pc << PC_SHIFT |
639  paf << PAF_SHIFT |
640  hu << PAF_SHIFT |
641  tdc_id << TDC_ID_SHIFT |
642  tdc_channel << TDC_CHANNEL_SHIFT |
643  tdc_time;
644  }
645 
646 
647 
648 private:
649 
650  uint32_t word_;
651 };
652 
653 
662 
663 public:
664 
667 
668  DTTDCErrorWord(const DTTDCErrorWord& obj) { *this = obj; }
669 
670  DTTDCErrorWord(const uint32_t index) :
671  word_(index) {}
672 
674  virtual ~DTTDCErrorWord() {}
675 
676  int PC() const { return (word_ & PC_MASK) >> PC_SHIFT;}
677  int PAF() const { return (word_ & PAF_MASK) >> PAF_SHIFT;}
678  int HU() const { return (word_ & PAF_MASK) >> PAF_SHIFT;}
679  int tdcID() const { return (word_ & TDC_ID_MASK) >> TDC_ID_SHIFT;}
680  int tdcError() const { return (word_ & TDC_ERROR_MASK);}
681 
682  static void set(uint32_t &word,
683  int pc,
684  int paf,
685  int hu,
686  int tdc_id,
687  int tdc_error) {
688 
689  word =
691  pc << PC_SHIFT |
692  paf << PAF_SHIFT |
693  hu << PAF_SHIFT |
694  tdc_id << TDC_ID_SHIFT |
695  0 << ERRORSHIFT |
696  tdc_error;
697  }
698 
699 private:
700 
701  uint32_t word_;
702 };
703 
704 
712 
713 public:
714 
717 
719 
720  DTLocalTriggerHeaderWord(const uint32_t index) :
721  word_(index) {}
722 
725 
726  int eventID() const { return (word_ & EVENT_ID_MASK) >> EVENT_ID_SHIFT;}
727  int SCFO() const { return (word_ & SCFO_MASK);}
728 
729 
730  static void set(uint32_t &word,
731  int event_id,
732  int scfo) {
733 
734  word =
737  event_id << EVENT_ID_SHIFT |
738  scfo;
739  }
740 
741 private:
742 
743  uint32_t word_;
744 };
745 
746 
754 
755 public:
756 
759 
761 
762  DTLocalTriggerTrailerWord(const uint32_t index) :
763  word_(index) {}
764 
767 
768  int wordCount() const { return (word_ & TRIGGER_WORD_COUNT_MASK);}
769 
770  static void set(uint32_t &word,
771  int word_count) {
772 
773  word =
776  word_count;
777  }
778 
779 
780 private:
781 
782  uint32_t word_;
783 };
784 
785 
793 
794 public:
795 
798 
800 
801  DTLocalTriggerDataWord(const uint32_t index) :
802  word_(index) {}
803 
806 
807  int SCData() const { return (word_ & TRIGGER_DATA_MASK);}
808 
809  int getBits(int first) const {
810  return first==1 ? ((word_ & TRIGGER_DATA_MASK) >> 8) : ((word_ & TRIGGER_DATA_MASK)&0xFF);
811  }
812 
813  //int hasTrigger(int first) const { return (getBits(first) & 0x40) >> 6; }
814  int hasTrigger(int first) const { return (trackQuality(first) != 7? 1 : 0);}
815  int trackQuality(int first) const { return (getBits(first) & 0xE) >> 1; }
816 
817 
818  static void set(uint32_t &word,
819  int sc_data) {
820 
821  word =
824  sc_data;
825  }
826 
827 
828 private:
829 
830  uint32_t word_;
831 };
832 
833 
841 
842 public:
843 
846 
848 
849  DTDDUFirstStatusWord(const unsigned char index) :
850  word_(index) {}
851 
854 
855  int channelEnabled() const { return (word_ & 0x1);}
856  int timeout() const { return (word_ & 0x2) >> 1;}
857  int eventTrailerLost() const { return (word_ & 0x4) >> 2;}
858  int opticalFiberSignalLost() const { return (word_ & 0x8) >> 3;}
859  int tlkPropagationError() const { return (word_ & 0x10) >> 4;}
860  int tlkPatternError() const { return (word_ & 0x20) >> 5;}
861  int tlkSignalLost() const { return (word_ & 0x40) >> 6;}
862  int errorFromROS() const { return (word_ & 0x80) >> 7;}
863 
864 
865 private:
866 
867  unsigned char word_;
868 };
869 
870 
879 
880 public:
881 
884 
886 
887  DTDDUSecondStatusWord(const uint32_t index) :
888  word_(index) {}
889 
892 
893  int l1AIDError() const { return (word_ & 0x1); }
894  int bxIDError() const { return (word_ & 0x2) >> 1; }
895  int fifoFull() const { return (word_ & 0x1C ) >> 2; }
896  int inputFifoFull() const { return (word_ & 0xE0) >> 5; }
897  int fifoAlmostFull() const { return (word_ & 0x700) >> 8; }
898  int inputFifoAlmostFull() const { return (word_ & 0x3800) >> 11; }
899  int outputFifoFull() const { return (word_ & 0x4000) >> 14; }
900  int outputFifoAlmostFull() const { return (word_ & 0x8000) >> 15; }
901  int rosList() const {return (word_ & 0xFFF0000) >> 16; }
902  int warningROSPAF() const {return (word_ & 0x10000000) >> 28; }
903  int busyROSPAF() const {return (word_ & 0x20000000) >> 29; }
904  int outOfSynchROSError() const {return (word_ & 0x40000000) >> 30; }
905 
906 
907 // int fifoAlmostEmpty() const { return (word_ & 0x1C000) >> 14; }
908 // int inputFifoAlmostEmpty() const { return (word_ & 0xE0000) >> 17; }
909 // int outputFifoFull() const { return (word_ & 0x100000) >> 20; }
910 // int outputFifoAlmostFull() const { return (word_ & 0x200000) >> 21; }
911 // int outputFifoAlmostEmpty() const { return (word_ & 0x400000) >> 22; }
912 
913 private:
914 
915  uint32_t word_;
916 };
917 
918 
927 
928 public:
929 
932 
934 
936  word_(index) {}
937 
940 
941  int Latency() const { return ((word_ >> SC_LAT_SHIFT) & SC_LAT_MASK);}
942  int NumberOf16bitWords() const { return (word_ & SC_NW_MASK);}
943 
944 
945  static void set(uint32_t &word,
946  int lat,
947  int nw) {
948 
949  word =
952  (lat & SC_LAT_MASK) << SC_LAT_SHIFT |
953  (nw & SC_NW_MASK) ;
954  }
955 
956 private:
957 
958  uint32_t word_;
959 };
960 
961 
970 
971 public:
972 
975 
977 
979  word_(index) {}
980 
983 
985  int LocalBunchCounter() const { return (word_ & SC_BXC_MASK );}
986 
987 
988  static void set(uint32_t &word,
989  int trigdly,
990  int bxcount) {
991 
992  word =
995  (trigdly & SC_TRIGGERDLY_MASK) << SC_TRIGGERDLY_SHIFT |
996  (bxcount & SC_BXC_MASK) ;
997  }
998 
999 private:
1000 
1001  uint32_t word_;
1002 };
1003 
1004 
1005 #endif
DTROSWordType(const uint32_t index)
Constructor.
Definition: DTDDUWords.h:99
int trackQuality(int first) const
Definition: DTDDUWords.h:815
int EventWordCount() const
Definition: DTDDUWords.h:270
DTLocalTriggerDataWord()
Constructor.
Definition: DTDDUWords.h:797
int HU() const
Definition: DTDDUWords.h:622
int opticalFiberSignalLost() const
Definition: DTDDUWords.h:858
virtual ~DTTDCErrorWord()
Destructor.
Definition: DTDDUWords.h:674
DTTDCHeaderWord()
Constructor.
Definition: DTDDUWords.h:503
int tdcError() const
Definition: DTDDUWords.h:680
#define WORDCONTROLMASK
Definition: DTDDUWords.h:10
int tlkPropagationError() const
Definition: DTDDUWords.h:859
DTLocalTriggerDataWord(const uint32_t index)
Definition: DTDDUWords.h:801
int evIdMis() const
Definition: DTDDUWords.h:364
#define EV_ID_CEROS_STATUS_SHIFT
Definition: DTDDUWords.h:25
int HU() const
Definition: DTDDUWords.h:569
int PC() const
Definition: DTDDUWords.h:676
#define TDC_TIME_MASK
Definition: DTDDUWords.h:61
virtual ~DTROSTrailerWord()
Destructor.
Definition: DTDDUWords.h:265
DTDDUFirstStatusWord(const DTDDUFirstStatusWord &obj)
Definition: DTDDUWords.h:847
DTLocalTriggerTrailerWord(const uint32_t index)
Definition: DTDDUWords.h:762
#define DEBUG_TYPE_MASK
Definition: DTDDUWords.h:19
DTDDUSecondStatusWord()
Constructor.
Definition: DTDDUWords.h:883
DTDDUSecondStatusWord(const DTDDUSecondStatusWord &obj)
Definition: DTDDUWords.h:885
int outputFifoFull() const
Definition: DTDDUWords.h:899
int PC() const
Definition: DTDDUWords.h:620
uint32_t word_
Definition: DTDDUWords.h:392
int PAF() const
Definition: DTDDUWords.h:621
int rosList() const
Definition: DTDDUWords.h:901
int SCData() const
Definition: DTDDUWords.h:807
#define WORDCONTROLSHIFT
Definition: DTDDUWords.h:11
virtual ~DTTDCHeaderWord()
Destructor.
Definition: DTDDUWords.h:511
int PC() const
Definition: DTDDUWords.h:513
int hasTrigger(int first) const
Definition: DTDDUWords.h:814
DTROSErrorWord(const uint32_t index)
Definition: DTDDUWords.h:310
#define SC_TRIGGERDLY_MASK
Definition: DTDDUWords.h:78
int l1AFifoOccupancy() const
Definition: DTDDUWords.h:269
int errorFromROS() const
Definition: DTDDUWords.h:862
#define L1A_FIFO_OCC_MASK
Definition: DTDDUWords.h:36
DTROSDebugWord(const uint32_t index)
Definition: DTDDUWords.h:355
static void set(uint32_t &word, int rob_id, int event_id, int bunch_id)
Definition: DTDDUWords.h:424
#define WORD_COUNT_MASK
Definition: DTDDUWords.h:50
virtual ~DTROSHeaderWord()
Destructor.
Definition: DTDDUWords.h:221
static const uint32_t trailerControlWord
Definition: DTDDUWords.h:182
int robID() const
Definition: DTDDUWords.h:317
int tdcID() const
&lt;== OBSOLETE!!
Definition: DTDDUWords.h:516
DTTDCErrorWord()
Constructor.
Definition: DTDDUWords.h:666
DTROBHeaderWord(const uint32_t index)
Definition: DTDDUWords.h:413
int eventTrailerLost() const
Definition: DTDDUWords.h:857
int getBits(int first) const
Definition: DTDDUWords.h:809
static void set(uint32_t &word, int rob_id, int event_id, int word_count)
Definition: DTDDUWords.h:470
#define ERROR_CEROS_ID_MASK
Definition: DTDDUWords.h:44
uint32_t word_
Definition: DTDDUWords.h:196
uint32_t word_
Definition: DTDDUWords.h:701
DTLocalTriggerSectorCollectorSubHeaderWord(const uint32_t index)
Definition: DTDDUWords.h:978
DTROBTrailerWord()
Constructor.
Definition: DTDDUWords.h:456
int busyROSPAF() const
Definition: DTDDUWords.h:903
virtual ~DTLocalTriggerHeaderWord()
Destructor.
Definition: DTDDUWords.h:724
#define WORDTYPEMASK
Definition: DTDDUWords.h:12
int l1AIDError() const
Definition: DTDDUWords.h:893
DTLocalTriggerSectorCollectorSubHeaderWord()
Constructor.
Definition: DTDDUWords.h:974
virtual ~DTROBTrailerWord()
Destructor.
Definition: DTDDUWords.h:464
int tdcChannel() const
Definition: DTDDUWords.h:624
int wordCount() const
Definition: DTDDUWords.h:468
DTLocalTriggerHeaderWord()
Constructor.
Definition: DTDDUWords.h:716
DTTDCTrailerWord(const DTTDCTrailerWord &obj)
Definition: DTDDUWords.h:559
static void set(uint32_t &word, int word_count)
Definition: DTDDUWords.h:770
#define SC_LAT_MASK
Definition: DTDDUWords.h:74
static const uint32_t tdcHeaderControlWord
Definition: DTDDUWords.h:183
#define TRIGGER_DATA_MASK
Definition: DTDDUWords.h:70
#define SC_TRIGGERDLY_SHIFT
Definition: DTDDUWords.h:79
DTDDUFirstStatusWord(const unsigned char index)
Definition: DTDDUWords.h:849
unsigned char word_
Definition: DTDDUWords.h:867
#define TFF_MASK
Definition: DTDDUWords.h:32
#define TTC_EVENT_COUNTER_MASK
Definition: DTDDUWords.h:30
int cerosIdRosStatus() const
Definition: DTDDUWords.h:366
DTTDCMeasurementWord()
Constructor.
Definition: DTDDUWords.h:610
virtual ~DTLocalTriggerDataWord()
Destructor.
Definition: DTDDUWords.h:805
static void set(uint32_t &word, int pc, int paf, int hu, int tdc_id, int event_id, int word_count)
Definition: DTDDUWords.h:574
int warningROSPAF() const
Definition: DTDDUWords.h:902
DTTDCHeaderWord(const uint32_t index)
Definition: DTDDUWords.h:507
static const uint32_t errorControlWord
Definition: DTDDUWords.h:186
#define PC_SHIFT
Definition: DTDDUWords.h:53
int TTCEventCounter() const
Definition: DTDDUWords.h:223
DTLocalTriggerSectorCollectorHeaderWord(const uint32_t index)
Definition: DTDDUWords.h:935
DTTDCMeasurementWord(const DTTDCMeasurementWord &obj)
Definition: DTDDUWords.h:612
DTROBTrailerWord(const uint32_t index)
Definition: DTDDUWords.h:460
#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:378
virtual ~DTTDCTrailerWord()
Destructor.
Definition: DTDDUWords.h:565
int wordCount() const
Definition: DTDDUWords.h:572
#define TRIGGER_WORD_COUNT_MASK
Definition: DTDDUWords.h:68
DTLocalTriggerHeaderWord(const uint32_t index)
Definition: DTDDUWords.h:720
int tdcTime() const
Definition: DTDDUWords.h:625
DTLocalTriggerSectorCollectorHeaderWord()
Constructor.
Definition: DTDDUWords.h:931
#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:184
static void set(uint32_t &word, int pc, int paf, int hu, int tdc_id, int tdc_error)
Definition: DTDDUWords.h:682
static const uint32_t scTypeWord
Definition: DTDDUWords.h:191
#define PC_MASK
Definition: DTDDUWords.h:52
DTLocalTriggerDataWord(const DTLocalTriggerDataWord &obj)
Definition: DTDDUWords.h:799
#define ERRORSHIFT
Definition: DTDDUWords.h:17
DTROSWordType(const DTROSWordType &obj)
Definition: DTDDUWords.h:103
virtual ~DTROBHeaderWord()
Destructor.
Definition: DTDDUWords.h:417
int TPX() const
Definition: DTDDUWords.h:268
DTROBTrailerWord(const DTROBTrailerWord &obj)
Definition: DTDDUWords.h:458
DTROSHeaderWord(const uint32_t index)
Definition: DTDDUWords.h:217
virtual ~DTLocalTriggerSectorCollectorHeaderWord()
Destructor.
Definition: DTDDUWords.h:939
int debugMessage() const
Definition: DTDDUWords.h:362
virtual ~DTTDCMeasurementWord()
Destructor.
Definition: DTDDUWords.h:618
int PC() const
Definition: DTDDUWords.h:567
virtual ~DTDDUFirstStatusWord()
Destructor.
Definition: DTDDUWords.h:853
static void set(uint32_t &word, int error_type, int rob_id)
Definition: DTDDUWords.h:320
#define WORDTYPESHIFT
Definition: DTDDUWords.h:13
static void set(uint32_t &word, int ttc_event_counter)
Definition: DTDDUWords.h:225
int fifoFull() const
Definition: DTDDUWords.h:895
DTTDCTrailerWord()
Constructor.
Definition: DTDDUWords.h:557
int eventID() const
Definition: DTDDUWords.h:571
#define DEBUG_MESSAGE_MASK
Definition: DTDDUWords.h:21
int dontRead() const
Definition: DTDDUWords.h:365
bool first
Definition: L1TdeRCT.cc:79
#define CEROS_ID_CEROS_STATUS_SHIFT
Definition: DTDDUWords.h:23
DTROSDebugWord(const DTROSDebugWord &obj)
Definition: DTDDUWords.h:353
uint32_t word_
Definition: DTDDUWords.h:439
#define ERROR_ROB_ID_MASK
Definition: DTDDUWords.h:42
#define PAF_SHIFT
Definition: DTDDUWords.h:55
int tdcID() const
&lt;== OBSOLETE!!
Definition: DTDDUWords.h:623
DTTDCErrorWord(const uint32_t index)
Definition: DTDDUWords.h:670
DTROSTrailerWord(const uint32_t index)
Definition: DTDDUWords.h:261
uint32_t word_
Definition: DTDDUWords.h:485
int inputFifoAlmostFull() const
Definition: DTDDUWords.h:898
#define SC_BXC_MASK
Definition: DTDDUWords.h:80
#define TPX_MASK
Definition: DTDDUWords.h:34
int robID() const
Definition: DTDDUWords.h:419
int inputFifoFull() const
Definition: DTDDUWords.h:896
DTTDCHeaderWord(const DTTDCHeaderWord &obj)
Definition: DTDDUWords.h:505
#define EVENT_WORD_COUNT_MASK
Definition: DTDDUWords.h:38
#define TDC_ID_MASK
Definition: DTDDUWords.h:56
DTROSDebugWord()
Constructor.
Definition: DTDDUWords.h:351
int tlkSignalLost() const
Definition: DTDDUWords.h:861
int cerosID() const
Definition: DTDDUWords.h:318
enum wordTypes type()
DDU word type getter.
Definition: DTDDUWords.h:131
#define TFF_SHIFT
Definition: DTDDUWords.h:33
virtual ~DTDDUSecondStatusWord()
Destructor.
Definition: DTDDUWords.h:891
#define DONTREAD_CEROS_STATUS_MASK
Definition: DTDDUWords.h:26
int errorType() const
Definition: DTDDUWords.h:316
#define DEBUG_TYPE_SHIFT
Definition: DTDDUWords.h:20
virtual ~DTLocalTriggerSectorCollectorSubHeaderWord()
Destructor.
Definition: DTDDUWords.h:982
DTROSTrailerWord(const DTROSTrailerWord &obj)
Definition: DTDDUWords.h:259
uint32_t word_
Definition: DTDDUWords.h:594
static const uint32_t tdcDataControlWord
Definition: DTDDUWords.h:185
wordTypes
List of DT DDU Word Types.
Definition: DTDDUWords.h:111
static const uint32_t rosTypeWord
Word Type bits definitions.
Definition: DTDDUWords.h:190
int tdcID() const
&lt;== OBSOLETE!!
Definition: DTDDUWords.h:570
DTROSHeaderWord(const DTROSHeaderWord &obj)
Definition: DTDDUWords.h:215
DTLocalTriggerHeaderWord(const DTLocalTriggerHeaderWord &obj)
Definition: DTDDUWords.h:718
int timeout() const
Definition: DTDDUWords.h:856
int bxIDError() const
Definition: DTDDUWords.h:894
DTTDCTrailerWord(const uint32_t index)
Definition: DTDDUWords.h:561
static void set(uint32_t &word, int pc, int paf, int hu, int tdc_id, int tdc_channel, int tdc_time)
Definition: DTDDUWords.h:628
static void set(uint32_t &word, int sc_data)
Definition: DTDDUWords.h:818
#define BUNCH_ID_MASK
Definition: DTDDUWords.h:49
#define CEROS_ID_CEROS_STATUS_MASK
Definition: DTDDUWords.h:22
int debugType() const
Definition: DTDDUWords.h:361
#define TDC_CHANNEL_MASK
Definition: DTDDUWords.h:59
static const uint32_t debugControlWord
Definition: DTDDUWords.h:187
DTTDCErrorWord(const DTTDCErrorWord &obj)
Definition: DTDDUWords.h:668
#define EV_ID_CEROS_STATUS_MASK
Definition: DTDDUWords.h:24
#define SC_LAT_SHIFT
Definition: DTDDUWords.h:73
int PAF() const
Definition: DTDDUWords.h:568
int tlkPatternError() const
Definition: DTDDUWords.h:860
#define TDC_ERROR_MASK
Definition: DTDDUWords.h:64
int outputFifoAlmostFull() const
Definition: DTDDUWords.h:900
int robID() const
Definition: DTDDUWords.h:466
#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:515
#define TDC_ID_SHIFT
Definition: DTDDUWords.h:57
#define PAF_MASK
Definition: DTDDUWords.h:54
DTROSErrorWord()
Constructor.
Definition: DTDDUWords.h:306
static void set(uint32_t &word, int tff, int tpx, int l1a_fifo_occ, int event_word_count)
Definition: DTDDUWords.h:272
int tdcID() const
&lt;== OBSOLETE!!
Definition: DTDDUWords.h:679
uint32_t word_
Definition: DTDDUWords.h:290
int HU() const
Definition: DTDDUWords.h:678
#define TDC_CHANNEL_SHIFT
Definition: DTDDUWords.h:60
static void set(uint32_t &word, int lat, int nw)
Definition: DTDDUWords.h:945
static void set(uint32_t &word, int pc, int paf, int hu, int tdc_id, int event_id, int bunch_id)
Definition: DTDDUWords.h:520
#define EVENT_ID_SHIFT
Definition: DTDDUWords.h:48
static const uint32_t headerControlWord
Control bits definitions.
Definition: DTDDUWords.h:181
DTLocalTriggerSectorCollectorSubHeaderWord(const DTLocalTriggerSectorCollectorSubHeaderWord &obj)
Definition: DTDDUWords.h:976
int PAF() const
Definition: DTDDUWords.h:677
DTLocalTriggerTrailerWord(const DTLocalTriggerTrailerWord &obj)
Definition: DTDDUWords.h:760
static void set(uint32_t &word, int debug_type)
Definition: DTDDUWords.h:368
DTROSHeaderWord()
Constructor.
Definition: DTDDUWords.h:213
virtual ~DTROSWordType()
Destructor.
Definition: DTDDUWords.h:108
virtual ~DTROSErrorWord()
Destructor.
Definition: DTDDUWords.h:314
uint32_t word_
Definition: DTDDUWords.h:237
DTROBHeaderWord()
Constructor.
Definition: DTDDUWords.h:409
DTROBHeaderWord(const DTROBHeaderWord &obj)
Definition: DTDDUWords.h:411
int TFF() const
Definition: DTDDUWords.h:267
int fifoAlmostFull() const
Definition: DTDDUWords.h:897
DTROSTrailerWord()
Constructor.
Definition: DTDDUWords.h:257
int channelEnabled() const
Definition: DTDDUWords.h:855
int PAF() const
Definition: DTDDUWords.h:514
int outOfSynchROSError() const
Definition: DTDDUWords.h:904
DTROSErrorWord(const DTROSErrorWord &obj)
Definition: DTDDUWords.h:308
int bunchID() const
Definition: DTDDUWords.h:421
uint32_t word_
Definition: DTDDUWords.h:334
DTTDCMeasurementWord(const uint32_t index)
Definition: DTDDUWords.h:614
uint32_t word_
Definition: DTDDUWords.h:541
DTLocalTriggerTrailerWord()
Constructor.
Definition: DTDDUWords.h:758
#define TPX_SHIFT
Definition: DTDDUWords.h:35
static void set(uint32_t &word, int trigdly, int bxcount)
Definition: DTDDUWords.h:988
DTDDUSecondStatusWord(const uint32_t index)
Definition: DTDDUWords.h:887
int cerosIdCerosStatus() const
Definition: DTDDUWords.h:363
#define ERROR_ROB_ID_SHIFT
Definition: DTDDUWords.h:43
DTLocalTriggerSectorCollectorHeaderWord(const DTLocalTriggerSectorCollectorHeaderWord &obj)
Definition: DTDDUWords.h:933
virtual ~DTLocalTriggerTrailerWord()
Destructor.
Definition: DTDDUWords.h:766
int eventID() const
Definition: DTDDUWords.h:420
int eventID() const
Definition: DTDDUWords.h:467
DTDDUFirstStatusWord()
Constructor.
Definition: DTDDUWords.h:845
virtual ~DTROSDebugWord()
Destructor.
Definition: DTDDUWords.h:359
#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:730
int bunchID() const
Definition: DTDDUWords.h:518
int eventID() const
Definition: DTDDUWords.h:517