DD4hep - The AIDA detector description toolkit for high energy physics experiments
DD4hep  Rev:Unversioneddirectory
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Namespaces | Classes | Typedefs | Enumerations | Functions
DD4hep::Simulation Namespace Reference

Namespace for the Geant4 based simulation part of the AIDA detector description toolkit. More...

Namespaces

 Geant4GeometryMaps
 Helper namespace defining data types for the relation information between geant4 objects and dd4hep objects.
 
 HepMC
 
 Setup
 Convenience namespace to ease the setupup of DDG4 applications.
 
 Test
 Convenience namespace to separate test classes from the DDG4 simulation toolkit.
 

Classes

class  Geant4GenericSD
 Deprecated: Example G4VSensitiveDetector implementation. More...
 
class  TypeName
 Helper class to handle strings of the format "type/name". More...
 
class  Geant4Action
 Default base class for all Geant 4 actions and derivates thereof. More...
 
class  Geant4ActionContainer
 Class, which allows all Geant4Action to be stored. More...
 
class  Geant4PhaseAction
 Generic action for Geant4 phases. More...
 
class  Geant4ActionPhase
 Action phase definition. Client callback at various stage of the simulation processing. More...
 
class  Geant4AssemblyVolume
 Hack! Wrapper around G4AssemblyVolume to access protected members. More...
 
class  Geant4Call
 Callback interface class with argument. More...
 
class  Geant4Handle
 Handle to Geant4 actions with built-in creation mechanism. More...
 
class  Geant4Run
 User run context for DDG4. More...
 
class  Geant4Event
 User event context for DDG4. More...
 
class  Geant4Context
 Generic context to extend user, run and event information. More...
 
class  Geant4Converter
 Geometry converter from DD4hep to Geant 4. More...
 
class  SimpleRun
 Simple run description structure. Used in the default I/O mechanism. More...
 
class  SimpleEvent
 Simple event description structure. Used in the default I/O mechanism. More...
 
class  DataExtension
 Generic user-extendible data extension class. More...
 
class  Geant4HitData
 Base class for geant4 hit structures used by the default DDG4 sensitive detector implementations. More...
 
class  Geant4Tracker
 Helper class to define structures used by the generic DDG4 tracker sensitive detector. More...
 
class  Geant4Calorimeter
 Helper class to define structures used by the generic DDG4 calorimeter sensitive detector. More...
 
class  Geant4ConversionHelper
 Helper class for data conversion. More...
 
class  Geant4Conversion
 Data conversion class. More...
 
class  Geant4DataDump
 Class to dump the records of the intrinsic Geant4 event model. More...
 
class  Geant4DetectorConstructionContext
 Geant4 detector construction context definition. More...
 
class  Geant4DetectorConstruction
 Basic implementation of the Geant4 detector construction action. More...
 
class  Geant4DetectorConstructionSequence
 Concrete basic implementation of the Geant4 detector construction sequencer. More...
 
class  Geant4EventAction
 Concrete basic implementation of the Geant4 event action. More...
 
class  Geant4SharedEventAction
 Implementation of the Geant4 shared event action. More...
 
class  Geant4EventActionSequence
 Concrete implementation of the Geant4 event action sequence. More...
 
class  Geant4EventSeed
 
class  Geant4Field
 Mediator class to allow Geant4 accessing magnetic fields defined in DD4hep. More...
 
class  Geant4GDMLDetector
 Class to read Geant4 geometry from GDML file. More...
 
class  Geant4GeneratorAction
 Concrete implementation of the Geant4 generator action base class. More...
 
class  Geant4SharedGeneratorAction
 Implementation of the Geant4 shared generator action. More...
 
class  Geant4GeneratorActionSequence
 Concrete implementation of the Geant4 generator action sequence. More...
 
class  Geant4GeneratorActionInit
 Initialize the Geant4Event objects to host generator and MC truth related information. More...
 
class  Geant4GeneratorWrapper
 Geant4Action to merge several independent interaction to one. More...
 
