Hall-D Software  alpha
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
p2pi_trees/DCustomAction_p2pi_unusedHists.h
Go to the documentation of this file.
1 // $Id$
2 //
3 // File: DCustomAction_p2pi_unusedHists.h
4 // Created: Thu Jan 22 08:06:18 EST 2015
5 // Creator: jrsteven (on Linux ifarm1401 2.6.32-431.el6.x86_64 x86_64)
6 //
7 
8 #ifndef _DCustomAction_p2pi_unusedHists_
9 #define _DCustomAction_p2pi_unusedHists_
10 
11 #include <map>
12 #include <string>
13 #include <iostream>
14 
15 #include "JANA/JEventLoop.h"
16 #include "JANA/JApplication.h"
17 
19 #include "ANALYSIS/DReaction.h"
22 
23 #include <FCAL/DFCALCluster.h>
24 #include <FCAL/DFCALHit.h>
25 #include <FCAL/DFCALGeometry.h>
26 #include <BCAL/DBCALCluster.h>
27 #include <BCAL/DBCALPoint.h>
28 
29 using namespace std;
30 using namespace jana;
31 
33 {
34  public:
35 
36  DCustomAction_p2pi_unusedHists(const DReaction* locReaction, bool locUseKinFitResultsFlag, string locActionUniqueString = "") :
37  DAnalysisAction(locReaction, "Custom_p2pi_unusedHists", locUseKinFitResultsFlag, locActionUniqueString){}
38 
39  void Initialize(JEventLoop* locEventLoop);
40 
41  private:
42 
43  bool Perform_Action(JEventLoop* locEventLoop, const DParticleCombo* locParticleCombo);
44  void FillTrack(JEventLoop* locEventLoop, const DChargedTrack* locChargedTrack, bool locMatch, const DMCThrown* locMCThrown);
45  void FillShower(const DNeutralShower* locNeutralShower, bool locMatch, double locBeamPhotonTime, double locFlightTime);
46 
47  // Optional: Useful utility functions.
48  // const DAnalysisUtilities* dAnalysisUtilities;
49 
50  // need PID algos for SC matching
51  const DParticleID* dParticleID;
52  const DFCALGeometry* dFCALGeometry;
53 
54  // maps of histograms by track charge and match flag
55  map<bool, map<int, TH2I*> > dHistMap_TrackNhits_Theta;
56  map<bool, map<int, TH2I*> > dHistMap_TrackNhitsCDC_Theta;
57  map<bool, map<int, TH2I*> > dHistMap_TrackNhitsFDC_Theta;
58  map<bool, map<int, TH2I*> > dHistMap_TrackNhitsFDCVsCDC_Theta13_16;
59  map<bool, map<int, TH2I*> > dHistMap_TrackNhitsFDCVsCDC_Theta16_20;
60  map<bool, map<int, TH2I*> > dHistMap_TrackChiSq_Theta;
61  map<bool, map<int, TH2I*> > dHistMap_TrackFOM_Theta;
62  map<bool, map<int, TH2I*> > dHistMap_TrackP_Theta;
63  map<bool, map<int, TH2I*> > dHistMap_TrackPOCAXY;
64  map<bool, map<int, TH1I*> > dHistMap_TrackPOCAZ;
65  map<bool, map<int, TH2I*> > dHistMap_TrackCDCHitRadius_Nhits;
66  map<bool, map<int, TH2I*> > dHistMap_LowNDFTrackCDCHitRadius_PT;
67  map<bool, map<int, TH2I*> > dHistMap_HighNDFTrackCDCHitRadius_PT;
68  map<bool, map<int, TH2I*> > dHistMap_LowNDFTrackP_VertZ;
69  map<bool, map<int, TH2I*> > dHistMap_LowNDFTrackPT_Phi;
70  map<bool, map<int, TH2I*> > dHistMap_TrackMCHitFraction_Theta;
71  map<bool, map<int, TH2I*> > dHistMap_TrackMCMomRes_Theta;
72  map<bool, map<int, TH2I*> > dHistMap_TrackMCThetaRes_Theta;
73 
74  // maps of histograms by detector system and match flag
75  TH2I *dNShowerBCAL_FCAL;
77  TH1I *h1_N9, *h1_E9, *h1_t9, *h1_t9sigma;
79  TH1I *h1_N1, *h1_E1, *h1_t1, *h1_t1sigma;
80  TH2I *h2_YvsX1, *h2_dEdx1_vsp, *h2_E1vsp, *h2_dEdxvsE1, *h2_E1_vsTheta, *h2_E1_vsPhi, *h2_E1vsRlocal, *h2_YvsXcheck;
81  TH2I *dHistMap_FCALShowerDeltaR_P, *dHistMap_FCALShowerDeltaR_Theta, *dHistMap_FCALShowerDeltaD_P, *dHistMap_FCALShowerDeltaD_Theta;
82  TH2I *dHistMap_FCALShowerDeltaD_DeltaT;
83  TH2I *dHistMap_BCALShowerDeltaPhi_DeltaZ, *dHistMap_BCALShowerDeltaPhi_P, *dHistMap_BCALShowerDeltaPhi_Theta;
84  TH2I *dHistMap_BCALShowerDeltaPhi_DeltaT, *dHistMap_BCALShowerDeltaZ_DeltaT;
85  map<bool, map<DetectorSystem_t, TH2I*> > dHistMap_ShowerEnergy_Theta;
86  map<bool, map<DetectorSystem_t, TH2I*> > dHistMap_ShowerPhi_Theta;
87  map<bool, map<DetectorSystem_t, TH1I*> > dHistMap_ShowerNclusters;
88  map<bool, map<DetectorSystem_t, TH1I*> > dHistMap_ShowerNhits;
89  map<bool, map<DetectorSystem_t, TH2I*> > dHistMap_ShowerMaxEnergy_Nhits;
90  map<bool, map<DetectorSystem_t, TH2I*> > dHistMap_ShowerDeltaT_Nhits;
91  map<bool, map<DetectorSystem_t, TH2I*> > dHistMap_ShowerDeltaT_E;
92  map<bool, map<DetectorSystem_t, TH2I*> > dHistMap_ShowerE_Theta;
93  map<bool, TH2I*> dHistMap_Layer1Energy_Theta;
94  map<bool, TH2I*> dHistMap_Layer2Energy_Theta;
95  map<bool, TH2I*> dHistMap_Layer3Energy_Theta;
96  map<bool, TH2I*> dHistMap_Layer4Energy_Theta;
97  map<bool, TH1I*> dHistMap_BCALShowerNcell;
98 
99 };
100 
101 #endif // _DCustomAction_p2pi_unusedHists_
102 
static TH2I * h2_E1_vsPhi
static TH1I * h1_E9
DCustomAction_p2pi_unusedHists(const DReaction *locReaction, bool locUseKinFitResultsFlag, string locActionUniqueString="")
static TH2I * h2_YvsXcheck
static TH1I * h1_Efcal
static TH1I * h1_deltaY
static TH1I * h1_t9sigma
static TH1I * h1_tfcal
static TH2I * h2_E9_vsPhi
static TH2I * h2_YvsX1
static TH2I * h2_dEdx9_vsp
static TH1I * h1_t9
static TH2I * h2_E9vsp
static TH1I * h1_N1
static TH2I * h2_E1vsp
static TH2I * h2_E1vsRlocal
static TH2I * h2_E9_vsTheta
static TH2I * h2_dEdxvsE9
static TH2I * h2_YvsX9
static TH2I * h2_E1_vsTheta
static TH1I * h1_deltaX
static TH1I * h1_E1
static TH1I * h1_t1
static TH1I * h1_N9
static TH1I * h1_t1sigma