#include <TrigTOFT.h>
Public Member Functions | |
TrigTOFT (char *name) | |
virtual | ~TrigTOFT () |
void | setTOFTTrigData (uint32_t boardId, uint32_t window, uint32_t datasize, const uint32_t *data) |
void | initialize () |
const std::string & | getName () const |
unsigned int | getTimeWindow () const |
int | getTofTrigCondi (int index, int win) const |
int | getBTofHitMap (int index, int win) const |
int | getWETofHitMap (int index, int win) const |
int | getEETofHitMap (int index, int win) const |
Private Attributes | |
std::string | m_name |
unsigned int | m_window |
int | m_tofTrigCondi [6][21] |
int | m_btofHitMap [176][21] |
int | m_wetofHitMap [48][21] |
int | m_eetofHitMap [48][21] |
Definition at line 8 of file TrigTOFT.h.
TrigTOFT::TrigTOFT | ( | char * | name | ) |
virtual TrigTOFT::~TrigTOFT | ( | ) | [inline, virtual] |
int TrigTOFT::getBTofHitMap | ( | int | index, | |
int | win | |||
) | const [inline] |
Definition at line 22 of file TrigTOFT.h.
References m_btofHitMap.
00022 { return m_btofHitMap[index][win]; }
int TrigTOFT::getEETofHitMap | ( | int | index, | |
int | win | |||
) | const [inline] |
Definition at line 25 of file TrigTOFT.h.
References m_eetofHitMap.
00025 { return m_eetofHitMap[index][win]; }
const std::string& TrigTOFT::getName | ( | ) | const [inline] |
unsigned int TrigTOFT::getTimeWindow | ( | ) | const [inline] |
int TrigTOFT::getTofTrigCondi | ( | int | index, | |
int | win | |||
) | const [inline] |
Definition at line 21 of file TrigTOFT.h.
References m_tofTrigCondi.
00021 { return m_tofTrigCondi[index][win]; }
int TrigTOFT::getWETofHitMap | ( | int | index, | |
int | win | |||
) | const [inline] |
Definition at line 24 of file TrigTOFT.h.
References m_wetofHitMap.
00024 { return m_wetofHitMap[index][win]; }
void TrigTOFT::initialize | ( | ) |
Definition at line 9 of file TrigTOFT.cxx.
References genRecEmupikp::i, ganga-rec::j, m_btofHitMap, m_eetofHitMap, m_tofTrigCondi, and m_wetofHitMap.
00010 { 00011 for(int i = 0; i < 176; i++) 00012 for(int j = 0; j < 21; j++) { 00013 if(i < 6) m_tofTrigCondi[i][j] = 0; 00014 if(i < 48) { 00015 m_wetofHitMap[i][j] = 0; 00016 m_eetofHitMap[i][j] = 0; 00017 } 00018 m_btofHitMap[i][j] = 0; 00019 } 00020 }
void TrigTOFT::setTOFTTrigData | ( | uint32_t | boardId, | |
uint32_t | window, | |||
uint32_t | datasize, | |||
const uint32_t * | data | |||
) |
Definition at line 22 of file TrigTOFT.cxx.
References genRecEmupikp::i, m_btofHitMap, m_eetofHitMap, m_tofTrigCondi, m_wetofHitMap, and m_window.
00022 { 00023 00024 if(boardId != 0xDA) std::cerr << "ERROR: You set the wrong board data to TrigTOFT!!!" << std::endl; 00025 00026 m_window = window; 00027 00028 for (uint32_t i = 0; i < datasize; i++) { 00029 int winId = int (i/14); 00030 //int id = (i-winId*14)%14; 00031 //DW4 trigger conditions 00032 if(i==(1+winId*14)) { 00033 for(uint32_t condId = 1,loop = 0; loop < 6; condId <<=1,loop++) { 00034 if(data[i] & condId) m_tofTrigCondi[loop][winId] = 1; 00035 } 00036 } 00037 00038 //DW9-DW12 for inner layer hit, DW13--DW16 outer layer hit 00039 if(i >= (6+winId*14) && i <= (13+winId*14)) { 00040 if(i == (6+winId*14) || i == (10+winId*14)) { 00041 for(uint32_t btofId = 1,loop = 0; loop < 16; btofId <<=1,loop++) { 00042 if(data[i] & btofId) { 00043 if(i == (6+winId*14)) m_btofHitMap[loop+72][winId] = 1; 00044 if(i == (10+winId*14)) m_btofHitMap[loop+72+88][winId] = 1; 00045 } 00046 } 00047 } 00048 else { 00049 for(uint32_t btofId = 1,loop = 0; loop < 24; btofId <<=1,loop++) { 00050 if(data[i] & btofId) { 00051 if(i >= (7+winId*14) && i <= (9+winId*14)) m_btofHitMap[loop+(9+winId*14-i)*24][winId] = 1; 00052 else m_btofHitMap[loop+(13+winId*14-i)*24+88][winId] = 1; 00053 } 00054 } 00055 } 00056 } 00057 00058 //DW7-DW8 for east end cap hits 00059 if(i>=(4+winId*14) && i<=(5+winId*14)) { 00060 for(uint32_t eetofId = 1,loop = 0; loop < 24; eetofId <<=1,loop++) { 00061 if(data[i] & eetofId) m_eetofHitMap[loop+(5+winId*14-i)*24][winId] = 1; 00062 } 00063 } 00064 00065 //DW5-DW6 for east end cap hits 00066 if(i>=(2+winId*14) && i<=(3+winId*14)) { 00067 for(uint32_t wetofId = 1,loop = 0; loop < 24; wetofId <<=1,loop++) { 00068 if(data[i] & wetofId) m_wetofHitMap[loop+(3+winId*14-i)*24][winId] = 1; 00069 } 00070 } 00071 } 00072 }
int TrigTOFT::m_btofHitMap[176][21] [private] |
Definition at line 33 of file TrigTOFT.h.
Referenced by getBTofHitMap(), initialize(), and setTOFTTrigData().
int TrigTOFT::m_eetofHitMap[48][21] [private] |
Definition at line 36 of file TrigTOFT.h.
Referenced by getEETofHitMap(), initialize(), and setTOFTTrigData().
std::string TrigTOFT::m_name [private] |
int TrigTOFT::m_tofTrigCondi[6][21] [private] |
Definition at line 32 of file TrigTOFT.h.
Referenced by getTofTrigCondi(), initialize(), and setTOFTTrigData().
int TrigTOFT::m_wetofHitMap[48][21] [private] |
Definition at line 35 of file TrigTOFT.h.
Referenced by getWETofHitMap(), initialize(), and setTOFTTrigData().
unsigned int TrigTOFT::m_window [private] |