class  Geant4GeometryInfo
 Concreate class holding the relation information between geant4 objects and dd4hep objects. More...
 
class  KernelHandle
 Handle to Geant4 actions with built-in creation mechanism. More...
 
class  Geant4HierarchyDump
 Helper to dump Geant4 volume hierarchy. More...
 
class  Geant4HitWrapper
 Generic wrapper class for hit structures created in Geant4 sensitive detectors. More...
 
class  Geant4HitCollection
 Generic hit container class using Geant4HitWrapper objects. More...
 
class  PositionCompare
 Specialized hit selector based on the hit's position. More...
 
class  CellIDCompare
 Specialized hit selector based on the hit's cell identifier. More...
 
class  HitCompare
 Deprecated: Base class for hit comparisons. More...
 
class  HitPositionCompare
 Deprecated: Seek the hits of an arbitrary collection for the same position. More...
 
class  Geant4Hit
 Deprecated: basic geant4 hit class for deprecated sensitive detectors. More...
 
class  Geant4TrackerHit
 Deprecated: Geant4 tracker hit class for deprecated sensitive detectors. More...
 
class  Geant4CalorimeterHit
 Deprecated: Geant4 calorimeter hit class for deprecated sensitive detectors. More...
 
class  Geant4EventReader
 Basic geant4 event reader class. This interface/base-class must be implemented by concrete readers. More...
 
class  Geant4InputAction
 Generic input action capable of using the Geant4EventReader class. More...
 
class  Geant4InteractionMerger
 Geant4Action to merge several independent interaction to one. More...
 
class  Geant4InteractionVertexBoost
 Action class to boost the primary vertex (and all outgoing particles) of a single interaction. More...
 
class  Geant4InteractionVertexSmear
 Action class to smear the primary vertex (and all outgoing particles) of a single interaction. More...
 
class  Geant4IsotropeGenerator
 Generate particles isotrop in space around origine (0,0,0) More...
 
class  Geant4Kernel
 Class, which allows all Geant4Action derivatives to access the DDG4 kernel structures. More...
 
class  Geant4Exec
 Main executor steering the Geant4 execution. More...
 
class  Geant4Mapping
 Geometry mapping from DD4hep to Geant 4. More...
 
class  Geant4MonteCarloTruth
 Default Interface class to handle monte carlo truth records. More...
 
class  Geant4DummyTruthHandler
 Void implementation of the Monte-Carlo thruth handler doing nothing at all. More...
 
class  Geant4Output2ROOT
 Class to output Geant4 event data to ROOT files. More...
 
class  Geant4OutputAction
 Base class to output Geant4 event data to persistent media. More...
 
class  ParticleExtension
 Base class to extend the basic particle class used by DDG4 with user information. More...
 
class  Geant4Particle
 Data structure to store the MC particle information. More...
 
class  Geant4ParticleHandle
 Data structure to access derived MC particle information. More...
 
class  Geant4ParticleMap
 Data structure to map particles produced during the generation and the simulation. More...
 
class  Geant4ParticleGenerator
 Generate particles isotrop in space around origine (0,0,0) More...
 
class  Geant4ParticleGun
 Implementation of a particle gun using Geant4Particles. More...
 
class  Geant4ParticleHandler
 Geant4Action to collect the MC particle information. More...
 
class  Geant4ParticlePrint
 Geant4Action to print MC particle information. More...
 
class  Geant4PhysicsConstructor
 Implementation base of a Geant4 physics constructor. More...
 
class  Geant4PhysicsList
 Concrete basic implementation of a Geant4 physics list action. More...
 
class  Geant4PhysicsListActionSequence
 The implementation of the single Geant4 physics list action sequence. More...
 
class  PrimaryExtension
 Base structure to extend primary information with user data. More...
 
class  Geant4PrimaryMap
 Data structure to map primaries to particles. More...
 
class  Geant4PrimaryInteraction
 Class modelling a single interaction with multiple primary vertices and particles. More...
 
