00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00014
00015 #ifndef ST_APPLYSUSYTOOLS_H
00016 #define ST_APPLYSUSYTOOLS_H 1
00017
00018
00019 #include "AthenaBaseComps/AthAlgorithm.h"
00020 #include "GaudiKernel/ToolHandle.h"
00021 #include "GaudiKernel/ServiceHandle.h"
00022 #include "AthenaKernel/IThinningSvc.h"
00023 #include "AthAnalysisBaseComps/AthAnalysisHelper.h"
00024 #include "TEnv.h"
00025
00026
00027
00028 #include "SUSYTools/ISUSYObjDef_xAODTool.h"
00029
00030
00031 #include <vector>
00032 #include <string>
00033
00034
00035 namespace TauAnalysisTools {
00036 class ITauTruthMatchingTool;
00037 }
00038
00039 namespace ST {
00040
00041 class ApplySUSYTools
00042 : public ::AthAlgorithm
00043 {
00044
00046
00048 public:
00049
00050
00051
00053 ApplySUSYTools( const std::string& name, ISvcLocator* pSvcLocator );
00054
00056 virtual ~ApplySUSYTools();
00057
00058
00059
00060
00061
00062 virtual StatusCode initialize();
00063 virtual StatusCode execute();
00064 virtual StatusCode finalize();
00065
00067
00069
00071
00073
00075
00077 private:
00078
00079
00080 bool m_doFatJets;
00081
00082
00083
00084
00085 double m_eleBaselinePt;
00086 double m_elePt;
00087 double m_eleEta;
00088 double m_eled0sig;
00089 double m_elez0;
00090
00091 double m_muBaselinePt;
00092 double m_muPt;
00093 double m_muEta;
00094 double m_mud0sig;
00095 double m_muz0;
00096 double m_muCosmicz0;
00097 double m_muCosmicd0;
00098
00099 double m_photonBaselinePt;
00100 double m_photonEta;
00101 double m_photonPt;
00102
00103 double m_tauPt;
00104 double m_tauEta;
00105
00106 double m_jetPt;
00107 double m_jetEta;
00108 double m_jetJvt;
00109 double m_badjetJvt;
00110
00111
00112 int m_evtCount;
00113 int m_maxCount;
00114
00115
00116 float m_jetPtCut;
00117 float m_inDetPtCut;
00118
00119
00120 bool m_doTST;
00121 int m_isData;
00122
00123
00124
00125
00126 std::string m_MuonsName;
00127 std::string m_MuonSpecTPName;
00128 std::string m_ElectronsName;
00129 std::string m_JetsName;
00130 std::string m_FatJetsName;
00131 std::string m_BTagName;
00132 std::string m_TruthJetsName;
00133 std::string m_METsName;
00134 std::string m_MuonCutMaskName;
00135 std::string m_MuonSpecCutMaskName;
00136 std::string m_ElectronCutMaskName;
00137 std::string m_JetCutMaskName;
00138 std::string m_TruthJetCutMaskName;
00139 std::string m_InDetTracksName;
00140 std::string m_InDetCutMaskName;
00141 std::string m_GSFTracksName;
00142 std::string m_GSFTrackCutMaskName;
00143 std::string m_GSFVerticesName;
00144 std::string m_GSFVertexCutMaskName;
00145 std::string m_TauJetsName;
00146 std::string m_TauJetCutMaskName;
00147 std::string m_PhotonsName;
00148 std::string m_PhotonCutMaskName;
00149
00150 std::vector< std::string > m_ElectronTrigs;
00151 std::vector< std::string > m_MuonTrigs;
00152 std::vector< std::string > m_PhotonTrigs;
00153
00154 std::string m_configFile;
00155
00156
00157
00158 ToolHandle< ISUSYObjDef_xAODTool > m_objTool;
00159 ToolHandle< TauAnalysisTools::ITauTruthMatchingTool > m_tauTruthTool;
00160
00161
00162 std::vector< SystInfo > m_systInfoList;
00163 std::vector< const SystInfo* > m_systInfoJET;
00164 std::vector< const SystInfo* > m_systInfoELE;
00165 std::vector< const SystInfo* > m_systInfoMUON;
00166 std::vector< const SystInfo* > m_systInfoTST;
00167 std::vector< const SystInfo* > m_systInfoCST;
00168 std::vector< const SystInfo* > m_systInfoTAU;
00169 std::vector< const SystInfo* > m_systInfoPHO;
00170
00172 ServiceHandle<IThinningSvc> m_thinningSvc;
00173
00174 };
00175
00176
00178
00180
00181 }
00182
00183 #endif //ST_APPLYSUSYTOOLS_H
00184