47 cout <<
" ==================== " << endl;
48 cout <<
" = Pad::Pad = " << endl;
49 cout <<
" ==================== " << endl;
50 cout <<
" m_run= " <<
m_run <<
" m_event= " <<
m_event <<
" padDebug= " << hex <<
padDebug << dec << endl;
61 if (
padDebug & 1 << df) cout <<
"Distructor of Pad called " << endl;
70 for (m = 0; m < 2; m++) {
71 for (k = 0; k < 2; k++) {
72 for (j = 0; j < 2; j++) {
74 for (i = 0; i < 2; i++) {
83 for (k = 0; k < 8; k++) {
87 for (k = 0; k < 7; k++) {
116 cout <<
" Pad.setProjectionLogic; prologic= " << prologic <<
" not allowed; default value " <<
m_projectionLogic <<
" is retained "
132 if (lowhig > 1 || etaphi > 1 || locCMadd > 1 || BX >=
m_nBunMax) {
133 cout <<
" Pad::load : lowhig=" << lowhig <<
" etaphi=" << etaphi <<
" locCMadd=" << locCMadd <<
" BX=" << BX <<
" not valid"
136 m_padIn[lowhig][etaphi][locCMadd][BX][0] = thres;
137 m_padIn[lowhig][etaphi][locCMadd][BX][1] = overl;
143 if (
padDebug & 1 << df) cout <<
" execute PAD " << endl;
161 for (m = 0; m < 2; m++) {
162 for (j = 0; j < 2; j++) {
163 for (i = 0; i < 2; i++) {
170 thisThreshold = 3 * m +
m_padIn[m][j][i][l][0];
181 cout <<
" Pad::threshold; padStep2 eta-phi " << j <<
" localAdd " << i <<
" Bunch " << l
182 <<
" threshold " <<
m_padStep2[l][j][2] << endl;
198 for (j = 0; j < 2; j++) {
199 for (i = 0; i < 2; i++) {
216 default: cout <<
" Pad: problems with projectionLogic= " <<
m_projectionLogic << endl;
312 char padOutText[7][6];
313 strcpy(padOutText[0],
"RoI");
314 strcpy(padOutText[1],
"Ptcod");
315 strcpy(padOutText[2],
"OPL");
316 strcpy(padOutText[3],
"OvPhi");
317 strcpy(padOutText[4],
"OvEta");
318 strcpy(padOutText[5],
"RoIAm");
319 strcpy(padOutText[6],
"BCDcn");
322 cout <<
" ************************************* " << endl;
323 cout <<
" * * " << endl;
324 cout <<
" * P A D D I S P L A Y * " << endl;
325 cout <<
" * * " << endl;
326 cout <<
" ************************************* " << endl;
328 cout <<
" P A R A M E T E R S: " << endl;
330 cout <<
" Sector " <<
m_sector << endl;
331 cout <<
" PAD addr " <<
m_padadd << endl;
332 cout <<
" Low-High " <<
m_lowhigh << endl;
340 cout <<
" D U M P padStep2 " << endl;
342 cout <<
"Projection Eta ";
344 cout <<
"Projection Phi " << endl;
346 cout <<
"---------------";
348 cout <<
"---------------" << endl;
350 cout <<
"C C t a n o O A";
352 cout <<
"C C t a n o O A" << endl;
354 cout <<
"M M h d u v P m";
356 cout <<
"M M h d u v P m" << endl;
358 cout <<
"0 1 r d m e L b";
360 cout <<
"0 1 r d m e L b" << endl;
364 cout <<
" e r r i" << endl;
368 cout <<
" Bunch Crossing Number " << j <<
" ";
369 for (i = 0; i < 2; i++) {
373 if (i == 0) cout <<
" ";
383 cout <<
" D U M P PadOut " << endl;
385 cout <<
" Pad: padOut Bunch=" << i <<
":";
386 for (j = 0; j < 7; j++) { cout <<
" " << padOutText[j] <<
" " <<
m_padOut[i][j]; }
405 cout <<
" getRoI; Error: bunch address " << bunch <<
" not consistent with m_nBunMax= " <<
m_nBunMax << endl;
415 cout <<
" getPTCoding; Error: bunch address " << bunch <<
" not consistent with m_nBunMax= " <<
m_nBunMax << endl;
425 cout <<
" getOPL; Error: bunch address " << bunch <<
" not consistent with m_nBunMax= " <<
m_nBunMax << endl;
435 cout <<
" getOverlapPhi; Error: bunch address " << bunch <<
" not consistent with m_nBunMax= " <<
m_nBunMax << endl;
445 cout <<
" getOverlapEta; Error: bunch address " << bunch <<
" not consistent with m_nBunMax= " <<
m_nBunMax << endl;
455 cout <<
" getRoIAmbiguity; Error: bunch address " << bunch <<
" not consistent with m_nBunMax= " <<
m_nBunMax << endl;
465 cout <<
" getBCIDCounter; Error: bunch address " << bunch <<
" not consistent with m_nBunMax= " <<
m_nBunMax << endl;
unsigned short int ubit16
void load(ubit16 lowhig, ubit16 etaphi, ubit16 CMadd, ubit16 BX, ubit16 thres, ubit16 overl)
ubit16 getPTCoding(ubit16 bunch)
void setDefaultConfiguration()
ubit16 getBCIDCounter(ubit16 bunch)
ubit16 m_padStep2[8][2][8]
Pad(int run, int event, CMAword debug, ubit16 subsys, ubit16 sect, ubit16 padad, ubit16 lowhig, bool oldSimulation, int NOBXS)
void setOldSimulation(bool value)
ubit16 getRoI(ubit16 bunch)
ubit16 getOPL(ubit16 bunch)
ubit16 m_padIn[2][2][2][8][2]
void setProjectionLogic(ubit16 prologic)
ubit16 getRoIAmbiguity(ubit16 bunch)
ubit16 m_hitInOuterPlane[3]
ubit16 getOverlapPhi(ubit16 bunch)
ubit16 getOverlapEta(ubit16 bunch)
unsigned short int m_feet_thresholds[3]