14 #include <EVENT/LCEvent.h>
15 #include <EVENT/LCCollection.h>
16 #include <EVENT/MCParticle.h>
17 #include <EVENT/SimTrackerHit.h>
18 #include <EVENT/SimCalorimeterHit.h>
19 #include <EVENT/ReconstructedParticle.h>
21 #include "HelixClass.h"
23 #include "csvparser.h"
34 static void printMCParticle(MCParticle* MCP,
bool printDaughters =
false);
35 static std::string getMCName(
int PDGCode);
36 static int getPDGCode(std::string name);
37 static MCParticleVec getAllMCParents(MCParticle* mcPart );
38 static MCParticleVec getAllMCDaughters(MCParticle* mcPart);
39 static bool isDaughterOf( MCParticle* daughter, MCParticle* parent );
40 static bool DecayChainInTree(std::vector<int> DecayChannel, LCEvent* evt);
66 static void getMC_Balance(LCEvent* evt,
double* accumulatedEnergies);
68 static void printTrack(Track* track,
double bField=4.0);
69 static const double* getMomentum(Track* track,
double bField=4.0);
70 static const double getAbsMomentum(Track* track,
double bField=4.0);
71 static void printCluster(Cluster* cluster);
72 static void printRecoParticle(ReconstructedParticle* recoParticle,
double bField=4.0);
73 static int countAllSimTrackerHits(LCEvent* evt,MCParticle* MCP);
74 static int countAllSimCalorimeterHits(LCEvent* evt,MCParticle* MCP,
double& accumulatedSimCaloEnergy);
75 static double getEnergyDepositedInFullCalorimeter(LCEvent* evt);
91 std::string getMCCharge(
int PDGCode);
96 std::vector<int> _pdgCodesMCParticles;
97 std::vector<double> _massMCParticles;
98 std::vector<std::string> _nameMCParticles;
99 std::vector<std::string> _chargeMCParticles;
Definition: MarlinUtil.h:29
Definition: MarlinUtil.h:86