TrackingNtupleMod.h 30 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772
  1. //////////////////////////////////////////////////////////
  2. // This class has been automatically generated on
  3. // Sun Jan 21 21:52:41 2018 by ROOT version 6.12/04
  4. // from TTree tree/tree
  5. // found on file: trackingNtuple_1.root
  6. //////////////////////////////////////////////////////////
  7. #ifndef TrackingNtuple_h
  8. #define TrackingNtuple_h
  9. #include <TROOT.h>
  10. #include <TChain.h>
  11. #include <TFile.h>
  12. #include <vector>
  13. class TrackingNtuple {
  14. public :
  15. TTree *fChain; //!pointer to the analyzed TTree or TChain
  16. Int_t fCurrent; //!current Tree number in a TChain
  17. // Fixed size dimensions of array or collections stored in the TTree if any.
  18. // Declaration of leaf types
  19. ULong64_t event;
  20. UInt_t lumi;
  21. UInt_t run;
  22. std::vector<float> *trk_px;
  23. std::vector<float> *trk_py;
  24. std::vector<float> *trk_pz;
  25. std::vector<float> *trk_pt;
  26. std::vector<float> *trk_inner_px;
  27. std::vector<float> *trk_inner_py;
  28. std::vector<float> *trk_inner_pz;
  29. std::vector<float> *trk_inner_pt;
  30. std::vector<float> *trk_outer_px;
  31. std::vector<float> *trk_outer_py;
  32. std::vector<float> *trk_outer_pz;
  33. std::vector<float> *trk_outer_pt;
  34. std::vector<float> *trk_eta;
  35. std::vector<float> *trk_lambda;
  36. std::vector<float> *trk_cotTheta;
  37. std::vector<float> *trk_phi;
  38. std::vector<float> *trk_dxy;
  39. std::vector<float> *trk_dz;
  40. std::vector<float> *trk_ptErr;
  41. std::vector<float> *trk_etaErr;
  42. std::vector<float> *trk_lambdaErr;
  43. std::vector<float> *trk_phiErr;
  44. std::vector<float> *trk_dxyErr;
  45. std::vector<float> *trk_dzErr;
  46. std::vector<float> *trk_refpoint_x;
  47. std::vector<float> *trk_refpoint_y;
  48. std::vector<float> *trk_refpoint_z;
  49. std::vector<float> *trk_nChi2;
  50. std::vector<int> *trk_q;
  51. std::vector<unsigned int> *trk_nValid;
  52. std::vector<unsigned int> *trk_nInvalid;
  53. std::vector<unsigned int> *trk_nPixel;
  54. std::vector<unsigned int> *trk_nStrip;
  55. std::vector<unsigned int> *trk_nPixelLay;
  56. std::vector<unsigned int> *trk_nStripLay;
  57. std::vector<unsigned int> *trk_n3DLay;
  58. std::vector<unsigned int> *trk_nOuterLost;
  59. std::vector<unsigned int> *trk_nInnerLost;
  60. std::vector<unsigned int> *trk_algo;
  61. std::vector<unsigned int> *trk_originalAlgo;
  62. std::vector<ULong64_t> *trk_algoMask;
  63. std::vector<unsigned short> *trk_stopReason;
  64. std::vector<short> *trk_isHP;
  65. std::vector<int> *trk_seedIdx;
  66. std::vector<float> *trk_vtxx;
  67. std::vector<float> *trk_vtxy;
  68. std::vector<float> *trk_vtxz;
  69. std::vector<std::vector<float> > *trk_shareFrac;
  70. std::vector<std::vector<int> > *trk_simTrkIdx;
  71. std::vector<int> *trk_genIdx;
  72. std::vector<float> *trk_genDR;
  73. std::vector<int> *sim_event;
  74. std::vector<int> *sim_bunchCrossing;
  75. std::vector<int> *sim_pdgId;
  76. std::vector<std::vector<int> > *sim_genPdgIds;
  77. std::vector<int> *sim_isFromBHadron;
  78. std::vector<float> *sim_px;
  79. std::vector<float> *sim_py;
  80. std::vector<float> *sim_pz;
  81. std::vector<float> *sim_pt;
  82. std::vector<float> *sim_eta;
  83. std::vector<float> *sim_phi;
  84. std::vector<float> *sim_pca_pt;
  85. std::vector<float> *sim_pca_eta;
  86. std::vector<float> *sim_pca_lambda;
  87. std::vector<float> *sim_pca_cotTheta;
  88. std::vector<float> *sim_pca_phi;
  89. std::vector<float> *sim_pca_dxy;
  90. std::vector<float> *sim_pca_dz;
  91. std::vector<int> *sim_q;
  92. std::vector<unsigned int> *sim_nValid;
  93. std::vector<unsigned int> *sim_nPixel;
  94. std::vector<unsigned int> *sim_nStrip;
  95. std::vector<unsigned int> *sim_nLay;
  96. std::vector<unsigned int> *sim_nPixelLay;
  97. std::vector<unsigned int> *sim_n3DLay;
  98. std::vector<std::vector<int> > *sim_trkIdx;
  99. std::vector<std::vector<float> > *sim_shareFrac;
  100. std::vector<std::vector<int> > *sim_seedIdx;
  101. std::vector<int> *sim_parentVtxIdx;
  102. std::vector<std::vector<int> > *sim_decayVtxIdx;
  103. Float_t bsp_x;
  104. Float_t bsp_y;
  105. Float_t bsp_z;
  106. Float_t bsp_sigmax;
  107. Float_t bsp_sigmay;
  108. Float_t bsp_sigmaz;
  109. std::vector<short> *see_fitok;
  110. std::vector<float> *see_px;
  111. std::vector<float> *see_py;
  112. std::vector<float> *see_pz;
  113. std::vector<float> *see_pt;
  114. std::vector<float> *see_eta;
  115. std::vector<float> *see_phi;
  116. std::vector<float> *see_dxy;
  117. std::vector<float> *see_dz;
  118. std::vector<float> *see_ptErr;
  119. std::vector<float> *see_etaErr;
  120. std::vector<float> *see_phiErr;
  121. std::vector<float> *see_dxyErr;
  122. std::vector<float> *see_dzErr;
  123. std::vector<float> *see_chi2;
  124. std::vector<float> *see_statePt;
  125. std::vector<float> *see_stateTrajX;
  126. std::vector<float> *see_stateTrajY;
  127. std::vector<float> *see_stateTrajPx;
  128. std::vector<float> *see_stateTrajPy;
  129. std::vector<float> *see_stateTrajPz;
  130. std::vector<int> *see_q;
  131. std::vector<unsigned int> *see_nValid;
  132. std::vector<unsigned int> *see_nPixel;
  133. std::vector<unsigned int> *see_nGlued;
  134. std::vector<unsigned int> *see_nStrip;
  135. std::vector<unsigned int> *see_nPhase2OT;
  136. std::vector<unsigned int> *see_algo;
  137. std::vector<unsigned short> *see_stopReason;
  138. std::vector<int> *see_trkIdx;
  139. std::vector<std::vector<float> > *see_shareFrac;
  140. std::vector<std::vector<int> > *see_simTrkIdx;
  141. std::vector<unsigned int> *see_offset;
  142. std::vector<std::vector<int> > *see_isBarrel;
  143. std::vector<std::vector<int> > *see_layerOrDiskNr;
  144. std::vector<std::vector<int> > *see_isValidPos;
  145. std::vector<std::vector<float> > *see_dRZPos;
  146. std::vector<std::vector<float> > *see_dPhiPos;
  147. std::vector<std::vector<int> > *see_isValidNeg;
  148. std::vector<std::vector<float> > *see_dRZNeg;
  149. std::vector<std::vector<float> > *see_dPhiNeg;
  150. std::vector<float> *vtx_x;
  151. std::vector<float> *vtx_y;
  152. std::vector<float> *vtx_z;
  153. std::vector<float> *vtx_xErr;
  154. std::vector<float> *vtx_yErr;
  155. std::vector<float> *vtx_zErr;
  156. std::vector<float> *vtx_ndof;
  157. std::vector<float> *vtx_chi2;
  158. std::vector<short> *vtx_fake;
  159. std::vector<short> *vtx_valid;
  160. std::vector<std::vector<int> > *vtx_trkIdx;
  161. std::vector<float> *gen_px;
  162. std::vector<float> *gen_py;
  163. std::vector<float> *gen_pz;
  164. std::vector<float> *gen_charge;
  165. std::vector<int> *gen_pdgId;
  166. std::vector<float> *gen_vx;
  167. std::vector<float> *gen_vy;
  168. std::vector<float> *gen_vz;
  169. std::vector<int> *gen_status;
  170. std::vector<int> *gen_mother;
  171. std::vector<bool> *gen_isTauDecayProduct;
  172. std::vector<bool> *gen_isDirectHadronDecayProduct;
  173. std::vector<bool> *gen_isPrompt;
  174. std::vector<int> *simvtx_event;
  175. std::vector<int> *simvtx_bunchCrossing;
  176. std::vector<unsigned int> *simvtx_processType;
  177. std::vector<float> *simvtx_x;
  178. std::vector<float> *simvtx_y;
  179. std::vector<float> *simvtx_z;
  180. std::vector<std::vector<int> > *simvtx_sourceSimIdx;
  181. std::vector<std::vector<int> > *simvtx_daughterSimIdx;
  182. std::vector<int> *simpv_idx;
  183. // List of branches
  184. TBranch *b_event; //!
  185. TBranch *b_lumi; //!
  186. TBranch *b_run; //!
  187. TBranch *b_trk_px; //!
  188. TBranch *b_trk_py; //!
  189. TBranch *b_trk_pz; //!
  190. TBranch *b_trk_pt; //!
  191. TBranch *b_trk_inner_px; //!
  192. TBranch *b_trk_inner_py; //!
  193. TBranch *b_trk_inner_pz; //!
  194. TBranch *b_trk_inner_pt; //!
  195. TBranch *b_trk_outer_px; //!
  196. TBranch *b_trk_outer_py; //!
  197. TBranch *b_trk_outer_pz; //!
  198. TBranch *b_trk_outer_pt; //!
  199. TBranch *b_trk_eta; //!
  200. TBranch *b_trk_lambda; //!
  201. TBranch *b_trk_cotTheta; //!
  202. TBranch *b_trk_phi; //!
  203. TBranch *b_trk_dxy; //!
  204. TBranch *b_trk_dz; //!
  205. TBranch *b_trk_ptErr; //!
  206. TBranch *b_trk_etaErr; //!
  207. TBranch *b_trk_lambdaErr; //!
  208. TBranch *b_trk_phiErr; //!
  209. TBranch *b_trk_dxyErr; //!
  210. TBranch *b_trk_dzErr; //!
  211. TBranch *b_trk_refpoint_x; //!
  212. TBranch *b_trk_refpoint_y; //!
  213. TBranch *b_trk_refpoint_z; //!
  214. TBranch *b_trk_nChi2; //!
  215. TBranch *b_trk_q; //!
  216. TBranch *b_trk_nValid; //!
  217. TBranch *b_trk_nInvalid; //!
  218. TBranch *b_trk_nPixel; //!
  219. TBranch *b_trk_nStrip; //!
  220. TBranch *b_trk_nPixelLay; //!
  221. TBranch *b_trk_nStripLay; //!
  222. TBranch *b_trk_n3DLay; //!
  223. TBranch *b_trk_nOuterLost; //!
  224. TBranch *b_trk_nInnerLost; //!
  225. TBranch *b_trk_algo; //!
  226. TBranch *b_trk_originalAlgo; //!
  227. TBranch *b_trk_algoMask; //!
  228. TBranch *b_trk_stopReason; //!
  229. TBranch *b_trk_isHP; //!
  230. TBranch *b_trk_seedIdx; //!
  231. TBranch *b_trk_vtxx; //!
  232. TBranch *b_trk_vtxy; //!
  233. TBranch *b_trk_vtxz; //!
  234. TBranch *b_trk_shareFrac; //!
  235. TBranch *b_trk_simTrkIdx; //!
  236. TBranch *b_trk_genIdx; //!
  237. TBranch *b_trk_genDR; //!
  238. TBranch *b_sim_event; //!
  239. TBranch *b_sim_bunchCrossing; //!
  240. TBranch *b_sim_pdgId; //!
  241. TBranch *b_sim_genPdgIds; //!
  242. TBranch *b_sim_isFromBHadron; //!
  243. TBranch *b_sim_px; //!
  244. TBranch *b_sim_py; //!
  245. TBranch *b_sim_pz; //!
  246. TBranch *b_sim_pt; //!
  247. TBranch *b_sim_eta; //!
  248. TBranch *b_sim_phi; //!
  249. TBranch *b_sim_pca_pt; //!
  250. TBranch *b_sim_pca_eta; //!
  251. TBranch *b_sim_pca_lambda; //!
  252. TBranch *b_sim_pca_cotTheta; //!
  253. TBranch *b_sim_pca_phi; //!
  254. TBranch *b_sim_pca_dxy; //!
  255. TBranch *b_sim_pca_dz; //!
  256. TBranch *b_sim_q; //!
  257. TBranch *b_sim_nValid; //!
  258. TBranch *b_sim_nPixel; //!
  259. TBranch *b_sim_nStrip; //!
  260. TBranch *b_sim_nLay; //!
  261. TBranch *b_sim_nPixelLay; //!
  262. TBranch *b_sim_n3DLay; //!
  263. TBranch *b_sim_trkIdx; //!
  264. TBranch *b_sim_shareFrac; //!
  265. TBranch *b_sim_seedIdx; //!
  266. TBranch *b_sim_parentVtxIdx; //!
  267. TBranch *b_sim_decayVtxIdx; //!
  268. TBranch *b_bsp_x; //!
  269. TBranch *b_bsp_y; //!
  270. TBranch *b_bsp_z; //!
  271. TBranch *b_bsp_sigmax; //!
  272. TBranch *b_bsp_sigmay; //!
  273. TBranch *b_bsp_sigmaz; //!
  274. TBranch *b_see_fitok; //!
  275. TBranch *b_see_px; //!
  276. TBranch *b_see_py; //!
  277. TBranch *b_see_pz; //!
  278. TBranch *b_see_pt; //!
  279. TBranch *b_see_eta; //!
  280. TBranch *b_see_phi; //!
  281. TBranch *b_see_dxy; //!
  282. TBranch *b_see_dz; //!
  283. TBranch *b_see_ptErr; //!
  284. TBranch *b_see_etaErr; //!
  285. TBranch *b_see_phiErr; //!
  286. TBranch *b_see_dxyErr; //!
  287. TBranch *b_see_dzErr; //!
  288. TBranch *b_see_chi2; //!
  289. TBranch *b_see_statePt; //!
  290. TBranch *b_see_stateTrajX; //!
  291. TBranch *b_see_stateTrajY; //!
  292. TBranch *b_see_stateTrajPx; //!
  293. TBranch *b_see_stateTrajPy; //!
  294. TBranch *b_see_stateTrajPz; //!
  295. TBranch *b_see_q; //!
  296. TBranch *b_see_nValid; //!
  297. TBranch *b_see_nPixel; //!
  298. TBranch *b_see_nGlued; //!
  299. TBranch *b_see_nStrip; //!
  300. TBranch *b_see_nPhase2OT; //!
  301. TBranch *b_see_algo; //!
  302. TBranch *b_see_stopReason; //!
  303. TBranch *b_see_trkIdx; //!
  304. TBranch *b_see_shareFrac; //!
  305. TBranch *b_see_simTrkIdx; //!
  306. TBranch *b_see_offset; //!
  307. TBranch *b_see_isBarrel; //!
  308. TBranch *b_see_layerOrDiskNr; //!
  309. TBranch *b_see_isValidPos; //!
  310. TBranch *b_see_dRZPos; //!
  311. TBranch *b_see_dPhiPos; //!
  312. TBranch *b_see_isValidNeg; //!
  313. TBranch *b_see_dRZNeg; //!
  314. TBranch *b_see_dPhiNeg; //!
  315. TBranch *b_vtx_x; //!
  316. TBranch *b_vtx_y; //!
  317. TBranch *b_vtx_z; //!
  318. TBranch *b_vtx_xErr; //!
  319. TBranch *b_vtx_yErr; //!
  320. TBranch *b_vtx_zErr; //!
  321. TBranch *b_vtx_ndof; //!
  322. TBranch *b_vtx_chi2; //!
  323. TBranch *b_vtx_fake; //!
  324. TBranch *b_vtx_valid; //!
  325. TBranch *b_vtx_trkIdx; //!
  326. TBranch *b_gen_px; //!
  327. TBranch *b_gen_py; //!
  328. TBranch *b_gen_pz; //!
  329. TBranch *b_gen_charge; //!
  330. TBranch *b_gen_pdgId; //!
  331. TBranch *b_gen_vx; //!
  332. TBranch *b_gen_vy; //!
  333. TBranch *b_gen_vz; //!
  334. TBranch *b_gen_status; //!
  335. TBranch *b_gen_mother; //!
  336. TBranch *b_gen_isTauDecayProduct; //!
  337. TBranch *b_gen_isDirectHadronDecayProduct; //!
  338. TBranch *b_gen_isPrompt; //!
  339. TBranch *b_simvtx_event; //!
  340. TBranch *b_simvtx_bunchCrossing; //!
  341. TBranch *b_simvtx_processType; //!
  342. TBranch *b_simvtx_x; //!
  343. TBranch *b_simvtx_y; //!
  344. TBranch *b_simvtx_z; //!
  345. TBranch *b_simvtx_sourceSimIdx; //!
  346. TBranch *b_simvtx_daughterSimIdx; //!
  347. TBranch *b_simpv_idx; //!
  348. TrackingNtuple(TTree *tree=0);
  349. virtual ~TrackingNtuple();
  350. virtual Int_t Cut(Long64_t entry);
  351. virtual Int_t GetEntry(Long64_t entry);
  352. virtual Long64_t LoadTree(Long64_t entry);
  353. virtual void Init(TTree *tree);
  354. virtual Bool_t Notify();
  355. virtual void Show(Long64_t entry = -1);
  356. };
  357. TrackingNtuple::TrackingNtuple(TTree *tree) : fChain(0)
  358. {
  359. // if parameter tree is not specified (or zero), connect the file
  360. // used to generate this class and read the Tree.
  361. if (tree == 0) {
  362. TFile *f = (TFile*)gROOT->GetListOfFiles()->FindObject("trackingNtuple_1.root");
  363. if (!f || !f->IsOpen()) {
  364. f = new TFile("trackingNtuple_1.root");
  365. }
  366. TDirectory * dir = (TDirectory*)f->Get("trackingNtuple_1.root:/trackingNtuple");
  367. dir->GetObject("tree",tree);
  368. }
  369. Init(tree);
  370. }
  371. TrackingNtuple::~TrackingNtuple()
  372. {
  373. if (!fChain) return;
  374. delete fChain->GetCurrentFile();
  375. }
  376. Int_t TrackingNtuple::GetEntry(Long64_t entry)
  377. {
  378. // Read contents of entry.
  379. if (!fChain) return 0;
  380. return fChain->GetEntry(entry);
  381. }
  382. Long64_t TrackingNtuple::LoadTree(Long64_t entry)
  383. {
  384. // Set the environment to read one entry
  385. if (!fChain) return -5;
  386. Long64_t centry = fChain->LoadTree(entry);
  387. if (centry < 0) return centry;
  388. if (fChain->GetTreeNumber() != fCurrent) {
  389. fCurrent = fChain->GetTreeNumber();
  390. Notify();
  391. }
  392. return centry;
  393. }
  394. void TrackingNtuple::Init(TTree *tree)
  395. {
  396. // The Init() function is called when the selector needs to initialize
  397. // a new tree or chain. Typically here the branch addresses and branch
  398. // pointers of the tree will be set.
  399. // It is normally not necessary to make changes to the generated
  400. // code, but the routine can be extended by the user if needed.
  401. // Init() will be called many times when running on PROOF
  402. // (once per file to be processed).
  403. // Set object pointer
  404. trk_px = 0;
  405. trk_py = 0;
  406. trk_pz = 0;
  407. trk_pt = 0;
  408. trk_inner_px = 0;
  409. trk_inner_py = 0;
  410. trk_inner_pz = 0;
  411. trk_inner_pt = 0;
  412. trk_outer_px = 0;
  413. trk_outer_py = 0;
  414. trk_outer_pz = 0;
  415. trk_outer_pt = 0;
  416. trk_eta = 0;
  417. trk_lambda = 0;
  418. trk_cotTheta = 0;
  419. trk_phi = 0;
  420. trk_dxy = 0;
  421. trk_dz = 0;
  422. trk_ptErr = 0;
  423. trk_etaErr = 0;
  424. trk_lambdaErr = 0;
  425. trk_phiErr = 0;
  426. trk_dxyErr = 0;
  427. trk_dzErr = 0;
  428. trk_refpoint_x = 0;
  429. trk_refpoint_y = 0;
  430. trk_refpoint_z = 0;
  431. trk_nChi2 = 0;
  432. trk_q = 0;
  433. trk_nValid = 0;
  434. trk_nInvalid = 0;
  435. trk_nPixel = 0;
  436. trk_nStrip = 0;
  437. trk_nPixelLay = 0;
  438. trk_nStripLay = 0;
  439. trk_n3DLay = 0;
  440. trk_nOuterLost = 0;
  441. trk_nInnerLost = 0;
  442. trk_algo = 0;
  443. trk_originalAlgo = 0;
  444. trk_algoMask = 0;
  445. trk_stopReason = 0;
  446. trk_isHP = 0;
  447. trk_seedIdx = 0;
  448. trk_vtxx = 0;
  449. trk_vtxy = 0;
  450. trk_vtxz = 0;
  451. trk_shareFrac = 0;
  452. trk_simTrkIdx = 0;
  453. trk_genIdx = 0;
  454. trk_genDR = 0;
  455. sim_event = 0;
  456. sim_bunchCrossing = 0;
  457. sim_pdgId = 0;
  458. sim_genPdgIds = 0;
  459. sim_isFromBHadron = 0;
  460. sim_px = 0;
  461. sim_py = 0;
  462. sim_pz = 0;
  463. sim_pt = 0;
  464. sim_eta = 0;
  465. sim_phi = 0;
  466. sim_pca_pt = 0;
  467. sim_pca_eta = 0;
  468. sim_pca_lambda = 0;
  469. sim_pca_cotTheta = 0;
  470. sim_pca_phi = 0;
  471. sim_pca_dxy = 0;
  472. sim_pca_dz = 0;
  473. sim_q = 0;
  474. sim_nValid = 0;
  475. sim_nPixel = 0;
  476. sim_nStrip = 0;
  477. sim_nLay = 0;
  478. sim_nPixelLay = 0;
  479. sim_n3DLay = 0;
  480. sim_trkIdx = 0;
  481. sim_shareFrac = 0;
  482. sim_seedIdx = 0;
  483. sim_parentVtxIdx = 0;
  484. sim_decayVtxIdx = 0;
  485. see_fitok = 0;
  486. see_px = 0;
  487. see_py = 0;
  488. see_pz = 0;
  489. see_pt = 0;
  490. see_eta = 0;
  491. see_phi = 0;
  492. see_dxy = 0;
  493. see_dz = 0;
  494. see_ptErr = 0;
  495. see_etaErr = 0;
  496. see_phiErr = 0;
  497. see_dxyErr = 0;
  498. see_dzErr = 0;
  499. see_chi2 = 0;
  500. see_statePt = 0;
  501. see_stateTrajX = 0;
  502. see_stateTrajY = 0;
  503. see_stateTrajPx = 0;
  504. see_stateTrajPy = 0;
  505. see_stateTrajPz = 0;
  506. see_q = 0;
  507. see_nValid = 0;
  508. see_nPixel = 0;
  509. see_nGlued = 0;
  510. see_nStrip = 0;
  511. see_nPhase2OT = 0;
  512. see_algo = 0;
  513. see_stopReason = 0;
  514. see_trkIdx = 0;
  515. see_shareFrac = 0;
  516. see_simTrkIdx = 0;
  517. see_offset = 0;
  518. see_isBarrel = 0;
  519. see_layerOrDiskNr = 0;
  520. see_isValidPos = 0;
  521. see_dRZPos = 0;
  522. see_dPhiPos = 0;
  523. see_isValidNeg = 0;
  524. see_dRZNeg = 0;
  525. see_dPhiNeg = 0;
  526. vtx_x = 0;
  527. vtx_y = 0;
  528. vtx_z = 0;
  529. vtx_xErr = 0;
  530. vtx_yErr = 0;
  531. vtx_zErr = 0;
  532. vtx_ndof = 0;
  533. vtx_chi2 = 0;
  534. vtx_fake = 0;
  535. vtx_valid = 0;
  536. vtx_trkIdx = 0;
  537. gen_px = 0;
  538. gen_py = 0;
  539. gen_pz = 0;
  540. gen_charge = 0;
  541. gen_pdgId = 0;
  542. gen_vx = 0;
  543. gen_vy = 0;
  544. gen_vz = 0;
  545. gen_status = 0;
  546. gen_mother = 0;
  547. gen_isTauDecayProduct = 0;
  548. gen_isDirectHadronDecayProduct = 0;
  549. gen_isPrompt = 0;
  550. simvtx_event = 0;
  551. simvtx_bunchCrossing = 0;
  552. simvtx_processType = 0;
  553. simvtx_x = 0;
  554. simvtx_y = 0;
  555. simvtx_z = 0;
  556. simvtx_sourceSimIdx = 0;
  557. simvtx_daughterSimIdx = 0;
  558. simpv_idx = 0;
  559. // Set branch addresses and branch pointers
  560. if (!tree) return;
  561. fChain = tree;
  562. fCurrent = -1;
  563. fChain->SetMakeClass(1);
  564. fChain->SetBranchAddress("event", &event, &b_event);
  565. fChain->SetBranchAddress("lumi", &lumi, &b_lumi);
  566. fChain->SetBranchAddress("run", &run, &b_run);
  567. fChain->SetBranchAddress("trk_px", &trk_px, &b_trk_px);
  568. fChain->SetBranchAddress("trk_py", &trk_py, &b_trk_py);
  569. fChain->SetBranchAddress("trk_pz", &trk_pz, &b_trk_pz);
  570. fChain->SetBranchAddress("trk_pt", &trk_pt, &b_trk_pt);
  571. fChain->SetBranchAddress("trk_inner_px", &trk_inner_px, &b_trk_inner_px);
  572. fChain->SetBranchAddress("trk_inner_py", &trk_inner_py, &b_trk_inner_py);
  573. fChain->SetBranchAddress("trk_inner_pz", &trk_inner_pz, &b_trk_inner_pz);
  574. fChain->SetBranchAddress("trk_inner_pt", &trk_inner_pt, &b_trk_inner_pt);
  575. fChain->SetBranchAddress("trk_outer_px", &trk_outer_px, &b_trk_outer_px);
  576. fChain->SetBranchAddress("trk_outer_py", &trk_outer_py, &b_trk_outer_py);
  577. fChain->SetBranchAddress("trk_outer_pz", &trk_outer_pz, &b_trk_outer_pz);
  578. fChain->SetBranchAddress("trk_outer_pt", &trk_outer_pt, &b_trk_outer_pt);
  579. fChain->SetBranchAddress("trk_eta", &trk_eta, &b_trk_eta);
  580. fChain->SetBranchAddress("trk_lambda", &trk_lambda, &b_trk_lambda);
  581. fChain->SetBranchAddress("trk_cotTheta", &trk_cotTheta, &b_trk_cotTheta);
  582. fChain->SetBranchAddress("trk_phi", &trk_phi, &b_trk_phi);
  583. fChain->SetBranchAddress("trk_dxy", &trk_dxy, &b_trk_dxy);
  584. fChain->SetBranchAddress("trk_dz", &trk_dz, &b_trk_dz);
  585. fChain->SetBranchAddress("trk_ptErr", &trk_ptErr, &b_trk_ptErr);
  586. fChain->SetBranchAddress("trk_etaErr", &trk_etaErr, &b_trk_etaErr);
  587. fChain->SetBranchAddress("trk_lambdaErr", &trk_lambdaErr, &b_trk_lambdaErr);
  588. fChain->SetBranchAddress("trk_phiErr", &trk_phiErr, &b_trk_phiErr);
  589. fChain->SetBranchAddress("trk_dxyErr", &trk_dxyErr, &b_trk_dxyErr);
  590. fChain->SetBranchAddress("trk_dzErr", &trk_dzErr, &b_trk_dzErr);
  591. fChain->SetBranchAddress("trk_refpoint_x", &trk_refpoint_x, &b_trk_refpoint_x);
  592. fChain->SetBranchAddress("trk_refpoint_y", &trk_refpoint_y, &b_trk_refpoint_y);
  593. fChain->SetBranchAddress("trk_refpoint_z", &trk_refpoint_z, &b_trk_refpoint_z);
  594. fChain->SetBranchAddress("trk_nChi2", &trk_nChi2, &b_trk_nChi2);
  595. fChain->SetBranchAddress("trk_q", &trk_q, &b_trk_q);
  596. fChain->SetBranchAddress("trk_nValid", &trk_nValid, &b_trk_nValid);
  597. fChain->SetBranchAddress("trk_nInvalid", &trk_nInvalid, &b_trk_nInvalid);
  598. fChain->SetBranchAddress("trk_nPixel", &trk_nPixel, &b_trk_nPixel);
  599. fChain->SetBranchAddress("trk_nStrip", &trk_nStrip, &b_trk_nStrip);
  600. fChain->SetBranchAddress("trk_nPixelLay", &trk_nPixelLay, &b_trk_nPixelLay);
  601. fChain->SetBranchAddress("trk_nStripLay", &trk_nStripLay, &b_trk_nStripLay);
  602. fChain->SetBranchAddress("trk_n3DLay", &trk_n3DLay, &b_trk_n3DLay);
  603. fChain->SetBranchAddress("trk_nOuterLost", &trk_nOuterLost, &b_trk_nOuterLost);
  604. fChain->SetBranchAddress("trk_nInnerLost", &trk_nInnerLost, &b_trk_nInnerLost);
  605. fChain->SetBranchAddress("trk_algo", &trk_algo, &b_trk_algo);
  606. fChain->SetBranchAddress("trk_originalAlgo", &trk_originalAlgo, &b_trk_originalAlgo);
  607. fChain->SetBranchAddress("trk_algoMask", &trk_algoMask, &b_trk_algoMask);
  608. fChain->SetBranchAddress("trk_stopReason", &trk_stopReason, &b_trk_stopReason);
  609. fChain->SetBranchAddress("trk_isHP", &trk_isHP, &b_trk_isHP);
  610. fChain->SetBranchAddress("trk_seedIdx", &trk_seedIdx, &b_trk_seedIdx);
  611. fChain->SetBranchAddress("trk_vtxx", &trk_vtxx, &b_trk_vtxx);
  612. fChain->SetBranchAddress("trk_vtxy", &trk_vtxy, &b_trk_vtxy);
  613. fChain->SetBranchAddress("trk_vtxz", &trk_vtxz, &b_trk_vtxz);
  614. fChain->SetBranchAddress("trk_shareFrac", &trk_shareFrac, &b_trk_shareFrac);
  615. fChain->SetBranchAddress("trk_simTrkIdx", &trk_simTrkIdx, &b_trk_simTrkIdx);
  616. fChain->SetBranchAddress("trk_genIdx", &trk_genIdx, &b_trk_genIdx);
  617. fChain->SetBranchAddress("trk_genDR", &trk_genDR, &b_trk_genDR);
  618. fChain->SetBranchAddress("sim_event", &sim_event, &b_sim_event);
  619. fChain->SetBranchAddress("sim_bunchCrossing", &sim_bunchCrossing, &b_sim_bunchCrossing);
  620. fChain->SetBranchAddress("sim_pdgId", &sim_pdgId, &b_sim_pdgId);
  621. fChain->SetBranchAddress("sim_genPdgIds", &sim_genPdgIds, &b_sim_genPdgIds);
  622. fChain->SetBranchAddress("sim_isFromBHadron", &sim_isFromBHadron, &b_sim_isFromBHadron);
  623. fChain->SetBranchAddress("sim_px", &sim_px, &b_sim_px);
  624. fChain->SetBranchAddress("sim_py", &sim_py, &b_sim_py);
  625. fChain->SetBranchAddress("sim_pz", &sim_pz, &b_sim_pz);
  626. fChain->SetBranchAddress("sim_pt", &sim_pt, &b_sim_pt);
  627. fChain->SetBranchAddress("sim_eta", &sim_eta, &b_sim_eta);
  628. fChain->SetBranchAddress("sim_phi", &sim_phi, &b_sim_phi);
  629. fChain->SetBranchAddress("sim_pca_pt", &sim_pca_pt, &b_sim_pca_pt);
  630. fChain->SetBranchAddress("sim_pca_eta", &sim_pca_eta, &b_sim_pca_eta);
  631. fChain->SetBranchAddress("sim_pca_lambda", &sim_pca_lambda, &b_sim_pca_lambda);
  632. fChain->SetBranchAddress("sim_pca_cotTheta", &sim_pca_cotTheta, &b_sim_pca_cotTheta);
  633. fChain->SetBranchAddress("sim_pca_phi", &sim_pca_phi, &b_sim_pca_phi);
  634. fChain->SetBranchAddress("sim_pca_dxy", &sim_pca_dxy, &b_sim_pca_dxy);
  635. fChain->SetBranchAddress("sim_pca_dz", &sim_pca_dz, &b_sim_pca_dz);
  636. fChain->SetBranchAddress("sim_q", &sim_q, &b_sim_q);
  637. fChain->SetBranchAddress("sim_nValid", &sim_nValid, &b_sim_nValid);
  638. fChain->SetBranchAddress("sim_nPixel", &sim_nPixel, &b_sim_nPixel);
  639. fChain->SetBranchAddress("sim_nStrip", &sim_nStrip, &b_sim_nStrip);
  640. fChain->SetBranchAddress("sim_nLay", &sim_nLay, &b_sim_nLay);
  641. fChain->SetBranchAddress("sim_nPixelLay", &sim_nPixelLay, &b_sim_nPixelLay);
  642. fChain->SetBranchAddress("sim_n3DLay", &sim_n3DLay, &b_sim_n3DLay);
  643. fChain->SetBranchAddress("sim_trkIdx", &sim_trkIdx, &b_sim_trkIdx);
  644. fChain->SetBranchAddress("sim_shareFrac", &sim_shareFrac, &b_sim_shareFrac);
  645. fChain->SetBranchAddress("sim_seedIdx", &sim_seedIdx, &b_sim_seedIdx);
  646. fChain->SetBranchAddress("sim_parentVtxIdx", &sim_parentVtxIdx, &b_sim_parentVtxIdx);
  647. fChain->SetBranchAddress("sim_decayVtxIdx", &sim_decayVtxIdx, &b_sim_decayVtxIdx);
  648. fChain->SetBranchAddress("bsp_x", &bsp_x, &b_bsp_x);
  649. fChain->SetBranchAddress("bsp_y", &bsp_y, &b_bsp_y);
  650. fChain->SetBranchAddress("bsp_z", &bsp_z, &b_bsp_z);
  651. fChain->SetBranchAddress("bsp_sigmax", &bsp_sigmax, &b_bsp_sigmax);
  652. fChain->SetBranchAddress("bsp_sigmay", &bsp_sigmay, &b_bsp_sigmay);
  653. fChain->SetBranchAddress("bsp_sigmaz", &bsp_sigmaz, &b_bsp_sigmaz);
  654. fChain->SetBranchAddress("see_fitok", &see_fitok, &b_see_fitok);
  655. fChain->SetBranchAddress("see_px", &see_px, &b_see_px);
  656. fChain->SetBranchAddress("see_py", &see_py, &b_see_py);
  657. fChain->SetBranchAddress("see_pz", &see_pz, &b_see_pz);
  658. fChain->SetBranchAddress("see_pt", &see_pt, &b_see_pt);
  659. fChain->SetBranchAddress("see_eta", &see_eta, &b_see_eta);
  660. fChain->SetBranchAddress("see_phi", &see_phi, &b_see_phi);
  661. fChain->SetBranchAddress("see_dxy", &see_dxy, &b_see_dxy);
  662. fChain->SetBranchAddress("see_dz", &see_dz, &b_see_dz);
  663. fChain->SetBranchAddress("see_ptErr", &see_ptErr, &b_see_ptErr);
  664. fChain->SetBranchAddress("see_etaErr", &see_etaErr, &b_see_etaErr);
  665. fChain->SetBranchAddress("see_phiErr", &see_phiErr, &b_see_phiErr);
  666. fChain->SetBranchAddress("see_dxyErr", &see_dxyErr, &b_see_dxyErr);
  667. fChain->SetBranchAddress("see_dzErr", &see_dzErr, &b_see_dzErr);
  668. fChain->SetBranchAddress("see_chi2", &see_chi2, &b_see_chi2);
  669. fChain->SetBranchAddress("see_statePt", &see_statePt, &b_see_statePt);
  670. fChain->SetBranchAddress("see_stateTrajX", &see_stateTrajX, &b_see_stateTrajX);
  671. fChain->SetBranchAddress("see_stateTrajY", &see_stateTrajY, &b_see_stateTrajY);
  672. fChain->SetBranchAddress("see_stateTrajPx", &see_stateTrajPx, &b_see_stateTrajPx);
  673. fChain->SetBranchAddress("see_stateTrajPy", &see_stateTrajPy, &b_see_stateTrajPy);
  674. fChain->SetBranchAddress("see_stateTrajPz", &see_stateTrajPz, &b_see_stateTrajPz);
  675. fChain->SetBranchAddress("see_q", &see_q, &b_see_q);
  676. fChain->SetBranchAddress("see_nValid", &see_nValid, &b_see_nValid);
  677. fChain->SetBranchAddress("see_nPixel", &see_nPixel, &b_see_nPixel);
  678. fChain->SetBranchAddress("see_nGlued", &see_nGlued, &b_see_nGlued);
  679. fChain->SetBranchAddress("see_nStrip", &see_nStrip, &b_see_nStrip);
  680. fChain->SetBranchAddress("see_nPhase2OT", &see_nPhase2OT, &b_see_nPhase2OT);
  681. fChain->SetBranchAddress("see_algo", &see_algo, &b_see_algo);
  682. fChain->SetBranchAddress("see_stopReason", &see_stopReason, &b_see_stopReason);
  683. fChain->SetBranchAddress("see_trkIdx", &see_trkIdx, &b_see_trkIdx);
  684. fChain->SetBranchAddress("see_shareFrac", &see_shareFrac, &b_see_shareFrac);
  685. fChain->SetBranchAddress("see_simTrkIdx", &see_simTrkIdx, &b_see_simTrkIdx);
  686. fChain->SetBranchAddress("see_offset", &see_offset, &b_see_offset);
  687. fChain->SetBranchAddress("see_isBarrel", &see_isBarrel, &b_see_isBarrel);
  688. fChain->SetBranchAddress("see_layerOrDiskNr", &see_layerOrDiskNr, &b_see_layerOrDiskNr);
  689. fChain->SetBranchAddress("see_isValidPos", &see_isValidPos, &b_see_isValidPos);
  690. fChain->SetBranchAddress("see_dRZPos", &see_dRZPos, &b_see_dRZPos);
  691. fChain->SetBranchAddress("see_dPhiPos", &see_dPhiPos, &b_see_dPhiPos);
  692. fChain->SetBranchAddress("see_isValidNeg", &see_isValidNeg, &b_see_isValidNeg);
  693. fChain->SetBranchAddress("see_dRZNeg", &see_dRZNeg, &b_see_dRZNeg);
  694. fChain->SetBranchAddress("see_dPhiNeg", &see_dPhiNeg, &b_see_dPhiNeg);
  695. fChain->SetBranchAddress("vtx_x", &vtx_x, &b_vtx_x);
  696. fChain->SetBranchAddress("vtx_y", &vtx_y, &b_vtx_y);
  697. fChain->SetBranchAddress("vtx_z", &vtx_z, &b_vtx_z);
  698. fChain->SetBranchAddress("vtx_xErr", &vtx_xErr, &b_vtx_xErr);
  699. fChain->SetBranchAddress("vtx_yErr", &vtx_yErr, &b_vtx_yErr);
  700. fChain->SetBranchAddress("vtx_zErr", &vtx_zErr, &b_vtx_zErr);
  701. fChain->SetBranchAddress("vtx_ndof", &vtx_ndof, &b_vtx_ndof);
  702. fChain->SetBranchAddress("vtx_chi2", &vtx_chi2, &b_vtx_chi2);
  703. fChain->SetBranchAddress("vtx_fake", &vtx_fake, &b_vtx_fake);
  704. fChain->SetBranchAddress("vtx_valid", &vtx_valid, &b_vtx_valid);
  705. fChain->SetBranchAddress("vtx_trkIdx", &vtx_trkIdx, &b_vtx_trkIdx);
  706. fChain->SetBranchAddress("gen_px", &gen_px, &b_gen_px);
  707. fChain->SetBranchAddress("gen_py", &gen_py, &b_gen_py);
  708. fChain->SetBranchAddress("gen_pz", &gen_pz, &b_gen_pz);
  709. fChain->SetBranchAddress("gen_charge", &gen_charge, &b_gen_charge);
  710. fChain->SetBranchAddress("gen_pdgId", &gen_pdgId, &b_gen_pdgId);
  711. fChain->SetBranchAddress("gen_vx", &gen_vx, &b_gen_vx);
  712. fChain->SetBranchAddress("gen_vy", &gen_vy, &b_gen_vy);
  713. fChain->SetBranchAddress("gen_vz", &gen_vz, &b_gen_vz);
  714. fChain->SetBranchAddress("gen_status", &gen_status, &b_gen_status);
  715. fChain->SetBranchAddress("gen_mother", &gen_mother, &b_gen_mother);
  716. fChain->SetBranchAddress("gen_isTauDecayProduct", &gen_isTauDecayProduct, &b_gen_isTauDecayProduct);
  717. fChain->SetBranchAddress("gen_isDirectHadronDecayProduct", &gen_isDirectHadronDecayProduct, &b_gen_isDirectHadronDecayProduct);
  718. fChain->SetBranchAddress("gen_isPrompt", &gen_isPrompt, &b_gen_isPrompt);
  719. fChain->SetBranchAddress("simvtx_event", &simvtx_event, &b_simvtx_event);
  720. fChain->SetBranchAddress("simvtx_bunchCrossing", &simvtx_bunchCrossing, &b_simvtx_bunchCrossing);
  721. fChain->SetBranchAddress("simvtx_processType", &simvtx_processType, &b_simvtx_processType);
  722. fChain->SetBranchAddress("simvtx_x", &simvtx_x, &b_simvtx_x);
  723. fChain->SetBranchAddress("simvtx_y", &simvtx_y, &b_simvtx_y);
  724. fChain->SetBranchAddress("simvtx_z", &simvtx_z, &b_simvtx_z);
  725. fChain->SetBranchAddress("simvtx_sourceSimIdx", &simvtx_sourceSimIdx, &b_simvtx_sourceSimIdx);
  726. fChain->SetBranchAddress("simvtx_daughterSimIdx", &simvtx_daughterSimIdx, &b_simvtx_daughterSimIdx);
  727. fChain->SetBranchAddress("simpv_idx", &simpv_idx, &b_simpv_idx);
  728. Notify();
  729. }
  730. Bool_t TrackingNtuple::Notify()
  731. {
  732. // The Notify() function is called when a new file is opened. This
  733. // can be either for a new TTree in a TChain or when when a new TTree
  734. // is started when using PROOF. It is normally not necessary to make changes
  735. // to the generated code, but the routine can be extended by the
  736. // user if needed. The return value is currently not used.
  737. return kTRUE;
  738. }
  739. void TrackingNtuple::Show(Long64_t entry)
  740. {
  741. // Print contents of entry.
  742. // If entry is not specified, print current entry
  743. if (!fChain) return;
  744. fChain->Show(entry);
  745. }
  746. Int_t TrackingNtuple::Cut(Long64_t entry)
  747. {
  748. // This function may be called from Loop.
  749. // returns 1 if entry is accepted.
  750. // returns -1 otherwise.
  751. return 1;
  752. }
  753. #endif // #ifdef TrackingNtuple_h