00001 #include <iostream> 00002 #include "TrigEvent/TrigData.h" 00003 00004 const std::string TrigData::s_CONDITIONS[] = { 00005 "00: NCluster >= 1", 00006 "01: NCluster >= 2", 00007 "02: Barrel Cluster back to back", 00008 "03: Endcap Cluster back to back", 00009 "04: Cluster Balance in Z direction", 00010 "05: Barrel Cluster Balance in Phi direction", 00011 "06: Endcap Cluster phi Balance", 00012 "07: Barrel total Energy Higher threshold", 00013 "08: Endcap total Energy Higher threshold", 00014 "09: Total Energy Lower threshold", 00015 "10: Total Energy Middle threshold", 00016 "11: Energy Balance in \"Z\" direction", 00017 "12: NBCluster >= 1", 00018 "13: NECluster >= 1", 00019 "14: Barrel Energy Block Balance", 00020 "15: Endcap Energy Block Balance", 00021 "16: Endcap TOF back to back", 00022 "17: Barrel TOF back to back", 00023 "18: NETOF >= 2", 00024 "19: NETOF >= 1", 00025 "20: NBTOF >= 2", 00026 "21: NBTOF >= 1", 00027 "22: NTOF >= 1", 00028 "23: C Track Back to Back", 00029 "24: NCTrk >= 2", 00030 "25: NCTrk >= 1", 00031 "26: B Track Back to Back", 00032 "27: NBTrk >= 2", 00033 "28: NBTrk >= 1", 00034 "29: A Track Back to Back", 00035 "30: NATrk >= 2", 00036 "31: NATrk >= 1", 00037 "32: MUON Back to Back 3478", 00038 "33: MUON Back to Back 37", 00039 "34: Not defined yet", 00040 "35: Not defined yet", 00041 "36: Not defined yet", 00042 "37: Not defined yet", 00043 "38: Short Track back to back", 00044 "39: NStrk >= N", 00045 "40: NStrk >= 2", 00046 "41: NStrk >= 1", 00047 "42: Long Track back to back", 00048 "43: NLtrk >= N", 00049 "44: NLtrk >= 2", 00050 "45: NLtrk >= 1", 00051 "46: NItrk >= 2", 00052 "47: NItrk >= 1" 00053 }; 00054 00055 TrigData::TrigData(int window, int timing, const int* trigCond, const int* trigChan, bool preScale) 00056 { 00057 m_timeWindow = window; 00058 m_Timing = timing; 00059 m_preScale = preScale; 00060 for(int i = 0; i < 48; i++) { 00061 if(i<16) { 00062 m_trigChan[i] = trigChan[i]; 00063 } 00064 m_trigcond[i] = trigCond[i]; 00065 } 00066 } 00067 00068 void TrigData::print() const { 00069 std::cout << "TrigData contains the following effective conditions:" << std::endl; 00070 for (int i = 0; i < 48; i++) { 00071 if(m_trigcond[i] == 1) std::cout << '\t' << s_CONDITIONS[i] << std::endl; 00072 } 00073 }