DD4hep  1.30.0
Detector Description Toolkit for High Energy Physics
ParticleActors.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 #ifndef DDEVE_PARTICLEACTORS_H
14 #define DDEVE_PARTICLEACTORS_H
15 
16 // Framework include files
17 #include "DDEve/EventHandler.h"
19 
20 // C/C++ include files
21 #include <map>
22 
23 // Forward declarations
24 class TEveTrackPropagator;
25 class TEvePointSet;
26 class TEveCompound;
27 class TEveElement;
28 class TEveLine;
29 
31 namespace dd4hep {
32 
34  /*
35  * \author M.Frank
36  * \version 1.0
37  * \ingroup DD4HEP_EVE
38  */
40  typedef std::map<std::string,TEveCompound*> Compounds;
41  TEveTrackPropagator* propagator {0};
42  TEveCompound* particles {0};
44  double threshold {10e0}; // 10 MeV
45  int count {0};
46  int lineWidth {4};
47 
49  MCParticleCreator(TEveTrackPropagator* p, TEveCompound* ps, const DisplayConfiguration::Config* cfg);
51  void addCompound(const std::string& name, TEveLine* e);
53  void addCompoundLight(const std::string& name, TEveLine* e);
55  virtual void operator()(const DDEveParticle& particle);
57  void close();
58  };
59 
61  /*
62  * \author M.Frank
63  * \version 1.0
64  * \ingroup DD4HEP_EVE
65  */
67  TEvePointSet* pointset;
68  float deposit;
69  int count;
71  StartVertexCreator(const std::string& collection, size_t length);
73  StartVertexCreator(const std::string& collection, size_t length, const DisplayConfiguration::Config& cfg);
75  virtual ~StartVertexCreator();
77  TEveElement* element() const;
79  virtual void operator()(const DDEveParticle& particle);
80  };
81 
82 } /* End namespace dd4hep */
83 
84 
85 #endif // DDEVE_PARTICLEACTORS_H
86 
dd4hep::DDEveParticleActor
Event data actor base class for particles. Used to extract data from concrete classes.
Definition: EventHandler.h:55
dd4hep::MCParticleCreator::count
int count
Definition: ParticleActors.h:45
dd4hep::StartVertexCreator::operator()
virtual void operator()(const DDEveParticle &particle)
Action callback of this functor:
Definition: ParticleActors.cpp:211
DisplayConfiguration.h
dd4hep::MCParticleCreator::propagator
TEveTrackPropagator * propagator
Definition: ParticleActors.h:41
dd4hep::StartVertexCreator::count
int count
Definition: ParticleActors.h:69
dd4hep::MCParticleCreator::addCompound
void addCompound(const std::string &name, TEveLine *e)
Access sub-compound by name.
Definition: ParticleActors.cpp:70
dd4hep::MCParticleCreator::types
Compounds types
Definition: ParticleActors.h:43
dd4hep::StartVertexCreator::StartVertexCreator
StartVertexCreator(const std::string &collection, size_t length)
Standard initializing constructor.
Definition: ParticleActors.cpp:184
dd4hep::MCParticleCreator::operator()
virtual void operator()(const DDEveParticle &particle)
Action callback of this functor:
Definition: ParticleActors.cpp:119
dd4hep::MCParticleCreator::lineWidth
int lineWidth
Definition: ParticleActors.h:46
dd4hep::StartVertexCreator::deposit
float deposit
Definition: ParticleActors.h:68
EventHandler.h
dd4hep::MCParticleCreator::particles
TEveCompound * particles
Definition: ParticleActors.h:42
dd4hep::DisplayConfiguration::Config
Container with full display configuration.
Definition: DisplayConfiguration.h:92
dd4hep::MCParticleCreator::addCompoundLight
void addCompoundLight(const std::string &name, TEveLine *e)
Access sub-compound by name.
Definition: ParticleActors.cpp:89
dd4hep::StartVertexCreator
Fill a 3D pointset with particle start vertices.
Definition: ParticleActors.h:66
dd4hep::MCParticleCreator::Compounds
std::map< std::string, TEveCompound * > Compounds
Definition: ParticleActors.h:40
dd4hep::MCParticleCreator::close
void close()
Close compounds.
Definition: ParticleActors.cpp:106
dd4hep::MCParticleCreator::MCParticleCreator
MCParticleCreator(TEveTrackPropagator *p, TEveCompound *ps, const DisplayConfiguration::Config *cfg)
Standard initializing constructor.
Definition: ParticleActors.cpp:49
dd4hep::MCParticleCreator::threshold
double threshold
Definition: ParticleActors.h:44
dd4hep::StartVertexCreator::pointset
TEvePointSet * pointset
Definition: ParticleActors.h:67
dd4hep
Namespace for the AIDA detector description toolkit.
Definition: AlignmentsCalib.h:28
dd4hep::DDEveParticle
Data structure to store the MC particle information.
Definition: DDEveEventData.h:56
dd4hep::MCParticleCreator
Fill eve particles from a MC particle collection.
Definition: ParticleActors.h:39
dd4hep::StartVertexCreator::element
TEveElement * element() const
Return eve element.
Definition: ParticleActors.cpp:202
dd4hep::StartVertexCreator::~StartVertexCreator
virtual ~StartVertexCreator()
Standard destructor.
Definition: ParticleActors.cpp:207