00001 #ifndef Physics_ControlSample_DQAKsKpi_H 00002 #define Physics_ControlSample_DQAKsKpi_H 00003 00004 #include "GaudiKernel/AlgFactory.h" 00005 #include "GaudiKernel/Algorithm.h" 00006 #include "GaudiKernel/NTuple.h" 00007 00008 class ITHistSvc; 00009 00010 /**********************************************************************/ 00023 class DQAKsKpi : public Algorithm { 00024 00025 public: 00026 00027 DQAKsKpi(const std::string& name, ISvcLocator* pSvcLocator); 00028 StatusCode initialize(); 00029 StatusCode execute(); 00030 StatusCode finalize(); 00031 00032 private: 00033 00034 double m_vr0cut; 00035 double m_vz0cut; 00036 double m_vr1cut; 00037 double m_vz1cut; 00038 double m_cthcut; 00039 00040 double m_energyThreshold; 00041 double m_gammaAngCut; 00042 00043 int m_checkDedx; 00044 int m_checkTof; 00045 00046 ITHistSvc* m_thsvc; 00047 00048 NTuple::Tuple* m_tuple; // kskpi 4C 00049 NTuple::Item<long> m_runNo; 00050 NTuple::Item<long> m_event; 00051 // NTuple::Item<long> m_nchrg; 00052 // NTuple::Item<long> m_nneu; 00053 NTuple::Item<long> m_ngch; 00054 00055 NTuple::Array<long> m_pidcode; 00056 NTuple::Array<double> m_pidprob; 00057 NTuple::Array<double> m_pidchiDedx; 00058 NTuple::Array<double> m_pidchiTof1; 00059 NTuple::Array<double> m_pidchiTof2; 00060 00061 NTuple::Array<long> m_charge; 00062 NTuple::Array<double> m_vx0; 00063 NTuple::Array<double> m_vy0; 00064 NTuple::Array<double> m_vz0; 00065 NTuple::Array<double> m_vr0; 00066 00067 NTuple::Array<double> m_vx; 00068 NTuple::Array<double> m_vy; 00069 NTuple::Array<double> m_vz; 00070 NTuple::Array<double> m_vr; 00071 00072 NTuple::Array<double> m_px; 00073 NTuple::Array<double> m_py; 00074 NTuple::Array<double> m_pz; 00075 NTuple::Array<double> m_p; 00076 NTuple::Array<double> m_cost; 00077 00078 NTuple::Array<double> m_probPH; 00079 NTuple::Array<double> m_normPH; 00080 NTuple::Array<double> m_chie; 00081 NTuple::Array<double> m_chimu; 00082 NTuple::Array<double> m_chipi; 00083 NTuple::Array<double> m_chik; 00084 NTuple::Array<double> m_chip; 00085 NTuple::Array<double> m_ghit; 00086 NTuple::Array<double> m_thit; 00087 00088 NTuple::Array<double> m_e_emc; 00089 00090 NTuple::Array<double> m_qual_etof; 00091 NTuple::Array<double> m_tof_etof; 00092 NTuple::Array<double> m_te_etof; 00093 NTuple::Array<double> m_tmu_etof; 00094 NTuple::Array<double> m_tpi_etof; 00095 NTuple::Array<double> m_tk_etof; 00096 NTuple::Array<double> m_tp_etof; 00097 00098 NTuple::Array<double> m_qual_btof1; 00099 NTuple::Array<double> m_tof_btof1; 00100 NTuple::Array<double> m_te_btof1; 00101 NTuple::Array<double> m_tmu_btof1; 00102 NTuple::Array<double> m_tpi_btof1; 00103 NTuple::Array<double> m_tk_btof1; 00104 NTuple::Array<double> m_tp_btof1; 00105 00106 NTuple::Array<double> m_qual_btof2; 00107 NTuple::Array<double> m_tof_btof2; 00108 NTuple::Array<double> m_te_btof2; 00109 NTuple::Array<double> m_tmu_btof2; 00110 NTuple::Array<double> m_tpi_btof2; 00111 NTuple::Array<double> m_tk_btof2; 00112 NTuple::Array<double> m_tp_btof2; 00113 00114 NTuple::Item<long> m_npip; 00115 NTuple::Item<long> m_npim; 00116 NTuple::Item<long> m_nkp; 00117 NTuple::Item<long> m_nkm; 00118 NTuple::Item<long> m_np; 00119 NTuple::Item<long> m_npb; 00120 00121 NTuple::Item<double> m_vfits_chi; 00122 NTuple::Item<double> m_vfits_vx; 00123 NTuple::Item<double> m_vfits_vy; 00124 NTuple::Item<double> m_vfits_vz; 00125 NTuple::Item<double> m_vfits_vr; 00126 00127 NTuple::Item<double> m_vfitp_chi; 00128 NTuple::Item<double> m_vfitp_vx; 00129 NTuple::Item<double> m_vfitp_vy; 00130 NTuple::Item<double> m_vfitp_vz; 00131 NTuple::Item<double> m_vfitp_vr; 00132 00133 NTuple::Item<double> m_vfit2_chi; 00134 NTuple::Item<double> m_vfit2_mks; 00135 NTuple::Item<double> m_vfit2_ct; 00136 NTuple::Item<double> m_vfit2_dl; 00137 NTuple::Item<double> m_vfit2_dle; 00138 00139 NTuple::Item<double> m_chi2_fs4c; 00140 NTuple::Item<double> m_mks_fs4c; 00141 NTuple::Item<double> m_mkspi_fs4c; 00142 NTuple::Item<double> m_mksk_fs4c; 00143 NTuple::Item<double> m_mkpi_fs4c; 00144 00145 NTuple::Item<double> m_4c_chi2; 00146 NTuple::Item<double> m_4c_mks; 00147 NTuple::Item<double> m_4c_mkspi; 00148 NTuple::Item<double> m_4c_mksk; 00149 NTuple::Item<double> m_4c_mkpi; 00150 NTuple::Item<double> m_4c_ks_px; 00151 NTuple::Item<double> m_4c_ks_py; 00152 NTuple::Item<double> m_4c_ks_pz; 00153 NTuple::Item<double> m_4c_ks_p; 00154 NTuple::Item<double> m_4c_ks_cos; 00155 00156 }; 00157 00158 00159 #endif