class  Geant4PrimaryEvent
 Class modelling a complete primary event with multiple interactions. More...
 
class  Geant4PrimaryHandler
 Geant4Action to convert the particle information to Geant4. More...
 
class  Geant4Random
 Mini interface to THE random generator of the application. More...
 
class  Geant4ReadoutVolumeFilter
 Default base class for all geant 4 tracking actions. More...
 
class  Geant4RunAction
 Concrete basic implementation of the Geant4 run action base class. More...
 
class  Geant4SharedRunAction
 Implementation of the Geant4 shared run action. More...
 
class  Geant4RunActionSequence
 Concrete basic implementation of the Geant4 run action sequencer. More...
 
class  Geant4ActionSD
 Interface class to access properties of the underlying Geant4 sensitive detector structure. More...
 
class  Geant4Filter
 Base class to construct filters for Geant4 sensitive detectors. More...
 
class  Geant4Sensitive
 The base class for Geant4 sensitive detector actions implemented by users. More...
 
class  Geant4SensDetActionSequence
 The sequencer to host Geant4 sensitive actions called if particles interact with sensitive elements. More...
 
class  Geant4SensDetSequences
 Geant4SensDetSequences: class to access groups of sensitive actions. More...
 
class  Geant4SensitiveAction
 Template class to ease the construction of sensitive detectors using particle template specialization. More...
 
class  Geant4SensitiveDetector
 Deprecated: Example G4VSensitiveDetector implementation. More...
 
class  Geant4StackingAction
 Concrete implementation of the Geant4 stacking action base class. More...
 
class  Geant4SharedStackingAction
 Implementation of the Geant4 shared stacking action. More...
 
class  Geant4StackingActionSequence
 Concrete implementation of the Geant4 stacking action sequence. More...
 
class  Geant4StepHandler
 Helper class to ease the extraction of information from a G4Step object. More...
 
class  Geant4SteppingAction
 Concrete implementation of the Geant4 stepping action sequence. More...
 
class  Geant4SharedSteppingAction
 Implementation of the Geant4 shared stepping action. More...
 
class  Geant4SteppingActionSequence
 Concrete implementation of the Geant4 stepping action sequence. More...
 
class  Geant4TouchableHandler
 Helper class to ease the extraction of information from a G4Touchable object. More...
 
class  Geant4TrackHandler
 Helper class to ease the extraction of information from a G4Track object. More...
 
class  Geant4TrackInformation
 Unused. More...
 
class  Geant4TrackingAction
 Default base class for all geant 4 tracking actions used in DDG4. More...
 
class  Geant4SharedTrackingAction
 Implementation of the Geant4 shared track action. More...
 
class  Geant4TrackingActionSequence
 Concrete implementation of the Geant4 tracking action sequence. More...
 
class  Geant4TrackingPostAction
 Default base class for all geant 4 tracking actions. More...
 
class  Geant4TrackingPreAction
 Default base class for all geant 4 tracking actions. More...
 
class  Geant4UIManager
 Standard UI interface implementation with configuration using property options. More...
 
class  Geant4UIMessenger
 Generic implementation to export properties and actions to the Geant4 command prompt. More...
 
class  Geant4UserInitialization
 Base class to initialize a multi-threaded or single threaded Geant4 application. More...
 
class  Geant4UserInitializationSequence
 Class to orchestrate a modular initializion of a multi- or single threaded Geant4 application. More...
 
class  Geant4UserParticleHandler
 Geant4ParticleHandler user extension action called by the particle handler. More...
 
class  VertexExtension
 Base class to extend the basic vertex class used by DDG4 with user information. More...
 
class  Geant4Vertex
 Data structure to store the MC vertex information. More...
 
class  Geant4VolumeManager
 The Geant4VolumeManager to facilitate optimized lookups of cell IDs from touchables. More...
 
class  SequenceHdl
 Sequence handler implementing common actions to all sequences. More...
 
