543 {
545 stream <<
"@@@@@@@@@@ event and sector logic identification @@@@@@@@@@\n\n";
546
552
554
555
556 stream <<
"@@@@@@@@@@ sector logic configuration parameters @@@@@@@@@@\n\n";
557
558
559 stream.setf(ios::hex, ios::basefield);
560 stream <<
"EnableTCCheckLow : ";
564 stream <<
"EnableTCCheckHigh : ";
568 int jj = 0;
570 for (jj = 0; jj <= 7; jj++) {
571 stream <<
"SetTCCheck pad[";
574 for (kk = 5;
kk >= 0;
kk--) {
578 }
580 }
582
583
584 stream <<
"EnableOPLCheck : ";
588 for (jj = 0; jj <= 7; jj++) {
589 stream <<
"SetOPLCheck pad[";
592 for (kk = 2;
kk >= 0;
kk--) {
596 }
598 }
600
603
604
611
618
619 int ibx = 0;
620
621
622 stream <<
"@@@@@@@@@@ sector logic input registers @@@@@@@@@@\n\n";
623
624
625 stream.setf(std::ios::dec, std::ios::basefield);
626 dfpa(stream, 8, 8, nBunMax);
627 int ipad = 0;
628 for (ipad = 0; ipad <= 7; ipad++) {
629 stream <<
"pad[" << ipad <<
"] :";
630 for (ibx = 0; ibx <= nBunMax - 1; ibx++) {
633 }
635 }
636
637
638 stream.setf(std::ios::hex, std::ios::basefield);
640 for (ibx = 0; ibx <= nBunMax - 1; ibx++) {
645 }
648 stream << std::endl << std::endl;
649
650
651 stream <<
"@@@@@@@@@@ sector logic internal registers @@@@@@@@@@\n\n";
652
653 int ireg = 0;
654 for (ireg = 0; ireg <= 4; ireg++) {
655
656 stream <<
"internal registers # " << ireg + 1 <<
" (input)" << std::endl;
657
658 stream.setf(std::ios::dec, std::ios::basefield);
659 dfpa(stream, 8, 8, nBunMax);
660 for (ipad = 0; ipad <= 7; ipad++) {
661 stream <<
"pad[" << ipad <<
"] :";
662 for (ibx = 0; ibx <= nBunMax - 1; ibx++) {
664 stream << (intreginp[ireg] + ibx)->pad[ipad];
665 }
667 }
668
669 stream.setf(ios::hex, ios::basefield);
671 for (ibx = 0; ibx <= nBunMax - 1; ibx++) {
675 stream << (intreginp[ireg] + ibx)->tile;
676 }
680
681 stream.setf(std::ios::dec, std::ios::basefield);
683 for (ibx = 0; ibx <= nBunMax - 1; ibx++) {
685 stream << (intreginp[ireg] + ibx)->out;
686 }
689
690
691 stream <<
"internal registers # " << ireg + 1 <<
" (output)" << std::endl;
692
693 stream.setf(std::ios::dec, std::ios::basefield);
694 dfpa(stream, 8, 8, nBunMax);
695 for (ipad = 0; ipad <= 7; ipad++) {
696 stream <<
"pad[" << ipad <<
"] :";
697 for (ibx = 0; ibx <= nBunMax - 1; ibx++) {
699 stream << (intregoutp[ireg] + ibx)->pad[ipad];
700 }
702 }
703
704 stream.setf(std::ios::hex, std::ios::basefield);
706 for (ibx = 0; ibx <= nBunMax - 1; ibx++) {
710 stream << (intregoutp[ireg] + ibx)->tile;
711 }
715
716 stream.setf(std::ios::dec, std::ios::basefield);
718 for (ibx = 0; ibx <= nBunMax - 1; ibx++) {
720 stream << (intregoutp[ireg] + ibx)->out;
721 }
722 stream << std::endl << std::endl;
723 }
724
725
726 stream.setf(std::ios::dec, std::ios::basefield);
727 stream <<
"@@@@@@@@@@ sector logic output register @@@@@@@@@@\n\n";
728 ofsla(stream, 8, 5, nBunMax);
730 for (ibx = 0; ibx <= nBunMax - 1; ibx++) {
733 }
734
736}
ostream & ofsla(ostream &stream, int indent, int whitesp, int ntimes)
ostream & dfpa(ostream &stream, int indent, int whitesp, int ntimes)
std::array< InternalRegister, 8 > m_LowPtFilter_out
std::array< InternalRegister, 8 > m_Sort2ndHighest_out
CMAword m_EnableTCCheckHigh
std::array< OutputFromSectorLogic, 8 > m_OutFromSectorLogic
std::array< InternalRegister, 8 > m_SortHighest_in
std::array< InternalRegister, 8 > m_SolveEtaOverlap_out
std::array< InternalRegister, 8 > m_TileCalConfirm_in
std::array< InternalRegister, 8 > m_LowPtFilter_in
std::array< CMAword, 8 > m_InFromTileCal
std::array< InternalRegister, 8 > m_SortHighest_out
ubit16 numberOfBunches() const
std::array< InternalRegister, 8 > m_Sort2ndHighest_in
CMAword m_EnableTCCheckLow
CMAword m_SetTCCheck[8][6]
std::array< InternalRegister, 8 > m_SolveEtaOverlap_in
std::array< InternalRegister, 8 > m_TileCalConfirm_out
ubit16 m_SetOPLCheck[8][3]
DataFromPad m_InFromPad[8][8]