Hall-D Software  alpha
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
p2pi_hists/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
54 
55  // maps of histograms by track charge and match flag
56  map<bool, map<int, TH2I*> > dHistMap_TrackNhits_Theta;
57  map<bool, map<int, TH2I*> > dHistMap_TrackNhitsCDC_Theta;
58  map<bool, map<int, TH2I*> > dHistMap_TrackNhitsFDC_Theta;
59  map<bool, map<int, TH2I*> > dHistMap_TrackNhitsFDCVsCDC_Theta13_16;
60  map<bool, map<int, TH2I*> > dHistMap_TrackNhitsFDCVsCDC_Theta16_20;
61  map<bool, map<int, TH2I*> > dHistMap_TrackChiSq_Theta;
62  map<bool, map<int, TH2I*> > dHistMap_TrackFOM_Theta;
63  map<bool, map<int, TH2I*> > dHistMap_TrackP_Theta;
64  map<bool, map<int, TH2I*> > dHistMap_TrackPOCAXY;
65  map<bool, map<int, TH1I*> > dHistMap_TrackPOCAZ;
66  map<bool, map<int, TH2I*> > dHistMap_TrackCDCHitRadius_Nhits;
67  map<bool, map<int, TH2I*> > dHistMap_LowNDFTrackCDCHitRadius_PT;
68  map<bool, map<int, TH2I*> > dHistMap_HighNDFTrackCDCHitRadius_PT;
69  map<bool, map<int, TH2I*> > dHistMap_LowNDFTrackP_VertZ;
70  map<bool, map<int, TH2I*> > dHistMap_LowNDFTrackPT_Phi;
71  map<bool, map<int, TH2I*> > dHistMap_TrackMCHitFraction_Theta;
72  map<bool, map<int, TH2I*> > dHistMap_TrackMCMomRes_Theta;
73  map<bool, map<int, TH2I*> > dHistMap_TrackMCThetaRes_Theta;
74 
75  // maps of histograms by detector system and match flag
78  TH1I *h1_N9, *h1_E9, *h1_t9, *h1_t9sigma;
80  TH1I *h1_N1, *h1_E1, *h1_t1, *h1_t1sigma;
81  TH2I *h2_YvsX1, *h2_dEdx1_vsp, *h2_E1vsp, *h2_dEdxvsE1, *h2_E1_vsTheta, *h2_E1_vsPhi, *h2_E1vsRlocal, *h2_YvsXcheck;
82  TH2I *dHistMap_FCALShowerDeltaR_P, *dHistMap_FCALShowerDeltaR_Theta, *dHistMap_FCALShowerDeltaD_P, *dHistMap_FCALShowerDeltaD_Theta;
84  TH2I *dHistMap_BCALShowerDeltaPhi_DeltaZ, *dHistMap_BCALShowerDeltaPhi_P, *dHistMap_BCALShowerDeltaPhi_Theta;
85  TH2I *dHistMap_BCALShowerDeltaPhi_DeltaT, *dHistMap_BCALShowerDeltaZ_DeltaT;
86  map<bool, map<DetectorSystem_t, TH2I*> > dHistMap_ShowerEnergy_Theta;
87  map<bool, map<DetectorSystem_t, TH2I*> > dHistMap_ShowerPhi_Theta;
88  map<bool, map<DetectorSystem_t, TH1I*> > dHistMap_ShowerNclusters;
89  map<bool, map<DetectorSystem_t, TH1I*> > dHistMap_ShowerNhits;
90  map<bool, map<DetectorSystem_t, TH2I*> > dHistMap_ShowerMaxEnergy_Nhits;
91  map<bool, map<DetectorSystem_t, TH2I*> > dHistMap_ShowerDeltaT_Nhits;
92  map<bool, map<DetectorSystem_t, TH2I*> > dHistMap_ShowerDeltaT_E;
93  map<bool, map<DetectorSystem_t, TH2I*> > dHistMap_ShowerE_Theta;
94  map<bool, TH2I*> dHistMap_Layer1Energy_Theta;
95  map<bool, TH2I*> dHistMap_Layer2Energy_Theta;
96  map<bool, TH2I*> dHistMap_Layer3Energy_Theta;
97  map<bool, TH2I*> dHistMap_Layer4Energy_Theta;
98  map<bool, TH1I*> dHistMap_BCALShowerNcell;
99 
100 };
101 
102 #endif // _DCustomAction_p2pi_unusedHists_
103 
map< bool, map< DetectorSystem_t, TH2I * > > dHistMap_ShowerEnergy_Theta
map< bool, map< int, TH2I * > > dHistMap_TrackNhitsFDC_Theta
static TH2I * h2_E1_vsPhi
The DTrackFitter class is a base class for different charged track fitting algorithms. It does not actually fit the track itself, but provides the interface and some common support features most algorthims will need to implement.
Definition: DTrackFitter.h:61
static TH1I * h1_E9
DCustomAction_p2pi_unusedHists(const DReaction *locReaction, bool locUseKinFitResultsFlag, string locActionUniqueString="")
map< bool, map< DetectorSystem_t, TH1I * > > dHistMap_ShowerNclusters
map< bool, map< DetectorSystem_t, TH2I * > > dHistMap_ShowerDeltaT_Nhits
map< bool, map< DetectorSystem_t, TH2I * > > dHistMap_ShowerMaxEnergy_Nhits
static TH1I * h1_Efcal
map< bool, map< int, TH2I * > > dHistMap_TrackCDCHitRadius_Nhits
static TH1I * h1_deltaY
map< bool, map< DetectorSystem_t, TH1I * > > dHistMap_ShowerNhits
map< bool, map< int, TH2I * > > dHistMap_TrackMCThetaRes_Theta
map< bool, map< int, TH2I * > > dHistMap_LowNDFTrackCDCHitRadius_PT
static TH2I * h2_E9_vsPhi
map< bool, map< int, TH2I * > > dHistMap_TrackMCMomRes_Theta
map< bool, map< int, TH2I * > > dHistMap_TrackNhitsCDC_Theta
static TH2I * h2_YvsX1
static TH2I * h2_dEdx9_vsp
static TH1I * h1_t9
map< bool, map< int, TH2I * > > dHistMap_HighNDFTrackCDCHitRadius_PT
map< bool, map< int, TH2I * > > dHistMap_TrackNhitsFDCVsCDC_Theta16_20
map< bool, map< int, TH2I * > > dHistMap_TrackNhitsFDCVsCDC_Theta13_16
static TH2I * h2_E9vsp
static TH1I * h1_N1
static TH2I * h2_E1vsp
map< bool, map< int, TH2I * > > dHistMap_TrackChiSq_Theta
static TH2I * h2_E1vsRlocal
map< bool, map< int, TH2I * > > dHistMap_TrackMCHitFraction_Theta
map< bool, map< int, TH2I * > > dHistMap_TrackNhits_Theta
static TH2I * h2_E9_vsTheta
static TH2I * h2_dEdxvsE9
map< bool, map< DetectorSystem_t, TH2I * > > dHistMap_ShowerE_Theta
static TH2I * h2_E1_vsTheta
map< bool, map< int, TH2I * > > dHistMap_LowNDFTrackP_VertZ
map< bool, map< DetectorSystem_t, TH2I * > > dHistMap_ShowerPhi_Theta
static TH1I * h1_deltaX
static TH1I * h1_E1
static TH1I * h1_t1
map< bool, map< DetectorSystem_t, TH2I * > > dHistMap_ShowerDeltaT_E
map< bool, map< int, TH2I * > > dHistMap_LowNDFTrackPT_Phi
static TH1I * h1_N9