class  Geant4UserRunAction
 Concrete implementation of the Geant4 run action. More...
 
class  Geant4UserEventAction
 Concrete implementation of the Geant4 event action. More...
 
class  Geant4UserTrackingAction
 Concrete implementation of the Geant4 tracking action. More...
 
class  Geant4UserStackingAction
 Concrete implementation of the Geant4 stacking action sequence. More...
 
class  Geant4UserGeneratorAction
 Concrete implementation of the Geant4 generator action. More...
 
class  Geant4UserSteppingAction
 Concrete implementation of the Geant4 stepping action. More...
 
class  Geant4UserDetectorConstruction
 Concrete implementation of the Geant4 user detector construction action sequence. More...
 
class  Geant4UserActionInitialization
 Concrete implementation of the Geant4 user initialization action sequence. More...
 
class  Geant4DefaultRangeCut
 Geant4 physics list action to set global range cuts for secondary productions. More...
 
class  Geant4DetectorGeometryConstruction
 Class to create Geant4 detector geometry from TGeo representation in memory. More...
 
class  Geant4DetectorSensitivesConstruction
 Class to create Geant4 detector geometry from TGeo representation in memory. More...
 
class  Geant4EscapeCounter
 Class to measure the energy of escaping tracks. More...
 
class  Geant4EventReaderHepEvt
 Class to populate Geant4 primaries from StdHep files. More...
 
class  Geant4EventReaderHepMC
 Class to populate Geant4 primaries from StdHep files. More...
 
class  Geant4ExtraParticles
 
struct  Geant4FieldTrackingSetup
 Generic Setup component to perform the magnetic field tracking in Geant4. More...
 
class  Geant4FieldTrackingSetupAction
 Phase action to perform the setup of the Geant4 tracking in magnetic fields. More...
 
class  Geant4FieldTrackingConstruction
 Detector construction action to perform the setup of the Geant4 tracking in magnetic fields. More...
 
class  Geant4MaterialScanner
 Class to perform directional material scans using Geantinos. More...
 
struct  Geant4OpticalCalorimeter
 
struct  Geant4ScintillatorCalorimeter
 
struct  TrackerCombine
 
class  RefCountedSequence
 Private helper to support sequence reference counting. More...
 
class  Geant4SensDet
 Concrete implementation of the G4VSensitiveDetector calling the registered sequence object. More...
 
struct  ParticleFilter
 Geant4 sensitive detector filter base class for particle filters. More...
 
struct  ParticleRejectFilter
 Geant4 sensitive detector filter implementing a particle rejector. More...
 
struct  ParticleSelectFilter
 Geant4 sensitive detector filter implementing a particle selector. More...
 
struct  GeantinoRejectFilter
 Geant4 sensitive detector filter implementing a Geantino rejector. More...
 
struct  EnergyDepositMinimumCut
 Geant4 sensitive detector filter implementing an energy cut. More...
 
class  Geant4TCUserParticleHandler
 Rejects to keep particles, which are created outside a tracking cylinder. More...
 
struct  TrackerWeighted
 
class  Geant4Output2LCIO
 Base class to output Geant4 event data to media. More...
 
class  LCIOEventReader
 Base class to read lcio files. More...
 
class  LCIOFileReader
 Base class to read lcio event files. More...
 
class  LCIOStdHepReader
 Base class to read StdHep files with lcio. More...
 

Typedefs

typedef Position Direction
 
typedef Position Momentum
 
typedef ROOT::Math::XYZVector Position
 
typedef Geant4HitData SimpleHit
 Backward compatibility definitions. More...
 
typedef Geant4Tracker SimpleTracker
 
typedef Geant4Calorimeter SimpleCalorimeter
 
typedef Geant4HitData::Contribution HitContribution
 
typedef Geant4TestSensitive Geant4TestSensitiveTracker
 
typedef Geant4TestSensitive Geant4TestSensitiveCalorimeter
 
