DD4hep  1.30.0
Detector Description Toolkit for High Energy Physics
Geant4DataDump.h
Go to the documentation of this file.
1 //==========================================================================
2 // AIDA Detector description implementation
3 //--------------------------------------------------------------------------
4 // Copyright (C) Organisation europeenne pour la Recherche nucleaire (CERN)
5 // All rights reserved.
6 //
7 // For the licensing terms see $DD4hepINSTALL/LICENSE.
8 // For the list of contributors see $DD4hepINSTALL/doc/CREDITS.
9 //
10 // Author : M.Frank
11 //
12 //==========================================================================
13 
14 #ifndef DDG4_GEANT4DATADUMP_H
15 #define DDG4_GEANT4DATADUMP_H
16 
17 // Framework include files
18 #include <DD4hep/Printout.h>
19 #include <DDG4/Geant4Data.h>
20 #include <DDG4/Geant4Particle.h>
21 
22 // C/C++ include files
23 #include <vector>
24 
26 namespace dd4hep {
27 
29  namespace sim {
30 
32 
38  public:
40  typedef std::vector<Particle*> Particles;
41 
43  typedef std::vector<SimpleTracker::Hit*> TrackerHits;
44 
46  typedef std::vector<SimpleCalorimeter::Hit*> CalorimeterHits;
47 
48  protected:
50  std::string m_tag;
51 
52  public:
54  Geant4DataDump(const std::string& tag);
56  virtual ~Geant4DataDump();
57 #if !(defined(G__DICTIONARY) || defined(__CLANG__) || defined(__CINT__) || defined(__MAKECINT__))
58  void print(PrintLevel level, Geant4ParticleHandle p) const;
61  void print(PrintLevel level, int key, Geant4ParticleHandle p) const;
62 #endif
63  void print(PrintLevel level, const Geant4ParticleMap* parts) const;
65 
67  void print(PrintLevel level, const std::string& container, const Particles* parts) const;
68 
70  void print(PrintLevel level, const TrackerHit* h) const;
72  void print(PrintLevel level, const std::string& container, const TrackerHits* hits) const;
73 
75  void print(PrintLevel level, const CalorimeterHit* h) const;
77  void print(PrintLevel level, const std::string& container, const CalorimeterHits* hits) const;
78 
79  };
80  } // End namespace sim
81 } // End namespace dd4hep
82 
83 #endif // DDG4_GEANT4DATADUMP_H
dd4hep::sim::Geant4DataDump::~Geant4DataDump
virtual ~Geant4DataDump()
Standard destructor.
Definition: Geant4DataDump.cpp:26
dd4hep::sim::Geant4DataDump::Particle
Geant4Particle Particle
Definition: Geant4DataDump.h:39
dd4hep::sim::Geant4DataDump
Class to dump the records of the intrinsic Geant4 event model.
Definition: Geant4DataDump.h:37
dd4hep::sim::Geant4DataDump::Geant4DataDump
Geant4DataDump(const std::string &tag)
Default constructor.
Definition: Geant4DataDump.cpp:22
Geant4Data.h
dd4hep::sim::Geant4DataDump::TrackerHit
SimpleTracker::Hit TrackerHit
Definition: Geant4DataDump.h:42
dd4hep::sim::Geant4ParticleMap
Data structure to map particles produced during the generation and the simulation.
Definition: Geant4Particle.h:337
dd4hep::sim::Geant4DataDump::CalorimeterHit
SimpleCalorimeter::Hit CalorimeterHit
Definition: Geant4DataDump.h:45
dd4hep::sim::Geant4DataDump::CalorimeterHits
std::vector< SimpleCalorimeter::Hit * > CalorimeterHits
Definition: Geant4DataDump.h:46
dd4hep::sim::Geant4DataDump::m_tag
std::string m_tag
Tag variable.
Definition: Geant4DataDump.h:50
dd4hep::sim::Geant4Tracker::Hit
DDG4 tracker hit class used by the generic DDG4 tracker sensitive detector.
Definition: Geant4Data.h:263
dd4hep::sim::Geant4DataDump::TrackerHits
std::vector< SimpleTracker::Hit * > TrackerHits
Definition: Geant4DataDump.h:43
dd4hep::sim::Geant4Calorimeter::Hit
DDG4 calorimeter hit class used by the generic DDG4 calorimeter sensitive detector.
Definition: Geant4Data.h:323
key
unsigned char key
Definition: AlignmentsCalculator.cpp:69
dd4hep
Namespace for the AIDA detector description toolkit.
Definition: AlignmentsCalib.h:28
dd4hep::sim::Geant4ParticleHandle
Data structure to access derived MC particle information.
Definition: Geant4Particle.h:181
Geant4Particle.h
dd4hep::sim::Geant4Particle
Data structure to store the MC particle information.
Definition: Geant4Particle.h:103
dd4hep::sim::Geant4DataDump::Particles
std::vector< Particle * > Particles
Definition: Geant4DataDump.h:40
Printout.h
dd4hep::sim::Geant4DataDump::print
void print(PrintLevel level, Geant4ParticleHandle p) const
Print a single particle to the output logging using the specified print level.
Definition: Geant4DataDump.cpp:30