00001 #include<TMuiPseudoBLTO.h>
00002 #include<TDataType.h>
00003
00004 ClassImp(TMuiPseudoBLTO)
00005 ClassImp(TMuiPseudoBLTO_v1)
00006
00007 TMuiPseudoBLTO_v1::TMuiPseudoBLTO_v1() :
00008 _arm(0),
00009 _index(0),
00010 _is_2D(false),
00011 _is_1D1S(false),
00012 _is_1D_quad0(false),
00013 _is_1D_quad1(false),
00014 _is_1D_quad2(false),
00015 _is_1D_quad3(false),
00016 _is_1S_quad0(false),
00017 _is_1S_quad1(false),
00018 _is_1S_quad2(false),
00019 _is_1S_quad3(false),
00020 _is_reco_2D(false),
00021 _is_reco_1D1S(false),
00022 _is_reco_1D_quad0(false),
00023 _is_reco_1D_quad1(false),
00024 _is_reco_1D_quad2(false),
00025 _is_reco_1D_quad3(false),
00026 _is_reco_1S_quad0(false),
00027 _is_reco_1S_quad1(false),
00028 _is_reco_1S_quad2(false),
00029 _is_reco_1S_quad3(false)
00030 {;}
00031
00032 TMuiPseudoBLTO_v1::TMuiPseudoBLTO_v1(const Key& key,
00033 UShort_t arm,
00034 UShort_t index) :
00035 TMuiPseudoBLTO(key),
00036 _arm(arm),
00037 _index(index),
00038 _is_2D(false),
00039 _is_1D1S(false),
00040 _is_1D_quad0(false),
00041 _is_1D_quad1(false),
00042 _is_1D_quad2(false),
00043 _is_1D_quad3(false),
00044 _is_1S_quad0(false),
00045 _is_1S_quad1(false),
00046 _is_1S_quad2(false),
00047 _is_1S_quad3(false),
00048 _is_reco_2D(false),
00049 _is_reco_1D1S(false),
00050 _is_reco_1D_quad0(false),
00051 _is_reco_1D_quad1(false),
00052 _is_reco_1D_quad2(false),
00053 _is_reco_1D_quad3(false),
00054 _is_reco_1S_quad0(false),
00055 _is_reco_1S_quad1(false),
00056 _is_reco_1S_quad2(false),
00057 _is_reco_1S_quad3(false)
00058 {;}
00059
00060
00061 TMuiPseudoBLTO_v1::TMuiPseudoBLTO_v1(const TMuiPseudoBLTO* base_ptr) :
00062 TMuiPseudoBLTO(*base_ptr),
00063 _arm(base_ptr->get_arm()),
00064 _index(base_ptr->get_index()),
00065 _is_2D(base_ptr->is_2D_fired()),
00066 _is_1D1S(base_ptr->is_1D1S_fired()),
00067 _is_1D_quad0(base_ptr->is_1D_fired(0)),
00068 _is_1D_quad1(base_ptr->is_1D_fired(1)),
00069 _is_1D_quad2(base_ptr->is_1D_fired(2)),
00070 _is_1D_quad3(base_ptr->is_1D_fired(3)),
00071 _is_1S_quad0(base_ptr->is_1S_fired(0)),
00072 _is_1S_quad1(base_ptr->is_1S_fired(1)),
00073 _is_1S_quad2(base_ptr->is_1S_fired(2)),
00074 _is_1S_quad3(base_ptr->is_1S_fired(3)),
00075 _is_reco_2D(base_ptr->is_reco_2D_fired()),
00076 _is_reco_1D1S(base_ptr->is_reco_1D1S_fired()),
00077 _is_reco_1D_quad0(base_ptr->is_reco_1D_fired(0)),
00078 _is_reco_1D_quad1(base_ptr->is_reco_1D_fired(1)),
00079 _is_reco_1D_quad2(base_ptr->is_reco_1D_fired(2)),
00080 _is_reco_1D_quad3(base_ptr->is_reco_1D_fired(3)),
00081 _is_reco_1S_quad0(base_ptr->is_reco_1S_fired(0)),
00082 _is_reco_1S_quad1(base_ptr->is_reco_1S_fired(1)),
00083 _is_reco_1S_quad2(base_ptr->is_reco_1S_fired(2)),
00084 _is_reco_1S_quad3(base_ptr->is_reco_1S_fired(3))
00085 {;}
00086
00087 TMuiPseudoBLTO_v1::TMuiPseudoBLTO_v1(const TMuiPseudoBLTO& base_ref) :
00088 TMuiPseudoBLTO(base_ref),
00089 _arm(base_ref.get_arm()),
00090 _index(base_ref.get_index()),
00091 _is_2D(base_ref.is_2D_fired()),
00092 _is_1D1S(base_ref.is_1D1S_fired()),
00093 _is_1D_quad0(base_ref.is_1D_fired(0)),
00094 _is_1D_quad1(base_ref.is_1D_fired(1)),
00095 _is_1D_quad2(base_ref.is_1D_fired(2)),
00096 _is_1D_quad3(base_ref.is_1D_fired(3)),
00097 _is_1S_quad0(base_ref.is_1S_fired(0)),
00098 _is_1S_quad1(base_ref.is_1S_fired(1)),
00099 _is_1S_quad2(base_ref.is_1S_fired(2)),
00100 _is_1S_quad3(base_ref.is_1S_fired(3)),
00101 _is_reco_2D(base_ref.is_reco_2D_fired()),
00102 _is_reco_1D1S(base_ref.is_reco_1D1S_fired()),
00103 _is_reco_1D_quad0(base_ref.is_reco_1D_fired(0)),
00104 _is_reco_1D_quad1(base_ref.is_reco_1D_fired(1)),
00105 _is_reco_1D_quad2(base_ref.is_reco_1D_fired(2)),
00106 _is_reco_1D_quad3(base_ref.is_reco_1D_fired(3)),
00107 _is_reco_1S_quad0(base_ref.is_reco_1S_fired(0)),
00108 _is_reco_1S_quad1(base_ref.is_reco_1S_fired(1)),
00109 _is_reco_1S_quad2(base_ref.is_reco_1S_fired(2)),
00110 _is_reco_1S_quad3(base_ref.is_reco_1S_fired(3))
00111 {;}
00112
00113 bool TMuiPseudoBLTO_v1::check_2D_trigger() const {
00114
00115
00116
00117
00118
00119
00120
00121 bool consistency = false;
00122
00123 for( UShort_t iquad = 0; iquad < 3; iquad++) {
00124 if(is_1D_fired(iquad)) {
00125 for(UShort_t jquad = iquad+1; jquad < 4; jquad++) {
00126 if(is_1D_fired(jquad)) {
00127 consistency = true;
00128 return consistency;
00129 }
00130 }
00131 }
00132 }
00133
00134 return consistency;
00135 }
00136
00137 bool TMuiPseudoBLTO_v1::check_1D1S_trigger() const {
00138
00139
00140
00141
00142
00143
00144
00145
00146 bool consistency = false;
00147
00148 for( UShort_t iquad = 0; iquad < 4; iquad++) {
00149 if(is_1D_fired(iquad)) {
00150 for(UShort_t jquad = 0; jquad < 4; jquad++) {
00151 if((is_1D_fired(jquad)||is_1S_fired(jquad))&&(jquad!=iquad)) {
00152 consistency = true;
00153 return consistency;
00154 }
00155 }
00156 }
00157 }
00158 return consistency;
00159 }
00160
00161
00162
00163
00164
00165
00166