typedef Geant4SensitiveAction
< Geant4Tracker
Geant4TrackerAction
 
typedef Geant4SensitiveAction
< Geant4Calorimeter
Geant4CalorimeterAction
 
typedef Geant4SensitiveAction
< Geant4OpticalCalorimeter
Geant4OpticalCalorimeterAction
 
typedef Geant4SensitiveAction
< Geant4ScintillatorCalorimeter
Geant4ScintillatorCalorimeterAction
 
typedef Geant4SensitiveAction
< TrackerCombine
Geant4TrackerCombineAction
 
typedef Geant4TrackerAction Geant4SimpleTrackerAction
 
typedef Geant4CalorimeterAction Geant4SimpleCalorimeterAction
 
typedef
Geant4OpticalCalorimeterAction 
Geant4SimpleOpticalCalorimeterAction
 
typedef Geant4SensitiveAction
< TrackerWeighted
Geant4TrackerWeightedAction
 
typedef Geometry::VolumeManager VolMgr
 
typedef Geometry::IDDescriptor IDDescriptor
 
typedef pair< const
Geant4Context
*, G4VHitsCollection * > 
RAW_CONVERSION_ARGS
 
typedef pair< const
Geant4Context
*, Geant4HitCollection * > 
CONVERSION_ARGS
 
typedef Geant4InputAction LCIOInputAction
 

Enumerations

enum  Geant4ParticleProperties {
  G4PARTICLE_CREATED_HIT = 1<<1, G4PARTICLE_PRIMARY = 1<<2, G4PARTICLE_HAS_SECONDARIES = 1<<3, G4PARTICLE_ABOVE_ENERGY_THRESHOLD = 1<<4,
  G4PARTICLE_KEEP_PROCESS = 1<<5, G4PARTICLE_KEEP_PARENT = 1<<6, G4PARTICLE_CREATED_CALORIMETER_HIT = 1<<7, G4PARTICLE_CREATED_TRACKER_HIT = 1<<8,
  G4PARTICLE_KEEP_USER = 1<<9, G4PARTICLE_KEEP_ALWAYS = 1<<10, G4PARTICLE_FORCE_KILL = 1<<11, G4PARTICLE_GEN_EMPTY = 1<<0,
  G4PARTICLE_GEN_STABLE = 1<<1, G4PARTICLE_GEN_DECAYED = 1<<2, G4PARTICLE_GEN_DOCUMENTATION = 1<<3, G4PARTICLE_GEN_GENERATOR,
  G4PARTICLE_GEN_STATUS = 0x3FF, G4PARTICLE_SIM_CREATED = 1<<10, G4PARTICLE_SIM_BACKSCATTER = 1<<11, G4PARTICLE_SIM_DECAY_CALO = 1<<12,
  G4PARTICLE_SIM_DECAY_TRACKER = 1<<13, G4PARTICLE_SIM_STOPPED = 1<<14, G4PARTICLE_SIM_LEFT_DETECTOR = 1<<15, G4PARTICLE_SIM_PARENT_RADIATED = 1<<16,
  G4PARTICLE_SIM_OVERLAY = 1<<17, G4PARTICLE_LAST_NOTHING = 1<<31
}
 Track properties. More...
 
enum  { SENSITIVE, ACTION, FILTER }
 

Functions

template<typename TO , typename FROM >
TO fast_cast (FROM from)
 Cast operator. More...
 
unsigned jenkins_hash (unsigned char *k, unsigned length, unsigned initval)
 
unsigned int hash (unsigned int initialSeed, unsigned int eventNumber, unsigned int runNumber)
 calculate hash from initialSeed, eventID and runID More...
 
Geant4VertexcreatePrimary (const G4PrimaryVertex *g4)
 Create a vertex object from it's G4 counterpart. More...
 
Geant4ParticlecreatePrimary (int particle_id, const Geant4Vertex *v, const G4PrimaryParticle *g4p)
 Create a particle object from it's G4 counterpart. More...
 
