Hall-D Software  alpha
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
DCustomAction_TrackingEfficiency.h
Go to the documentation of this file.
1 // $Id$
2 //
3 // File: DCustomAction_TrackingEfficiency.h
4 // Created: Wed Feb 25 09:38:06 EST 2015
5 // Creator: pmatt (on Linux pmattdesktop.jlab.org 2.6.32-504.8.1.el6.x86_64 x86_64)
6 //
7 
8 #ifndef _DCustomAction_TrackingEfficiency_
9 #define _DCustomAction_TrackingEfficiency_
10 
11 #include <string>
12 #include <iostream>
13 
14 #include "JANA/JEventLoop.h"
15 #include "JANA/JApplication.h"
16 
17 #include "DANA/DStatusBits.h"
18 #include "BCAL/DBCALShower.h"
20 #include "PID/DParticleID.h"
21 #include "PID/DDetectorMatches.h"
22 
24 #include "ANALYSIS/DReaction.h"
28 
29 using namespace std;
30 using namespace jana;
31 
33 {
34  public:
35 
36  DCustomAction_TrackingEfficiency(const DReaction* locReaction, bool locUseKinFitResultsFlag, string locActionUniqueString = "") :
37  DAnalysisAction(locReaction, "Custom_TrackingEfficiency", locUseKinFitResultsFlag, locActionUniqueString)
38  {
39  dTreeInterface = NULL;
40  }
41 
42  void Initialize(JEventLoop* locEventLoop);
43 
45  {
46  if(dTreeInterface != NULL)
47  delete dTreeInterface; //SAVES FILES, TREES
48  }
49 
50  private:
51 
52  bool Perform_Action(JEventLoop* locEventLoop, const DParticleCombo* locParticleCombo);
53  double Calc_MatchFOM(const DVector3& locDeltaP3, TMatrixDSym locInverse3x3Matrix) const;
54 
56 
57  // Optional: Useful utility functions.
60 
63 };
64 
65 #endif // _DCustomAction_TrackingEfficiency_
66 
TVector3 DVector3
Definition: DVector3.h:14
DCustomAction_TrackingEfficiency(const DReaction *locReaction, bool locUseKinFitResultsFlag, string locActionUniqueString="")
Particle_t
Definition: particleType.h:12