Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 09:15:07

0001 /*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
0002   Takes particle and event data, and adds data addresses to to
0003   a TTree to be saved.
0004   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
0005 
0006 #ifndef TreeBuilder_H
0007 #define TreeBuilder_H
0008 
0009 #include "Particle.hxx"
0010 #include "DEMPEvent.hxx"
0011 
0012 #include "TTree.h"
0013 #include "TFile.h"
0014 
0015 #include <vector>
0016 
0017 class TreeBuilder
0018 {
0019   int nParticles;
0020   std::vector<Particle*> ParticleList;
0021   std::vector< std::vector< double* >* > PropList;
0022 
0023   int nVars;
0024 
0025   const char* tree_name;
0026 //  const char* file_name;
0027 
0028   TTree * Tree_Out;
0029   TFile * File_Out;
0030 
0031   void Retrieve();
0032 public:
0033 
0034   TreeBuilder(const char*, const char*);
0035 
0036   void AddParticle(Particle * p);
0037   void AddDouble(double * x, const char* name);
0038   void AddEvent(DEMPEvent * event);
0039   void Fill();
0040   void Save();
0041 };
0042 
0043 
0044 #endif