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 
97 
98 public:
99 
101  DTROSWordType(const uint32_t index) {
102  word_ = index;
103  }
104 
106  *this = obj;
107  }
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 
213 
214 public:
215 
218 
219  DTROSHeaderWord(const DTROSHeaderWord& obj) { *this = obj; }
220 
221  DTROSHeaderWord(const uint32_t index) :
222  word_(index) {}
223 
225  virtual ~DTROSHeaderWord() {}
226 
227  int TTCEventCounter() const { return word_ & TTC_EVENT_COUNTER_MASK; }
228 
229  static void set(uint32_t &word,
230  int ttc_event_counter) {
231 
232  word =
235  ttc_event_counter;
236  }
237 
238 
239 private:
240 
241  uint32_t word_;
242 
243 };
244 
245 
259 
260 public:
261 
264 
266 
267  DTROSTrailerWord(const uint32_t index) :
268  word_(index) {}
269 
271  virtual ~DTROSTrailerWord() {}
272 
273  int TFF() const { return (word_ & TFF_MASK) >> TFF_SHIFT; }
274  int TPX() const { return (word_ & TPX_MASK) >> TPX_SHIFT; }
276  int EventWordCount() const { return word_ & EVENT_WORD_COUNT_MASK; }
277 
278  static void set(uint32_t &word,
279  int tff,
280  int tpx,
281  int l1a_fifo_occ,
282  int event_word_count) {
283 
284  word =
287  tff << TFF_SHIFT |
288  tpx << TPX_SHIFT |
289  l1a_fifo_occ << L1A_FIFO_OCC_SHIFT |
290  event_word_count;
291  }
292 
293 
294 private:
295 
296  uint32_t word_;
297 
298 };
299 
300 
310 
311 public:
312 
315 
316  DTROSErrorWord(const DTROSErrorWord& obj) { *this = obj; }
317 
318  DTROSErrorWord(const uint32_t index) :
319  word_(index) {}
320 
322  virtual ~DTROSErrorWord() {}
323 
324  int errorType() const { return (word_ & ERROR_TYPE_MASK) >> ERROR_TYPE_SHIFT;}
325  int robID() const { return (word_ & ERROR_ROB_ID_MASK) >> ERROR_ROB_ID_SHIFT;}
326  int cerosID() const {return errorType()==4 ? (word_ & ERROR_CEROS_ID_MASK) : 0;}
327 
328  static void set(uint32_t &word,
329  int error_type,
330  int rob_id) {
331 
332  word =
335  error_type << ERROR_TYPE_SHIFT |
336  rob_id << ERROR_ROB_ID_SHIFT |
337  1 << ERRORSHIFT;
338  }
339 
340 private:
341 
342  uint32_t word_;
343 
344 };
345 
346 
357 
358 public:
359 
362 
363  DTROSDebugWord(const DTROSDebugWord& obj) { *this = obj; }
364 
365  DTROSDebugWord(const uint32_t index) :
366  word_(index) {}
367 
369  virtual ~DTROSDebugWord() {}
370 
371  int debugType() const { return (word_ & DEBUG_TYPE_MASK) >> DEBUG_TYPE_SHIFT;}
372  int debugMessage() const { return (word_ & DEBUG_MESSAGE_MASK) ;}
374  int evIdMis() const { return debugType()==3 ? (word_ & EV_ID_CEROS_STATUS_MASK) >> EV_ID_CEROS_STATUS_SHIFT : 0;}
375  int dontRead() const { return debugType()==3 ? (word_ & DONTREAD_CEROS_STATUS_MASK) : 0;}
376  int cerosIdRosStatus() const { return debugType()==4 ? (word_ & CEROS_ID_ROS_STATUS_MASK) : 0;}
377 
378  static void set(uint32_t &word, //CB FIXME do we need setters for DEBUG Types 3 and 4?
379  int debug_type) {
380 
381  word =
384  debug_type << DEBUG_TYPE_SHIFT |
385  504 << 15; // TEMPORARY
386  }
387 
388  static void set(uint32_t &word,
389  int debug_type,
390  int ceros_id) {
391 
392  word =
395  debug_type << DEBUG_TYPE_SHIFT |
396  ceros_id << CEROS_ID_CEROS_STATUS_SHIFT |
397  1 << 15;
398  }
399 
400 private:
401 
402  uint32_t word_;
403 
404 };
405 
406 
417 
418 public:
419 
422 
423  DTROBHeaderWord(const DTROBHeaderWord& obj) { *this = obj; }
424 
425  DTROBHeaderWord(const uint32_t index) :
426  word_(index) {}
427 
429  virtual ~DTROBHeaderWord() {}
430 
431  int robID() const { return (word_ & ROB_ID_MASK) >> WORDTYPESHIFT;}
432  int eventID() const { return (word_ & EVENT_ID_MASK) >> EVENT_ID_SHIFT;}
433  int bunchID() const { return (word_ & BUNCH_ID_MASK);}
434 
435 
436  static void set(uint32_t &word,
437  int rob_id,
438  int event_id,
439  int bunch_id) {
440 
441  word =
443  rob_id << WORDTYPESHIFT |
444  event_id << EVENT_ID_SHIFT |
445  bunch_id;
446  }
447 
448 
449 private:
450 
451  uint32_t word_;
452 
453 };
454 
455 
466 
467 public:
468 
471 
473 
474  DTROBTrailerWord(const uint32_t index) :
475  word_(index) {}
476 
478  virtual ~DTROBTrailerWord() {}
479 
480  int robID() const { return (word_ & ROB_ID_MASK) >> WORDTYPESHIFT;}
481  int eventID() const { return (word_ & EVENT_ID_MASK) >> EVENT_ID_SHIFT;}
482  int wordCount() const { return (word_ & WORD_COUNT_MASK);}
483 
484  static void set(uint32_t &word,
485  int rob_id,
486  int event_id,
487  int word_count) {
488 
489  word =
491  rob_id << WORDTYPESHIFT |
492  event_id << EVENT_ID_SHIFT |
493  word_count;
494  }
495 
496 
497 private:
498 
499  uint32_t word_;
500 };
501 
502 
503 
504 
515 
516 public:
517 
520 
521  DTTDCHeaderWord(const DTTDCHeaderWord& obj) { *this = obj; }
522 
523  DTTDCHeaderWord(const uint32_t index) :
524  word_(index) {}
525 
527  virtual ~DTTDCHeaderWord() {}
528 
529  int PC() const { return (word_ & PC_MASK) >> PC_SHIFT;}
530  int PAF() const { return (word_ & PAF_MASK) >> PAF_SHIFT;}
531  int HU() const { return (word_ & PAF_MASK) >> PAF_SHIFT;}
532  int tdcID() const { return (word_ & TDC_ID_MASK) >> TDC_ID_SHIFT;}
533  int eventID() const { return (word_ & EVENT_ID_MASK) >> EVENT_ID_SHIFT;}
534  int bunchID() const { return (word_ & BUNCH_ID_MASK);}
535 
536  static void set(uint32_t &word,
537  int pc,
538  int paf,
539  int hu,
540  int tdc_id,
541  int event_id,
542  int bunch_id) {
543 
544  word =
546  pc << PC_SHIFT |
547  paf << PAF_SHIFT |
548  hu << PAF_SHIFT |
549  tdc_id << TDC_ID_SHIFT |
550  event_id << EVENT_ID_SHIFT |
551  bunch_id;
552  }
553 
554 
555 private:
556 
557  uint32_t word_;
558 };
559 
560 
571 
572 public:
573 
576 
578 
579  DTTDCTrailerWord(const uint32_t index) :
580  word_(index) {}
581 
583  virtual ~DTTDCTrailerWord() {}
584 
585  int PC() const { return (word_ & PC_MASK) >> PC_SHIFT;}
586  int PAF() const { return (word_ & PAF_MASK) >> PAF_SHIFT;}
587  int HU() const { return (word_ & PAF_MASK) >> PAF_SHIFT;}
588  int tdcID() const { return (word_ & TDC_ID_MASK) >> TDC_ID_SHIFT;}
589  int eventID() const { return (word_ & EVENT_ID_MASK) >> EVENT_ID_SHIFT;}
590  int wordCount() const { return (word_ & WORD_COUNT_MASK);}
591 
592  static void set(uint32_t &word,
593  int pc,
594  int paf,
595  int hu,
596  int tdc_id,
597  int event_id,
598  int word_count) {
599 
600  word =
602  pc << PC_SHIFT |
603  paf << PAF_SHIFT |
604  hu << PAF_SHIFT |
605  tdc_id << TDC_ID_SHIFT |
606  event_id << EVENT_ID_SHIFT |
607  word_count;
608  }
609 
610 private:
611 
612  uint32_t word_;
613 };
614 
615 
626 
627 public:
628 
631 
633 
634  DTTDCMeasurementWord(const uint32_t index) :
635  word_(index) {}
636 
639 
640  int PC() const { return (word_ & PC_MASK) >> PC_SHIFT;}
641  int PAF() const { return (word_ & PAF_MASK) >> PAF_SHIFT;}
642  int HU() const { return (word_ & PAF_MASK) >> PAF_SHIFT;}
643  int tdcID() const { return (word_ & TDC_ID_MASK) >> TDC_ID_SHIFT;}
644  int tdcChannel() const { return (word_ & TDC_CHANNEL_MASK) >> TDC_CHANNEL_SHIFT;}
645  int tdcTime() const { return (word_ & TDC_TIME_MASK) >> TDC_TIME_SHIFT;}
646 
647 
648  static void set(uint32_t &word,
649  int pc,
650  int paf,
651  int hu,
652  int tdc_id,
653  int tdc_channel,
654  int tdc_time) {
655 
656  word =
658  pc << PC_SHIFT |
659  paf << PAF_SHIFT |
660  hu << PAF_SHIFT |
661  tdc_id << TDC_ID_SHIFT |
662  tdc_channel << TDC_CHANNEL_SHIFT |
663  tdc_time;
664  }
665 
666 
667 
668 private:
669 
670  uint32_t word_;
671 };
672 
673 
684 
685 public:
686 
689 
690  DTTDCErrorWord(const DTTDCErrorWord& obj) { *this = obj; }
691 
692  DTTDCErrorWord(const uint32_t index) :
693  word_(index) {}
694 
696  virtual ~DTTDCErrorWord() {}
697 
698  int PC() const { return (word_ & PC_MASK) >> PC_SHIFT;}
699  int PAF() const { return (word_ & PAF_MASK) >> PAF_SHIFT;}
700  int HU() const { return (word_ & PAF_MASK) >> PAF_SHIFT;}
701  int tdcID() const { return (word_ & TDC_ID_MASK) >> TDC_ID_SHIFT;}
702  int tdcError() const { return (word_ & TDC_ERROR_MASK);}
703 
704  static void set(uint32_t &word,
705  int pc,
706  int paf,
707  int hu,
708  int tdc_id,
709  int tdc_error) {
710 
711  word =
713  pc << PC_SHIFT |
714  paf << PAF_SHIFT |
715  hu << PAF_SHIFT |
716  tdc_id << TDC_ID_SHIFT |
717  0 << ERRORSHIFT |
718  tdc_error;
719  }
720 
721 private:
722 
723  uint32_t word_;
724 };
725 
726 
736 
737 public:
738 
741 
743 
744  DTLocalTriggerHeaderWord(const uint32_t index) :
745  word_(index) {}
746 
749 
750  int eventID() const { return (word_ & EVENT_ID_MASK) >> EVENT_ID_SHIFT;}
751  int SCFO() const { return (word_ & SCFO_MASK);}
752 
753 
754  static void set(uint32_t &word,
755  int event_id,
756  int scfo) {
757 
758  word =
761  event_id << EVENT_ID_SHIFT |
762  scfo;
763  }
764 
765 private:
766 
767  uint32_t word_;
768 };
769 
770 
780 
781 public:
782 
785 
787 
788  DTLocalTriggerTrailerWord(const uint32_t index) :
789  word_(index) {}
790 
793 
794  int wordCount() const { return (word_ & TRIGGER_WORD_COUNT_MASK);}
795 
796  static void set(uint32_t &word,
797  int word_count) {
798 
799  word =
802  word_count;
803  }
804 
805 
806 private:
807 
808  uint32_t word_;
809 };
810 
811 
821 
822 public:
823 
826 
828 
829  DTLocalTriggerDataWord(const uint32_t index) :
830  word_(index) {}
831 
834 
835  int SCData() const { return (word_ & TRIGGER_DATA_MASK);}
836 
837  int getBits(int first) const {
838  return first==1 ? ((word_ & TRIGGER_DATA_MASK) >> 8) : ((word_ & TRIGGER_DATA_MASK)&0xFF);
839  }
840 
841  //int hasTrigger(int first) const { return (getBits(first) & 0x40) >> 6; }
842  int hasTrigger(int first) const { return (trackQuality(first) != 7? 1 : 0);}
843  int trackQuality(int first) const { return (getBits(first) & 0xE) >> 1; }
844 
845 
846  static void set(uint32_t &word,
847  int sc_data) {
848 
849  word =
852  sc_data;
853  }
854 
855 
856 private:
857 
858  uint32_t word_;
859 };
860 
861 
871 
872 public:
873 
876 
878 
879  DTDDUFirstStatusWord(const unsigned char index) :
880  word_(index) {}
881 
884 
885  int channelEnabled() const { return (word_ & 0x1);}
886  int timeout() const { return (word_ & 0x2) >> 1;}
887  int eventTrailerLost() const { return (word_ & 0x4) >> 2;}
888  int opticalFiberSignalLost() const { return (word_ & 0x8) >> 3;}
889  int tlkPropagationError() const { return (word_ & 0x10) >> 4;}
890  int tlkPatternError() const { return (word_ & 0x20) >> 5;}
891  int tlkSignalLost() const { return (word_ & 0x40) >> 6;}
892  int errorFromROS() const { return (word_ & 0x80) >> 7;}
893 
894 
895 private:
896 
897  unsigned char word_;
898 };
899 
900 
911 
912 public:
913 
916 
918 
919  DTDDUSecondStatusWord(const uint32_t index) :
920  word_(index) {}
921 
924 
925  int l1AIDError() const { return (word_ & 0x1); }
926  int bxIDError() const { return (word_ & 0x2) >> 1; }
927  int fifoFull() const { return (word_ & 0x1C ) >> 2; }
928  int inputFifoFull() const { return (word_ & 0xE0) >> 5; }
929  int fifoAlmostFull() const { return (word_ & 0x700) >> 8; }
930  int inputFifoAlmostFull() const { return (word_ & 0x3800) >> 11; }
931  int outputFifoFull() const { return (word_ & 0x4000) >> 14; }
932  int outputFifoAlmostFull() const { return (word_ & 0x8000) >> 15; }
933  int rosList() const {return (word_ & 0xFFF0000) >> 16; }
934  int warningROSPAF() const {return (word_ & 0x10000000) >> 28; }
935  int busyROSPAF() const {return (word_ & 0x20000000) >> 29; }
936  int outOfSynchROSError() const {return (word_ & 0x40000000) >> 30; }
937 
938 
939 // int fifoAlmostEmpty() const { return (word_ & 0x1C000) >> 14; }
940 // int inputFifoAlmostEmpty() const { return (word_ & 0xE0000) >> 17; }
941 // int outputFifoFull() const { return (word_ & 0x100000) >> 20; }
942 // int outputFifoAlmostFull() const { return (word_ & 0x200000) >> 21; }
943 // int outputFifoAlmostEmpty() const { return (word_ & 0x400000) >> 22; }
944 
945 private:
946 
947  uint32_t word_;
948 };
949 
950 
961 
962 public:
963 
966 
968 
970  word_(index) {}
971 
974 
975  int Latency() const { return ((word_ >> SC_LAT_SHIFT) & SC_LAT_MASK);}
976  int NumberOf16bitWords() const { return (word_ & SC_NW_MASK);}
977 
978 
979  static void set(uint32_t &word,
980  int lat,
981  int nw) {
982 
983  word =
986  (lat & SC_LAT_MASK) << SC_LAT_SHIFT |
987  (nw & SC_NW_MASK) ;
988  }
989 
990 private:
991 
992  uint32_t word_;
993 };
994 
995 
1006 
1007 public:
1008 
1011 
1013 
1015  word_(index) {}
1016 
1019 
1021  int LocalBunchCounter() const { return (word_ & SC_BXC_MASK );}
1022 
1023 
1024  static void set(uint32_t &word,
1025  int trigdly,
1026  int bxcount) {
1027 
1028  word =
1031  (trigdly & SC_TRIGGERDLY_MASK) << SC_TRIGGERDLY_SHIFT |
1032  (bxcount & SC_BXC_MASK) ;
1033  }
1034 
1035 private:
1036 
1037  uint32_t word_;
1038 };
1039 
1040 
1041 #endif
DTROSWordType(const uint32_t index)
Constructor.
Definition: DTDDUWords.h:101
int trackQuality(int first) const
Definition: DTDDUWords.h:843
int EventWordCount() const
Definition: DTDDUWords.h:276
DTLocalTriggerDataWord()
Constructor.
Definition: DTDDUWords.h:825
int HU() const
Definition: DTDDUWords.h:642
int opticalFiberSignalLost() const
Definition: DTDDUWords.h:888
virtual ~DTTDCErrorWord()
Destructor.
Definition: DTDDUWords.h:696
DTTDCHeaderWord()
Constructor.
Definition: DTDDUWords.h:519
int tdcError() const
Definition: DTDDUWords.h:702
#define WORDCONTROLMASK
Definition: DTDDUWords.h:10
int tlkPropagationError() const
Definition: DTDDUWords.h:889
DTLocalTriggerDataWord(const uint32_t index)
Definition: DTDDUWords.h:829
int evIdMis() const
Definition: DTDDUWords.h:374
#define EV_ID_CEROS_STATUS_SHIFT
Definition: DTDDUWords.h:25
int HU() const
Definition: DTDDUWords.h:587
int PC() const
Definition: DTDDUWords.h:698
#define TDC_TIME_MASK
Definition: DTDDUWords.h:61
virtual ~DTROSTrailerWord()
Destructor.
Definition: DTDDUWords.h:271
DTDDUFirstStatusWord(const DTDDUFirstStatusWord &obj)
Definition: DTDDUWords.h:877
DTLocalTriggerTrailerWord(const uint32_t index)
Definition: DTDDUWords.h:788
#define DEBUG_TYPE_MASK
Definition: DTDDUWords.h:19
DTDDUSecondStatusWord()
Constructor.
Definition: DTDDUWords.h:915
DTDDUSecondStatusWord(const DTDDUSecondStatusWord &obj)
Definition: DTDDUWords.h:917
int outputFifoFull() const
Definition: DTDDUWords.h:931
int PC() const
Definition: DTDDUWords.h:640
uint32_t word_
Definition: DTDDUWords.h:402
int PAF() const
Definition: DTDDUWords.h:641
int rosList() const
Definition: DTDDUWords.h:933
int SCData() const
Definition: DTDDUWords.h:835
#define WORDCONTROLSHIFT
Definition: DTDDUWords.h:11
virtual ~DTTDCHeaderWord()
Destructor.
Definition: DTDDUWords.h:527
int PC() const
Definition: DTDDUWords.h:529
int hasTrigger(int first) const
Definition: DTDDUWords.h:842
DTROSErrorWord(const uint32_t index)
Definition: DTDDUWords.h:318
#define SC_TRIGGERDLY_MASK
Definition: DTDDUWords.h:78
int l1AFifoOccupancy() const
Definition: DTDDUWords.h:275
int errorFromROS() const
Definition: DTDDUWords.h:892
#define L1A_FIFO_OCC_MASK
Definition: DTDDUWords.h:36
DTROSDebugWord(const uint32_t index)
Definition: DTDDUWords.h:365
static void set(uint32_t &word, int rob_id, int event_id, int bunch_id)
Definition: DTDDUWords.h:436
#define WORD_COUNT_MASK
Definition: DTDDUWords.h:50
virtual ~DTROSHeaderWord()
Destructor.
Definition: DTDDUWords.h:225
static const uint32_t trailerControlWord
Definition: DTDDUWords.h:184
int robID() const
Definition: DTDDUWords.h:325
int tdcID() const
&lt;== OBSOLETE!!
Definition: DTDDUWords.h:532
DTTDCErrorWord()
Constructor.
Definition: DTDDUWords.h:688
DTROBHeaderWord(const uint32_t index)
Definition: DTDDUWords.h:425
int eventTrailerLost() const
Definition: DTDDUWords.h:887
int getBits(int first) const
Definition: DTDDUWords.h:837
static void set(uint32_t &word, int rob_id, int event_id, int word_count)
Definition: DTDDUWords.h:484
#define ERROR_CEROS_ID_MASK
Definition: DTDDUWords.h:44
uint32_t word_
Definition: DTDDUWords.h:198
uint32_t word_
Definition: DTDDUWords.h:723
DTLocalTriggerSectorCollectorSubHeaderWord(const uint32_t index)
Definition: DTDDUWords.h:1014
DTROBTrailerWord()
Constructor.
Definition: DTDDUWords.h:470
int busyROSPAF() const
Definition: DTDDUWords.h:935
virtual ~DTLocalTriggerHeaderWord()
Destructor.
Definition: DTDDUWords.h:748
#define WORDTYPEMASK
Definition: DTDDUWords.h:12
int l1AIDError() const
Definition: DTDDUWords.h:925
DTLocalTriggerSectorCollectorSubHeaderWord()
Constructor.
Definition: DTDDUWords.h:1010
virtual ~DTROBTrailerWord()
Destructor.
Definition: DTDDUWords.h:478
int tdcChannel() const
Definition: DTDDUWords.h:644
int wordCount() const
Definition: DTDDUWords.h:482
DTLocalTriggerHeaderWord()
Constructor.
Definition: DTDDUWords.h:740
DTTDCTrailerWord(const DTTDCTrailerWord &obj)
Definition: DTDDUWords.h:577
static void set(uint32_t &word, int word_count)
Definition: DTDDUWords.h:796
#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:879
unsigned char word_
Definition: DTDDUWords.h:897
#define TFF_MASK
Definition: DTDDUWords.h:32
#define TTC_EVENT_COUNTER_MASK
Definition: DTDDUWords.h:30
int cerosIdRosStatus() const
Definition: DTDDUWords.h:376
DTTDCMeasurementWord()
Constructor.
Definition: DTDDUWords.h:630
virtual ~DTLocalTriggerDataWord()
Destructor.
Definition: DTDDUWords.h:833
static void set(uint32_t &word, int pc, int paf, int hu, int tdc_id, int event_id, int word_count)
Definition: DTDDUWords.h:592
int warningROSPAF() const
Definition: DTDDUWords.h:934
DTTDCHeaderWord(const uint32_t index)
Definition: DTDDUWords.h:523
static const uint32_t errorControlWord
Definition: DTDDUWords.h:188
#define PC_SHIFT
Definition: DTDDUWords.h:53
int TTCEventCounter() const
Definition: DTDDUWords.h:227
DTLocalTriggerSectorCollectorHeaderWord(const uint32_t index)
Definition: DTDDUWords.h:969
DTTDCMeasurementWord(const DTTDCMeasurementWord &obj)
Definition: DTDDUWords.h:632
DTROBTrailerWord(const uint32_t index)
Definition: DTDDUWords.h:474
#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:388
virtual ~DTTDCTrailerWord()
Destructor.
Definition: DTDDUWords.h:583
int wordCount() const
Definition: DTDDUWords.h:590
#define TRIGGER_WORD_COUNT_MASK
Definition: DTDDUWords.h:68
DTLocalTriggerHeaderWord(const uint32_t index)
Definition: DTDDUWords.h:744
int tdcTime() const
Definition: DTDDUWords.h:645
DTLocalTriggerSectorCollectorHeaderWord()
Constructor.
Definition: DTDDUWords.h:965
#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:704
static const uint32_t scTypeWord
Definition: DTDDUWords.h:193
#define PC_MASK
Definition: DTDDUWords.h:52
DTLocalTriggerDataWord(const DTLocalTriggerDataWord &obj)
Definition: DTDDUWords.h:827
#define ERRORSHIFT
Definition: DTDDUWords.h:17
DTROSWordType(const DTROSWordType &obj)
Definition: DTDDUWords.h:105
virtual ~DTROBHeaderWord()
Destructor.
Definition: DTDDUWords.h:429
int TPX() const
Definition: DTDDUWords.h:274
DTROBTrailerWord(const DTROBTrailerWord &obj)
Definition: DTDDUWords.h:472
DTROSHeaderWord(const uint32_t index)
Definition: DTDDUWords.h:221
virtual ~DTLocalTriggerSectorCollectorHeaderWord()
Destructor.
Definition: DTDDUWords.h:973
int debugMessage() const
Definition: DTDDUWords.h:372
virtual ~DTTDCMeasurementWord()
Destructor.
Definition: DTDDUWords.h:638
int PC() const
Definition: DTDDUWords.h:585
virtual ~DTDDUFirstStatusWord()
Destructor.
Definition: DTDDUWords.h:883
static void set(uint32_t &word, int error_type, int rob_id)
Definition: DTDDUWords.h:328
#define WORDTYPESHIFT
Definition: DTDDUWords.h:13
static void set(uint32_t &word, int ttc_event_counter)
Definition: DTDDUWords.h:229
int fifoFull() const
Definition: DTDDUWords.h:927
DTTDCTrailerWord()
Constructor.
Definition: DTDDUWords.h:575
int eventID() const
Definition: DTDDUWords.h:589
#define DEBUG_MESSAGE_MASK
Definition: DTDDUWords.h:21
int dontRead() const
Definition: DTDDUWords.h:375
bool first
Definition: L1TdeRCT.cc:94
#define CEROS_ID_CEROS_STATUS_SHIFT
Definition: DTDDUWords.h:23
DTROSDebugWord(const DTROSDebugWord &obj)
Definition: DTDDUWords.h:363
uint32_t word_
Definition: DTDDUWords.h:451
#define ERROR_ROB_ID_MASK
Definition: DTDDUWords.h:42
#define PAF_SHIFT
Definition: DTDDUWords.h:55
int tdcID() const
&lt;== OBSOLETE!!
Definition: DTDDUWords.h:643
DTTDCErrorWord(const uint32_t index)
Definition: DTDDUWords.h:692
DTROSTrailerWord(const uint32_t index)
Definition: DTDDUWords.h:267
uint32_t word_
Definition: DTDDUWords.h:499
int inputFifoAlmostFull() const
Definition: DTDDUWords.h:930
#define SC_BXC_MASK
Definition: DTDDUWords.h:80
#define TPX_MASK
Definition: DTDDUWords.h:34
int robID() const
Definition: DTDDUWords.h:431
int inputFifoFull() const
Definition: DTDDUWords.h:928
DTTDCHeaderWord(const DTTDCHeaderWord &obj)
Definition: DTDDUWords.h:521
#define EVENT_WORD_COUNT_MASK
Definition: DTDDUWords.h:38
#define TDC_ID_MASK
Definition: DTDDUWords.h:56
DTROSDebugWord()
Constructor.
Definition: DTDDUWords.h:361
int tlkSignalLost() const
Definition: DTDDUWords.h:891
int cerosID() const
Definition: DTDDUWords.h:326
enum wordTypes type()
DDU word type getter.
Definition: DTDDUWords.h:133
#define TFF_SHIFT
Definition: DTDDUWords.h:33
virtual ~DTDDUSecondStatusWord()
Destructor.
Definition: DTDDUWords.h:923
#define DONTREAD_CEROS_STATUS_MASK
Definition: DTDDUWords.h:26
int errorType() const
Definition: DTDDUWords.h:324
#define DEBUG_TYPE_SHIFT
Definition: DTDDUWords.h:20
virtual ~DTLocalTriggerSectorCollectorSubHeaderWord()
Destructor.
Definition: DTDDUWords.h:1018
DTROSTrailerWord(const DTROSTrailerWord &obj)
Definition: DTDDUWords.h:265
uint32_t word_
Definition: DTDDUWords.h:612
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:588
DTROSHeaderWord(const DTROSHeaderWord &obj)
Definition: DTDDUWords.h:219
DTLocalTriggerHeaderWord(const DTLocalTriggerHeaderWord &obj)
Definition: DTDDUWords.h:742
int timeout() const
Definition: DTDDUWords.h:886
int bxIDError() const
Definition: DTDDUWords.h:926
DTTDCTrailerWord(const uint32_t index)
Definition: DTDDUWords.h:579
static void set(uint32_t &word, int pc, int paf, int hu, int tdc_id, int tdc_channel, int tdc_time)
Definition: DTDDUWords.h:648
static void set(uint32_t &word, int sc_data)
Definition: DTDDUWords.h:846
#define BUNCH_ID_MASK
Definition: DTDDUWords.h:49
#define CEROS_ID_CEROS_STATUS_MASK
Definition: DTDDUWords.h:22
int debugType() const
Definition: DTDDUWords.h:371
#define TDC_CHANNEL_MASK
Definition: DTDDUWords.h:59
static const uint32_t debugControlWord
Definition: DTDDUWords.h:189
DTTDCErrorWord(const DTTDCErrorWord &obj)
Definition: DTDDUWords.h:690
#define EV_ID_CEROS_STATUS_MASK
Definition: DTDDUWords.h:24
#define SC_LAT_SHIFT
Definition: DTDDUWords.h:73
int PAF() const
Definition: DTDDUWords.h:586
int tlkPatternError() const
Definition: DTDDUWords.h:890
#define TDC_ERROR_MASK
Definition: DTDDUWords.h:64
int outputFifoAlmostFull() const
Definition: DTDDUWords.h:932
int robID() const
Definition: DTDDUWords.h:480
#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:531
#define TDC_ID_SHIFT
Definition: DTDDUWords.h:57
#define PAF_MASK
Definition: DTDDUWords.h:54
DTROSErrorWord()
Constructor.
Definition: DTDDUWords.h:314
static void set(uint32_t &word, int tff, int tpx, int l1a_fifo_occ, int event_word_count)
Definition: DTDDUWords.h:278
int tdcID() const
&lt;== OBSOLETE!!
Definition: DTDDUWords.h:701
uint32_t word_
Definition: DTDDUWords.h:296
int HU() const
Definition: DTDDUWords.h:700
#define TDC_CHANNEL_SHIFT
Definition: DTDDUWords.h:60
static void set(uint32_t &word, int lat, int nw)
Definition: DTDDUWords.h:979
static void set(uint32_t &word, int pc, int paf, int hu, int tdc_id, int event_id, int bunch_id)
Definition: DTDDUWords.h:536
#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:1012
int PAF() const
Definition: DTDDUWords.h:699
DTLocalTriggerTrailerWord(const DTLocalTriggerTrailerWord &obj)
Definition: DTDDUWords.h:786
static void set(uint32_t &word, int debug_type)
Definition: DTDDUWords.h:378
DTROSHeaderWord()
Constructor.
Definition: DTDDUWords.h:217
virtual ~DTROSWordType()
Destructor.
Definition: DTDDUWords.h:110
virtual ~DTROSErrorWord()
Destructor.
Definition: DTDDUWords.h:322
uint32_t word_
Definition: DTDDUWords.h:241
DTROBHeaderWord()
Constructor.
Definition: DTDDUWords.h:421
DTROBHeaderWord(const DTROBHeaderWord &obj)
Definition: DTDDUWords.h:423
int TFF() const
Definition: DTDDUWords.h:273
int fifoAlmostFull() const
Definition: DTDDUWords.h:929
DTROSTrailerWord()
Constructor.
Definition: DTDDUWords.h:263
int channelEnabled() const
Definition: DTDDUWords.h:885
int PAF() const
Definition: DTDDUWords.h:530
int outOfSynchROSError() const
Definition: DTDDUWords.h:936
DTROSErrorWord(const DTROSErrorWord &obj)
Definition: DTDDUWords.h:316
int bunchID() const
Definition: DTDDUWords.h:433
uint32_t word_
Definition: DTDDUWords.h:342
DTTDCMeasurementWord(const uint32_t index)
Definition: DTDDUWords.h:634
uint32_t word_
Definition: DTDDUWords.h:557
DTLocalTriggerTrailerWord()
Constructor.
Definition: DTDDUWords.h:784
#define TPX_SHIFT
Definition: DTDDUWords.h:35
static void set(uint32_t &word, int trigdly, int bxcount)
Definition: DTDDUWords.h:1024
DTDDUSecondStatusWord(const uint32_t index)
Definition: DTDDUWords.h:919
int cerosIdCerosStatus() const
Definition: DTDDUWords.h:373
#define ERROR_ROB_ID_SHIFT
Definition: DTDDUWords.h:43
DTLocalTriggerSectorCollectorHeaderWord(const DTLocalTriggerSectorCollectorHeaderWord &obj)
Definition: DTDDUWords.h:967
virtual ~DTLocalTriggerTrailerWord()
Destructor.
Definition: DTDDUWords.h:792
int eventID() const
Definition: DTDDUWords.h:432
int eventID() const
Definition: DTDDUWords.h:481
DTDDUFirstStatusWord()
Constructor.
Definition: DTDDUWords.h:875
virtual ~DTROSDebugWord()
Destructor.
Definition: DTDDUWords.h:369
#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:754
int bunchID() const
Definition: DTDDUWords.h:534
int eventID() const
Definition: DTDDUWords.h:533