Geant4PrimaryInteractioncreatePrimary (int mask, Geant4PrimaryMap *pm, const G4PrimaryVertex *gv)
 Create a DDG4 interaction record from a Geant4 interaction defined by a primary vertex. More...
 
int generationInitialization (const Geant4Action *caller, const Geant4Context *context)
 Initialize the generation of one event. More...
 
int mergeInteractions (const Geant4Action *caller, const Geant4Context *context)
 Merge all interactions present in the context. More...
 
int boostInteraction (const Geant4Action *caller, Geant4PrimaryEvent::Interaction *inter, double alpha)
 Boost particles of one interaction identified by its mask. More...
 
int smearInteraction (const Geant4Action *caller, Geant4PrimaryEvent::Interaction *inter, double dx, double dy, double dz, double dt)
 Smear the primary vertex of an interaction. More...
 
int generatePrimaries (const Geant4Action *caller, const Geant4Context *context, G4Event *event)
 Generate all primary vertices corresponding to the merged interaction. More...
 
template<typename TYPE >
static TYPE * checked_value (TYPE *p)
 
template<typename TYPE >
TYPE * _create_object (Geant4Kernel &kernel, const TypeName &typ)
 
template<typename TYPE , typename CONT >
TYPE * _create_share (Geant4Kernel &kernel, CONT &(Geant4ActionContainer::*pmf)(), const string &type_name, const string &shared_typ, bool shared, TYPE *)
 
template<typename TYPE , typename PTR >
TYPE * _action (PTR *in)
 Action cast. More...
 
template<typename T >
static void installMessenger (const T &handle)
 Install Geant4 mesenger to action objects. More...
 
template<typename T >
static void _setAttributes (const T &handle, xml_h &e)
 Set the properties of a Geant4 Action object from XML object attributes. More...
 
template<typename T >
static void _setProperties (const T &handle, xml_h &e)
 Set the properties of a Geant4 Action object from <properties/> XML subsection. More...
 
static Action _convertSensitive (lcdd_t &lcdd, xml_h e, const string &detector)
 Create/Configure Geant4 sensitive action object from XML. More...
 
static Action _convertAction (lcdd_t &lcdd, xml_h e)
 Create/Configure Action object from XML. More...
 
Action _createAction (lcdd_t &lcdd, xml_h a, const string &seqType, int what)
 Create/Configure Action object from XML. More...
 
template<typename T >
lcio::LCCollectionVec * moveEntries (Geant4HitCollection *coll, lcio::LCCollectionVec *lc_coll)
 

Detailed Description

Namespace for the Geant4 based simulation part of the AIDA detector description toolkit.

Typedef Documentation

Definition at line 299 of file LCIOConversions.cpp.

typedef ROOT::Math::XYZVector DD4hep::Simulation::Direction

Definition at line 35 of file Defs.h.

Definition at line 154 of file Geant4SDActions.cpp.

Definition at line 216 of file Geant4SDActions.cpp.

Definition at line 292 of file Geant4SDActions.cpp.

Definition at line 485 of file Geant4SDActions.cpp.

Definition at line 486 of file Geant4SDActions.cpp.

Definition at line 484 of file Geant4SDActions.cpp.

Definition at line 136 of file Geant4Factories.cpp.

Definition at line 135 of file Geant4Factories.cpp.

Definition at line 83 of file Geant4SDActions.cpp.

Definition at line 482 of file Geant4SDActions.cpp.

Definition at line 413 of file Geant4TrackerWeightedSD.cpp.

Definition at line 113 of file Geant4SensDetAction.inl.

Definition at line 70 of file LCIOConversions.cpp.

Definition at line 35 of file LCIOEventReader.cpp.

Definition at line 36 of file Defs.h.

typedef ROOT::Math::XYZVector DD4hep::Simulation::Position

Definition at line 37 of file Geant4Data.h.

Definition at line 298 of file LCIOConversions.cpp.

Definition at line 294 of file Geant4Data.h.

