#include <TrigGTL.h>
Public Member Functions | |
TrigGTL (char *name) | |
virtual | ~TrigGTL () |
void | setGTLTrigData (uint32_t boardId, uint32_t window, uint32_t datasize, const uint32_t *data) |
void | initialize () |
const std::string & | getName () const |
int | getDataGroup12One (int index) const |
int | getDataGroup12Zero (int index) const |
int | getDataGroup34One (int index) const |
int | getDataGroup34Zero (int index) const |
int | getDataGroup5One (int index) const |
int | getDataGroup5Zero (int index) const |
Private Attributes | |
std::string | m_name |
int | m_dataGroup12_One [48] |
int | m_dataGroup12_Zero [48] |
int | m_dataGroup34_One [48] |
int | m_dataGroup34_Zero [48] |
int | m_dataGroup5_One [24] |
int | m_dataGroup5_Zero [24] |
Definition at line 8 of file TrigGTL.h.
TrigGTL::TrigGTL | ( | char * | name | ) |
int TrigGTL::getDataGroup12One | ( | int | index | ) | const [inline] |
Definition at line 19 of file TrigGTL.h.
References m_dataGroup12_One.
00019 { return m_dataGroup12_One[index]; }
int TrigGTL::getDataGroup12Zero | ( | int | index | ) | const [inline] |
Definition at line 20 of file TrigGTL.h.
References m_dataGroup12_Zero.
00020 { return m_dataGroup12_Zero[index]; }
int TrigGTL::getDataGroup34One | ( | int | index | ) | const [inline] |
Definition at line 22 of file TrigGTL.h.
References m_dataGroup34_One.
00022 { return m_dataGroup34_One[index]; }
int TrigGTL::getDataGroup34Zero | ( | int | index | ) | const [inline] |
Definition at line 23 of file TrigGTL.h.
References m_dataGroup34_Zero.
00023 { return m_dataGroup34_Zero[index]; }
int TrigGTL::getDataGroup5One | ( | int | index | ) | const [inline] |
Definition at line 25 of file TrigGTL.h.
References m_dataGroup5_One.
00025 { return m_dataGroup5_One[index]; }
int TrigGTL::getDataGroup5Zero | ( | int | index | ) | const [inline] |
Definition at line 26 of file TrigGTL.h.
References m_dataGroup5_Zero.
00026 { return m_dataGroup5_Zero[index]; }
const std::string& TrigGTL::getName | ( | ) | const [inline] |
void TrigGTL::initialize | ( | ) |
Definition at line 9 of file TrigGTL.cxx.
References genRecEmupikp::i, m_dataGroup12_One, m_dataGroup12_Zero, m_dataGroup34_One, m_dataGroup34_Zero, m_dataGroup5_One, and m_dataGroup5_Zero.
00010 { 00011 for(int i = 0; i < 48; i++) 00012 { 00013 m_dataGroup12_One[i] = 0; 00014 m_dataGroup12_Zero[i] = 0; 00015 m_dataGroup34_One[i] = 0; 00016 m_dataGroup34_Zero[i] = 0; 00017 if(i < 24) { 00018 m_dataGroup5_One[i] = 0; 00019 m_dataGroup5_Zero[i] = 0; 00020 } 00021 } 00022 }
void TrigGTL::setGTLTrigData | ( | uint32_t | boardId, | |
uint32_t | window, | |||
uint32_t | datasize, | |||
const uint32_t * | data | |||
) |
Definition at line 24 of file TrigGTL.cxx.
References genRecEmupikp::i, ganga-rec::j, m_dataGroup12_One, m_dataGroup12_Zero, m_dataGroup34_One, m_dataGroup34_Zero, m_dataGroup5_One, and m_dataGroup5_Zero.
00024 { 00025 00026 if(boardId != 0xD3) std::cerr << "ERROR: You set the wrong board data to TrigGTL!!!" << std::endl; 00027 if(datasize%window != 0) std::cerr << "WARNING: The data in GTL maybe not complete!!!" << std::endl; 00028 00029 for(uint32_t i = 0; i < datasize; i++) { 00030 uint32_t dataId = ((data[i] >> 24) & 0x7); 00031 for(uint32_t j = 0, mask = 1; j < 24; j++, mask <<= 1) { 00032 if(dataId == 1) { 00033 if((data[i] & mask) != 0) { 00034 m_dataGroup12_One[j] += 1; 00035 } 00036 if(m_dataGroup12_One[j] == 0) m_dataGroup12_Zero[j] += 1; 00037 } 00038 if(dataId == 2) { 00039 if((data[i] & mask) != 0) { 00040 m_dataGroup12_One[j+24] += 1; 00041 } 00042 if(m_dataGroup12_One[j+24] == 0) m_dataGroup12_Zero[j+24] += 1; 00043 } 00044 if(dataId == 3) { 00045 if((data[i] & mask) != 0) { 00046 m_dataGroup34_One[j] += 1; 00047 } 00048 if(m_dataGroup34_One[j] == 0) m_dataGroup34_Zero[j] += 1; 00049 } 00050 if(dataId == 4) { 00051 if((data[i] & mask) != 0) { 00052 m_dataGroup34_One[j+24] += 1; 00053 } 00054 if(m_dataGroup34_One[j+24] == 0) m_dataGroup34_Zero[j+24] += 1; 00055 } 00056 if(dataId == 5) { 00057 if((data[i] & mask) != 0) { 00058 m_dataGroup5_One[j] += 1; 00059 } 00060 if(m_dataGroup5_One[j] == 0) m_dataGroup5_Zero[j] += 1; 00061 } 00062 } 00063 } 00064 }
int TrigGTL::m_dataGroup12_One[48] [private] |
Definition at line 31 of file TrigGTL.h.
Referenced by getDataGroup12One(), initialize(), and setGTLTrigData().
int TrigGTL::m_dataGroup12_Zero[48] [private] |
Definition at line 32 of file TrigGTL.h.
Referenced by getDataGroup12Zero(), initialize(), and setGTLTrigData().
int TrigGTL::m_dataGroup34_One[48] [private] |
Definition at line 34 of file TrigGTL.h.
Referenced by getDataGroup34One(), initialize(), and setGTLTrigData().
int TrigGTL::m_dataGroup34_Zero[48] [private] |
Definition at line 35 of file TrigGTL.h.
Referenced by getDataGroup34Zero(), initialize(), and setGTLTrigData().
int TrigGTL::m_dataGroup5_One[24] [private] |
Definition at line 37 of file TrigGTL.h.
Referenced by getDataGroup5One(), initialize(), and setGTLTrigData().
int TrigGTL::m_dataGroup5_Zero[24] [private] |
Definition at line 38 of file TrigGTL.h.
Referenced by getDataGroup5Zero(), initialize(), and setGTLTrigData().
std::string TrigGTL::m_name [private] |