Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
KFParticle_nTuple.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file KFParticle_nTuple.h
1 #ifndef KFPARTICLESPHENIX_KFPARTICLENTUPLE_H
2 #define KFPARTICLESPHENIX_KFPARTICLENTUPLE_H
3 
5 
6 #include <KFParticle.h>
7 
8 #include <string> // for string
9 #include <vector>
10 
11 class PHCompositeNode;
12 class TTree;
13 
15 {
16  public:
19 
21  ~KFParticle_nTuple() override = default;
22 
24  void initializeVariables();
25 
27  void initializeBranches();
28 
30  void fillBranch(PHCompositeNode *topNode,
31  KFParticle motherParticle,
32  const KFParticle &vertex,
33  std::vector<KFParticle> daughters,
34  std::vector<KFParticle> intermediates,
35  int nPVs, int multiplicity);
36 
37  float calc_secondary_vertex_mass_noPID(std::vector<KFParticle> kfp_daughters);
38 
39  protected:
44  // int m_num_intermediate_states_nTuple;
45  // int m_num_tracks_from_intermediate_nTuple[99];
51  // std::string m_vtx_map_node_name_nTuple;
54  std::vector<std::string> m_intermediate_name_ntuple;
55 
56  private:
57  TTree *m_tree;
58 
91  // float *m_calculated_mother_cov;
92  float m_calculated_mother_cov[21] = {0};
93 
94  static const int max_intermediates = 8;
127  // float *m_calculated_intermediate_cov[max_intermediates];
129 
130  // static const int max_tracks = 20;
157  // float *m_calculated_daughter_cov[max_tracks];
158  float m_calculated_daughter_cov[max_tracks][21] = {{0}, {0}};
159 
160  float m_daughter_dca[99] = {0};
161 
169  // float *m_calculated_vertex_cov;
170  float m_calculated_vertex_cov[6] = {0};
171 
172  float m_sv_mass = -1;
173 
174  int m_nPVs = -1;
175  int m_multiplicity = -1;
176 
177  int m_runNumber = -1;
178  int m_evtNumber = -1;
179 };
180 
181 #endif