Backward compatibility definitions.

Definition at line 292 of file Geant4Data.h.

Definition at line 293 of file Geant4Data.h.

Definition at line 69 of file LCIOConversions.cpp.

Enumeration Type Documentation

anonymous enum
Enumerator
SENSITIVE 
ACTION 
FILTER 

Definition at line 116 of file Geant4XMLSetup.cpp.

Track properties.

Enumerator
G4PARTICLE_CREATED_HIT 
G4PARTICLE_PRIMARY 
G4PARTICLE_HAS_SECONDARIES 
G4PARTICLE_ABOVE_ENERGY_THRESHOLD 
G4PARTICLE_KEEP_PROCESS 
G4PARTICLE_KEEP_PARENT 
G4PARTICLE_CREATED_CALORIMETER_HIT 
G4PARTICLE_CREATED_TRACKER_HIT 
G4PARTICLE_KEEP_USER 
G4PARTICLE_KEEP_ALWAYS 
G4PARTICLE_FORCE_KILL 
G4PARTICLE_GEN_EMPTY 
G4PARTICLE_GEN_STABLE 
G4PARTICLE_GEN_DECAYED 
G4PARTICLE_GEN_DOCUMENTATION 
G4PARTICLE_GEN_GENERATOR 
G4PARTICLE_GEN_STATUS 
G4PARTICLE_SIM_CREATED 
G4PARTICLE_SIM_BACKSCATTER 
G4PARTICLE_SIM_DECAY_CALO 
G4PARTICLE_SIM_DECAY_TRACKER 
G4PARTICLE_SIM_STOPPED 
G4PARTICLE_SIM_LEFT_DETECTOR 
G4PARTICLE_SIM_PARENT_RADIATED 
G4PARTICLE_SIM_OVERLAY 
G4PARTICLE_LAST_NOTHING 

Definition at line 56 of file Geant4Particle.h.

Function Documentation

template<typename TYPE , typename PTR >
TYPE* DD4hep::Simulation::_action ( PTR *  in)

Action cast.

Definition at line 42 of file Geant4XMLSetup.cpp.

static Action DD4hep::Simulation::_convertAction ( lcdd_t lcdd,
xml_h  e 
)
static
static Action DD4hep::Simulation::_convertSensitive ( lcdd_t lcdd,
xml_h  e,
const string &  detector 
)
static
template<typename TYPE >
TYPE* DD4hep::Simulation::_create_object ( Geant4Kernel kernel,
const TypeName typ 
)
template<typename TYPE , typename CONT >
TYPE* DD4hep::Simulation::_create_share ( Geant4Kernel kernel,
CONT &(Geant4ActionContainer::*)()  pmf,
const string &  type_name,
const string &  shared_typ,
bool  shared,
TYPE *   
)
Action DD4hep::Simulation::_createAction ( lcdd_t lcdd,
xml_h  a,
const string &  seqType,
int  what 
)
template<typename T >
static void DD4hep::Simulation::_setAttributes ( const T handle,
xml_h e 
)
static

Set the properties of a Geant4 Action object from XML object attributes.

Definition at line 52 of file Geant4XMLSetup.cpp.

References DD4hep::XML::_toString(), DD4hep::XML::Handle_t::attr(), DD4hep::XML::Handle_t::attr_name(), and DD4hep::XML::Handle_t::attributes().

Referenced by _setProperties(), and DD4hep::Converter< T, ARG >::operator()().

template<typename T >
static void DD4hep::Simulation::_setProperties ( const T handle,
xml_h e 
)
static

Set the properties of a Geant4 Action object from <properties/> XML subsection.

Definition at line 63 of file Geant4XMLSetup.cpp.

References _setAttributes(), _Unicode, DD4hep::XML::Handle_t::attr(), DD4hep::XML::Element::child(), and DD4hep::XML::Element::hasAttr().

Referenced by _convertAction(), and _convertSensitive().

