#include <TrigEACC.h>
Public Member Functions | |
TrigEACC (const char *name) | |
virtual | ~TrigEACC () |
void | setEACCTrigData (uint32_t boardId, uint32_t window, uint32_t datasize, const uint32_t *data) |
void | initialize () |
const std::string & | getName () const |
unsigned int | getTimeWindow () const |
unsigned int | getBBLKCharge (int id) const |
unsigned int | getBBLKTime (int id) const |
unsigned int | getEBLKCharge (int id) const |
unsigned int | getEBLKTime (int id) const |
unsigned int | getWBLKCharge (int id) const |
unsigned int | getWBLKTime (int id) const |
unsigned int | getBarrelCharge () const |
unsigned int | getBarrelTime () const |
unsigned int | getEndCapsCharge () const |
unsigned int | getEndCapsTime () const |
unsigned int | getEMCTotalCharge () const |
unsigned int | getEMCTotalTime () const |
unsigned int | getEastHalfCharge () const |
unsigned int | getEastHalfTime () const |
unsigned int | getWestHalfCharge () const |
unsigned int | getWestHalfTime () const |
unsigned int | getEastEndHalfCharge () const |
unsigned int | getEastEndHalfTime () const |
unsigned int | getWestEndHalfCharge () const |
unsigned int | getWestEndHalfTime () const |
unsigned int | getBTC (int theta, int phi, int winId) const |
unsigned int | getETC (int phi, int winId) const |
unsigned int | getWTC (int phi, int winId) const |
unsigned int | getMidCondi (int bit) const |
unsigned int | getTrigCondi (int bit, int winId) const |
void | print () |
Private Attributes | |
std::string | m_name |
unsigned int | m_window |
unsigned int | E_blk [12] |
unsigned int | T_blk [12] |
unsigned int | E_blkE [2] |
unsigned int | T_blkE [2] |
unsigned int | E_blkW [2] |
unsigned int | T_blkW [2] |
unsigned int | E_B_Etot |
unsigned int | T_B_Etot |
unsigned int | E_E_Etot |
unsigned int | T_E_Etot |
unsigned int | E_blkAll |
unsigned int | T_blkAll |
unsigned int | E_eastHalf |
unsigned int | T_eastHalf |
unsigned int | E_westHalf |
unsigned int | T_westHalf |
unsigned int | E_eastEndHalf |
unsigned int | T_eastEndHalf |
unsigned int | E_westEndHalf |
unsigned int | T_westEndHalf |
unsigned int | TC [11][30][32] |
unsigned int | TC_E [32][32] |
unsigned int | TC_W [32][32] |
unsigned int | midCondi [16] |
unsigned int | emcTrigCondi [16][32] |
Definition at line 9 of file TrigEACC.h.
TrigEACC::TrigEACC | ( | const char * | name | ) |
TrigEACC::~TrigEACC | ( | ) | [virtual] |
unsigned int TrigEACC::getBarrelCharge | ( | ) | const [inline] |
unsigned int TrigEACC::getBarrelTime | ( | ) | const [inline] |
unsigned int TrigEACC::getBBLKCharge | ( | int | id | ) | const [inline] |
unsigned int TrigEACC::getBBLKTime | ( | int | id | ) | const [inline] |
unsigned int TrigEACC::getBTC | ( | int | theta, | |
int | phi, | |||
int | winId | |||
) | const [inline] |
unsigned int TrigEACC::getEastEndHalfCharge | ( | ) | const [inline] |
unsigned int TrigEACC::getEastEndHalfTime | ( | ) | const [inline] |
unsigned int TrigEACC::getEastHalfCharge | ( | ) | const [inline] |
unsigned int TrigEACC::getEastHalfTime | ( | ) | const [inline] |
unsigned int TrigEACC::getEBLKCharge | ( | int | id | ) | const [inline] |
unsigned int TrigEACC::getEBLKTime | ( | int | id | ) | const [inline] |
unsigned int TrigEACC::getEMCTotalCharge | ( | ) | const [inline] |
unsigned int TrigEACC::getEMCTotalTime | ( | ) | const [inline] |
unsigned int TrigEACC::getEndCapsCharge | ( | ) | const [inline] |
unsigned int TrigEACC::getEndCapsTime | ( | ) | const [inline] |
unsigned int TrigEACC::getETC | ( | int | phi, | |
int | winId | |||
) | const [inline] |
unsigned int TrigEACC::getMidCondi | ( | int | bit | ) | const [inline] |
const std::string& TrigEACC::getName | ( | ) | const [inline] |
unsigned int TrigEACC::getTimeWindow | ( | ) | const [inline] |
unsigned int TrigEACC::getTrigCondi | ( | int | bit, | |
int | winId | |||
) | const [inline] |
Definition at line 47 of file TrigEACC.h.
References emcTrigCondi.
00047 { return emcTrigCondi[bit][winId]; }
unsigned int TrigEACC::getWBLKCharge | ( | int | id | ) | const [inline] |
unsigned int TrigEACC::getWBLKTime | ( | int | id | ) | const [inline] |
unsigned int TrigEACC::getWestEndHalfCharge | ( | ) | const [inline] |
unsigned int TrigEACC::getWestEndHalfTime | ( | ) | const [inline] |
unsigned int TrigEACC::getWestHalfCharge | ( | ) | const [inline] |
unsigned int TrigEACC::getWestHalfTime | ( | ) | const [inline] |
unsigned int TrigEACC::getWTC | ( | int | phi, | |
int | winId | |||
) | const [inline] |
void TrigEACC::initialize | ( | ) |
Definition at line 14 of file TrigEACC.cxx.
References E_B_Etot, E_blk, E_blkAll, E_blkE, E_blkW, E_E_Etot, E_eastEndHalf, E_eastHalf, E_westEndHalf, E_westHalf, emcTrigCondi, genRecEmupikp::i, ganga-rec::j, midCondi, T_B_Etot, T_blk, T_blkAll, T_blkE, T_blkW, T_E_Etot, T_eastEndHalf, T_eastHalf, T_westEndHalf, T_westHalf, TC, TC_E, and TC_W.
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 }
void TrigEACC::print | ( | ) |
void TrigEACC::setEACCTrigData | ( | uint32_t | boardId, | |
uint32_t | window, | |||
uint32_t | datasize, | |||
const uint32_t * | data | |||
) |
Definition at line 41 of file TrigEACC.cxx.
References E_B_Etot, E_blk, E_blkAll, E_blkE, E_blkW, E_E_Etot, E_eastEndHalf, E_eastHalf, E_westEndHalf, E_westHalf, emcTrigCondi, genRecEmupikp::i, ganga-rec::j, m_window, midCondi, T_B_Etot, T_blk, T_blkAll, T_blkE, T_blkW, T_E_Etot, T_eastEndHalf, T_eastHalf, T_westEndHalf, T_westHalf, TC, TC_E, and TC_W.
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 }
unsigned int TrigEACC::E_B_Etot [private] |
Definition at line 62 of file TrigEACC.h.
Referenced by getBarrelCharge(), initialize(), and setEACCTrigData().
unsigned int TrigEACC::E_blk[12] [private] |
Definition at line 56 of file TrigEACC.h.
Referenced by getBBLKCharge(), initialize(), and setEACCTrigData().
unsigned int TrigEACC::E_blkAll [private] |
Definition at line 66 of file TrigEACC.h.
Referenced by getEMCTotalCharge(), initialize(), and setEACCTrigData().
unsigned int TrigEACC::E_blkE[2] [private] |
Definition at line 58 of file TrigEACC.h.
Referenced by getEBLKCharge(), initialize(), and setEACCTrigData().
unsigned int TrigEACC::E_blkW[2] [private] |
Definition at line 60 of file TrigEACC.h.
Referenced by getWBLKCharge(), initialize(), and setEACCTrigData().
unsigned int TrigEACC::E_E_Etot [private] |
Definition at line 64 of file TrigEACC.h.
Referenced by getEndCapsCharge(), initialize(), and setEACCTrigData().
unsigned int TrigEACC::E_eastEndHalf [private] |
Definition at line 72 of file TrigEACC.h.
Referenced by getEastEndHalfCharge(), initialize(), and setEACCTrigData().
unsigned int TrigEACC::E_eastHalf [private] |
Definition at line 68 of file TrigEACC.h.
Referenced by getEastHalfCharge(), initialize(), and setEACCTrigData().
unsigned int TrigEACC::E_westEndHalf [private] |
Definition at line 74 of file TrigEACC.h.
Referenced by getWestEndHalfCharge(), initialize(), and setEACCTrigData().
unsigned int TrigEACC::E_westHalf [private] |
Definition at line 70 of file TrigEACC.h.
Referenced by getWestHalfCharge(), initialize(), and setEACCTrigData().
unsigned int TrigEACC::emcTrigCondi[16][32] [private] |
Definition at line 82 of file TrigEACC.h.
Referenced by getTrigCondi(), initialize(), and setEACCTrigData().
std::string TrigEACC::m_name [private] |
unsigned int TrigEACC::m_window [private] |
unsigned int TrigEACC::midCondi[16] [private] |
Definition at line 81 of file TrigEACC.h.
Referenced by getMidCondi(), initialize(), and setEACCTrigData().
unsigned int TrigEACC::T_B_Etot [private] |
Definition at line 63 of file TrigEACC.h.
Referenced by getBarrelTime(), initialize(), and setEACCTrigData().
unsigned int TrigEACC::T_blk[12] [private] |
Definition at line 57 of file TrigEACC.h.
Referenced by getBBLKTime(), initialize(), and setEACCTrigData().
unsigned int TrigEACC::T_blkAll [private] |
Definition at line 67 of file TrigEACC.h.
Referenced by getEMCTotalTime(), initialize(), and setEACCTrigData().
unsigned int TrigEACC::T_blkE[2] [private] |
Definition at line 59 of file TrigEACC.h.
Referenced by getEBLKTime(), initialize(), and setEACCTrigData().
unsigned int TrigEACC::T_blkW[2] [private] |
Definition at line 61 of file TrigEACC.h.
Referenced by getWBLKTime(), initialize(), and setEACCTrigData().
unsigned int TrigEACC::T_E_Etot [private] |
Definition at line 65 of file TrigEACC.h.
Referenced by getEndCapsTime(), initialize(), and setEACCTrigData().
unsigned int TrigEACC::T_eastEndHalf [private] |
Definition at line 73 of file TrigEACC.h.
Referenced by getEastEndHalfTime(), initialize(), and setEACCTrigData().
unsigned int TrigEACC::T_eastHalf [private] |
Definition at line 69 of file TrigEACC.h.
Referenced by getEastHalfTime(), initialize(), and setEACCTrigData().
unsigned int TrigEACC::T_westEndHalf [private] |
Definition at line 75 of file TrigEACC.h.
Referenced by getWestEndHalfTime(), initialize(), and setEACCTrigData().
unsigned int TrigEACC::T_westHalf [private] |
Definition at line 71 of file TrigEACC.h.
Referenced by getWestHalfTime(), initialize(), and setEACCTrigData().
unsigned int TrigEACC::TC[11][30][32] [private] |
Definition at line 77 of file TrigEACC.h.
Referenced by getBTC(), initialize(), and setEACCTrigData().
unsigned int TrigEACC::TC_E[32][32] [private] |
Definition at line 78 of file TrigEACC.h.
Referenced by getETC(), initialize(), and setEACCTrigData().
unsigned int TrigEACC::TC_W[32][32] [private] |
Definition at line 79 of file TrigEACC.h.
Referenced by getWTC(), initialize(), and setEACCTrigData().