#include <TrigEACC.h>
Public Member Functions | |
unsigned int | getBarrelCharge () const |
unsigned int | getBarrelCharge () const |
unsigned int | getBarrelTime () const |
unsigned int | getBarrelTime () const |
unsigned int | getBBLKCharge (int id) const |
unsigned int | getBBLKCharge (int id) const |
unsigned int | getBBLKTime (int id) const |
unsigned int | getBBLKTime (int id) const |
unsigned int | getBTC (int theta, int phi, int winId) const |
unsigned int | getBTC (int theta, int phi, int winId) const |
unsigned int | getEastEndHalfCharge () const |
unsigned int | getEastEndHalfCharge () const |
unsigned int | getEastEndHalfTime () const |
unsigned int | getEastEndHalfTime () const |
unsigned int | getEastHalfCharge () const |
unsigned int | getEastHalfCharge () const |
unsigned int | getEastHalfTime () const |
unsigned int | getEastHalfTime () const |
unsigned int | getEBLKCharge (int id) const |
unsigned int | getEBLKCharge (int id) const |
unsigned int | getEBLKTime (int id) const |
unsigned int | getEBLKTime (int id) const |
unsigned int | getEMCTotalCharge () const |
unsigned int | getEMCTotalCharge () const |
unsigned int | getEMCTotalTime () const |
unsigned int | getEMCTotalTime () const |
unsigned int | getEndCapsCharge () const |
unsigned int | getEndCapsCharge () const |
unsigned int | getEndCapsTime () const |
unsigned int | getEndCapsTime () const |
unsigned int | getETC (int phi, int winId) const |
unsigned int | getETC (int phi, int winId) const |
unsigned int | getMidCondi (int bit) const |
unsigned int | getMidCondi (int bit) const |
const std::string & | getName () const |
const std::string & | getName () const |
unsigned int | getTimeWindow () const |
unsigned int | getTimeWindow () const |
unsigned int | getTrigCondi (int bit, int winId) const |
unsigned int | getTrigCondi (int bit, int winId) const |
unsigned int | getWBLKCharge (int id) const |
unsigned int | getWBLKCharge (int id) const |
unsigned int | getWBLKTime (int id) const |
unsigned int | getWBLKTime (int id) const |
unsigned int | getWestEndHalfCharge () const |
unsigned int | getWestEndHalfCharge () const |
unsigned int | getWestEndHalfTime () const |
unsigned int | getWestEndHalfTime () const |
unsigned int | getWestHalfCharge () const |
unsigned int | getWestHalfCharge () const |
unsigned int | getWestHalfTime () const |
unsigned int | getWestHalfTime () const |
unsigned int | getWTC (int phi, int winId) const |
unsigned int | getWTC (int phi, int winId) const |
void | initialize () |
void | initialize () |
void | print () |
void | print () |
void | setEACCTrigData (uint32_t boardId, uint32_t window, uint32_t datasize, const uint32_t *data) |
void | setEACCTrigData (uint32_t boardId, uint32_t window, uint32_t datasize, const uint32_t *data) |
TrigEACC (const char *name) | |
TrigEACC (const char *name) | |
virtual | ~TrigEACC () |
virtual | ~TrigEACC () |
Private Attributes | |
unsigned int | E_B_Etot |
unsigned int | E_blk [12] |
unsigned int | E_blkAll |
unsigned int | E_blkE [2] |
unsigned int | E_blkW [2] |
unsigned int | E_E_Etot |
unsigned int | E_eastEndHalf |
unsigned int | E_eastHalf |
unsigned int | E_westEndHalf |
unsigned int | E_westHalf |
unsigned int | emcTrigCondi [16][32] |
std::string | m_name |
unsigned int | m_window |
unsigned int | midCondi [16] |
unsigned int | T_B_Etot |
unsigned int | T_blk [12] |
unsigned int | T_blkAll |
unsigned int | T_blkE [2] |
unsigned int | T_blkW [2] |
unsigned int | T_E_Etot |
unsigned int | T_eastEndHalf |
unsigned int | T_eastHalf |
unsigned int | T_westEndHalf |
unsigned int | T_westHalf |
unsigned int | TC [11][30][32] |
unsigned int | TC_E [32][32] |
unsigned int | TC_W [32][32] |
|
00007 { 00008 m_name = name; 00009 }
|
|
00011 { 00012 }
|
|
|
|
|
|
00027 { return E_B_Etot; }
|
|
00027 { return E_B_Etot; }
|
|
00028 { return T_B_Etot; }
|
|
00028 { return T_B_Etot; }
|
|
00021 { return E_blk[id]; }
|
|
00021 { return E_blk[id]; }
|
|
00022 { return T_blk[id]; }
|
|
00022 { return T_blk[id]; }
|
|
00042 { return TC[theta][phi][winId]; }
|
|
00042 { return TC[theta][phi][winId]; }
|
|
00037 { return E_eastEndHalf; }
|
|
00037 { return E_eastEndHalf; }
|
|
00038 { return T_eastEndHalf; }
|
|
00038 { return T_eastEndHalf; }
|
|
00033 { return E_eastHalf; }
|
|
00033 { return E_eastHalf; }
|
|
00034 { return T_eastHalf; }
|
|
00034 { return T_eastHalf; }
|
|
00023 { return E_blkE[id]; }
|
|
00023 { return E_blkE[id]; }
|
|
00024 { return T_blkE[id]; }
|
|
00024 { return T_blkE[id]; }
|
|
00031 { return E_blkAll; }
|
|
00031 { return E_blkAll; }
|
|
00032 { return T_blkAll; }
|
|
00032 { return T_blkAll; }
|
|
00029 { return E_E_Etot; }
|
|
00029 { return E_E_Etot; }
|
|
00030 { return T_E_Etot; }
|
|
00030 { return T_E_Etot; }
|
|
00043 { return TC_E[phi][winId]; }
|
|
00043 { return TC_E[phi][winId]; }
|
|
00046 { return midCondi[bit]; }
|
|
00046 { return midCondi[bit]; }
|
|
00018 { return m_name; }
|
|
00018 { return m_name; }
|
|
00019 { return m_window; }
|
|
00019 { return m_window; }
|
|
00047 { return emcTrigCondi[bit][winId]; }
|
|
00047 { return emcTrigCondi[bit][winId]; }
|
|
00025 { return E_blkW[id]; }
|
|
00025 { return E_blkW[id]; }
|
|
00026 { return T_blkW[id]; }
|
|
00026 { return T_blkW[id]; }
|
|
00039 { return E_westEndHalf; }
|
|
00039 { return E_westEndHalf; }
|
|
00040 { return T_westEndHalf; }
|
|
00040 { return T_westEndHalf; }
|
|
00035 { return E_westHalf; }
|
|
00035 { return E_westHalf; }
|
|
00036 { return T_westHalf; }
|
|
00036 { return T_westHalf; }
|
|
00044 { return TC_W[phi][winId]; }
|
|
00044 { return TC_W[phi][winId]; }
|
|
|
|
00014 { 00015 //initialize 00016 for(uint32_t i = 0; i < 11; i++) 00017 for(uint32_t j = 0; j < 32; j++) 00018 for(uint32_t k = 0; k < 32; k++) { 00019 if(j < 30) TC[i][j][k] = 0; 00020 if(i == 0) { TC_E[j][k] = 0; TC_W[j][k] = 0; } 00021 if(i == 0 && j < 16) { midCondi[j] = 0; emcTrigCondi[j][k] = 0; } 00022 if(i == 0 && j < 12) { E_blk[j] = 0; T_blk[j] = 0; } 00023 if(i == 0 && j < 2) { E_blkE[j] = 0; T_blkE[j] = 0; E_blkW[j] = 0; T_blkW[j] = 0; } 00024 } 00025 E_B_Etot = 0; 00026 T_B_Etot = 0; 00027 E_E_Etot = 0; 00028 T_E_Etot = 0; 00029 E_blkAll = 0; 00030 T_blkAll = 0; 00031 E_eastHalf = 0; 00032 T_eastHalf = 0; 00033 E_westHalf = 0; 00034 T_westHalf = 0; 00035 E_eastEndHalf = 0; 00036 T_eastEndHalf = 0; 00037 E_westEndHalf = 0; 00038 T_westEndHalf = 0; 00039 }
|
|
|
|
00118 { 00119 }
|
|
|
|
00041 { 00042 if(boardId != 0xd7) std::cerr << "ERROR: You set the wrong board data to TrigEACC!!!" << std::endl; 00043 00044 m_window = window; 00045 00046 uint32_t charge_mask = 0xFFFF; 00047 uint32_t time_mask = 0xFF0000; 00048 for(uint32_t i = 0; i < datasize; i++) { 00049 if(i < 12) { 00050 E_blk[i] = ((data[i]) & charge_mask); 00051 T_blk[i] = ((data[i]) & time_mask) >> 16; 00052 } 00053 if(i >= 12 && i < 14) { 00054 E_blkE[i-12] = ((data[i]) & charge_mask); 00055 T_blkE[i-12] = ((data[i]) & time_mask) >> 16; 00056 } 00057 if(i >= 14 && i < 16) { 00058 E_blkW[i-14] = ((data[i]) & charge_mask); 00059 T_blkW[i-14] = ((data[i]) & time_mask) >> 16; 00060 } 00061 if(i >= 16 && i < 23) { 00062 if(i == 16) { E_B_Etot = ((data[i]) & charge_mask); T_B_Etot = ((data[i]) & time_mask) >> 16; } 00063 if(i == 17) { E_E_Etot = ((data[i]) & charge_mask); T_E_Etot = ((data[i]) & time_mask) >> 16; } 00064 if(i == 18) { E_blkAll = ((data[i]) & charge_mask); T_blkAll = ((data[i]) & time_mask) >> 16; } 00065 if(i == 19) { E_eastHalf = ((data[i]) & charge_mask); T_eastHalf = ((data[i]) & time_mask) >> 16; } 00066 if(i == 20) { E_westHalf = ((data[i]) & charge_mask); T_westHalf = ((data[i]) & time_mask) >> 16; } 00067 if(i == 21) { E_eastEndHalf = ((data[i]) & charge_mask); T_eastEndHalf = ((data[i]) & time_mask) >> 16; } 00068 if(i == 22) { E_westEndHalf = ((data[i]) & charge_mask); T_westEndHalf = ((data[i]) & time_mask) >> 16; } 00069 } 00070 if(i == 23) { 00071 for(uint32_t j = 0, mask = 1; j < 16; j++, mask <<= 1) { 00072 if(data[i] & mask) midCondi[j] = 1; 00073 } 00074 } 00075 if(i >= 24 && i < 24 + 20*window) { 00076 uint32_t winId = uint32_t ((i-24)/20); 00077 uint32_t id = i - (24+winId*20); 00078 if(i >= (24+winId*20) && i < (39+winId*20)) { 00079 for(uint32_t j = 0, mask = 1; j < 24; j++, mask <<= 1) { 00080 if(j < 11) { 00081 if(data[i] & mask) TC[j][2*id+1][winId] = 1; 00082 } 00083 if(j >= 12 && j < 23) { 00084 if(data[i] & mask) TC[j-12][2*id][winId] = 1; 00085 } 00086 } 00087 } 00088 if(i == (39+winId*20)) { 00089 for(uint32_t j = 0, mask = 1; j < 16; j++, mask <<= 1) { 00090 if(data[i] & mask) TC_E[j][winId] = 1; 00091 } 00092 } 00093 if(i == (40+winId*20)) { 00094 for(uint32_t j = 0, mask = 1; j < 16; j++, mask <<= 1) { 00095 if(data[i] & mask) TC_E[j+16][winId] = 1; 00096 } 00097 } 00098 if(i == (41+winId*20)) { 00099 for(uint32_t j = 0, mask = 1; j < 16; j++, mask <<= 1) { 00100 if(data[i] & mask) TC_W[j][winId] = 1; 00101 } 00102 } 00103 if(i == (42+winId*20)) { 00104 for(uint32_t j = 0, mask = 1; j < 16; j++, mask <<= 1) { 00105 if(data[i] & mask) TC_W[j+16][winId] = 1; 00106 } 00107 } 00108 if(i == (43+winId*20)) { 00109 for(uint32_t j = 0, mask = 1; j < 16; j++, mask <<= 1) { 00110 if(data[i] & mask) emcTrigCondi[j][winId] = 1; 00111 } 00112 } 00113 } 00114 } 00115 if(24 + 20*window != datasize) std::cerr << "ERROR: The data in EACC are not complete" << std::endl; 00116 }
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|