int DD4hep::Simulation::boostInteraction ( const Geant4Action caller,
Geant4PrimaryEvent::Interaction inter,
double  alpha 
)
template<typename TYPE >
static TYPE* DD4hep::Simulation::checked_value ( TYPE *  p)
inlinestatic
Geant4Vertex * DD4hep::Simulation::createPrimary ( const G4PrimaryVertex *  g4)

Create a vertex object from it's G4 counterpart.

Create a vertex object from the Geant4 primary vertex.

Helpers to import and export G4 records

Definition at line 41 of file Geant4InputHandling.cpp.

References DD4hep::Simulation::Geant4Vertex::time, v, DD4hep::Simulation::Geant4Vertex::x, DD4hep::Simulation::Geant4Vertex::y, and DD4hep::Simulation::Geant4Vertex::z.

Referenced by collectPrimaries(), createPrimary(), and DD4hep::Simulation::Geant4GeneratorWrapper::operator()().

Geant4Particle * DD4hep::Simulation::createPrimary ( int  particle_id,
const Geant4Vertex v,
const G4PrimaryParticle *  g4p 
)
Geant4PrimaryInteraction * DD4hep::Simulation::createPrimary ( int  mask,
Geant4PrimaryMap pm,
const G4PrimaryVertex *  gv 
)

Create a DDG4 interaction record from a Geant4 interaction defined by a primary vertex.

Import a Geant4 interaction defined by a primary vertex into a DDG4 interaction record.

Definition at line 120 of file Geant4InputHandling.cpp.

References collectPrimaries(), createPrimary(), DD4hep::Simulation::Geant4PrimaryInteraction::locked, DD4hep::Simulation::Geant4Vertex::mask, DD4hep::Simulation::Geant4PrimaryInteraction::mask, v, and DD4hep::Simulation::Geant4PrimaryInteraction::vertices.

template<typename TO , typename FROM >
TO DD4hep::Simulation::fast_cast ( FROM  from)

Cast operator.

Definition at line 48 of file Geant4Action.h.

int DD4hep::Simulation::generatePrimaries ( const Geant4Action caller,
const Geant4Context context,
G4Event *  event 
)
int DD4hep::Simulation::generationInitialization ( const Geant4Action caller,
const Geant4Context context 
)

Initialize the generation of one event.

This action should register all event extension required for the further processing. We want to avoid that every client has to check if a given object is present or not and then later install the required data structures.

Definition at line 137 of file Geant4InputHandling.cpp.

References DD4hep::Simulation::Geant4Event::addExtension(), DD4hep::Simulation::Geant4Context::event(), and DD4hep::Simulation::Geant4PrimaryInteraction::setNextPID().

Referenced by DD4hep::Simulation::Geant4GeneratorActionInit::operator()(), and DD4hep::Simulation::Geant4ParticleGun::operator()().

unsigned int DD4hep::Simulation::hash ( unsigned int  initialSeed,
unsigned int  eventNumber,
unsigned int  runNumber 
)
template<typename T >
static void DD4hep::Simulation::installMessenger ( const T handle)
static

Install Geant4 mesenger to action objects.

Definition at line 47 of file Geant4XMLSetup.cpp.

Referenced by _convertAction(), _convertSensitive(), and DD4hep::Converter< T, ARG >::operator()().

unsigned DD4hep::Simulation::jenkins_hash ( unsigned char *  k,
unsigned  length,
unsigned  initval 
)

Definition at line 140 of file Geant4EventSeed.h.

References mix.

Referenced by hash().

int DD4hep::Simulation::mergeInteractions ( const Geant4Action caller,
const Geant4Context context 
)
template<typename T >
lcio::LCCollectionVec* DD4hep::Simulation::moveEntries ( Geant4HitCollection *  coll,
lcio::LCCollectionVec *  lc_coll 
)
int DD4hep::Simulation::smearInteraction ( const Geant4Action caller,
Geant4PrimaryEvent::Interaction inter,
double  dx,
double  dy,
double  dz,
double  dt 
)