Geant4 VMC Version 6.8
Loading...
Searching...
No Matches
TG4SDManager.h
Go to the documentation of this file.
1#ifndef TG4_SD_MANAGER_H
2#define TG4_SD_MANAGER_H
3
4//------------------------------------------------
5// The Geant4 Virtual Monte Carlo package
6// Copyright (C) 2007 - 2018 Ivana Hrivnacova
7// All rights reserved.
8//
9// For the licensing terms see geant4_vmc/LICENSE.
10// Contact: root-vmc@cern.ch
11//-------------------------------------------------
12
17
19
20#include <globals.hh>
21#include <Rtypes.h>
22
23class TG4SDServices;
25
26class TVirtualMCSensitiveDetector;
27
33
35{
36 public:
39
40 // static methods
41 static TG4SDManager* Instance();
42
43 // methods
44 void Initialize();
46
47 // TVirtualMC methods
48 Int_t VolId(const Text_t* volName) const;
49 const char* VolName(Int_t id) const;
50 Int_t NofVolumes() const;
51 Int_t NofVolDaughters(const char* volName) const;
52 const char* VolDaughterName(const char* volName, Int_t i) const;
53 Int_t VolDaughterCopyNo(const char* volName, Int_t i) const;
54 Int_t VolId2Mate(Int_t volumeId) const;
55
57 const TString& volName, TVirtualMCSensitiveDetector* sd);
58 TVirtualMCSensitiveDetector* GetSensitiveDetector(
59 const TString& volName) const;
60 void SetExclusiveSDScoring(Bool_t exclusiveSDScoring);
61
62 // get methods
64
65 private:
70
71 // static data members
73
74 //
75 // data members
76
79
82
85
87 mutable G4String fNameBuffer;
88};
89
90// inline methods
91
93{
95 return fgInstance;
96}
97
103
104#endif // TG4_SD_MANAGER_H
Definition of the score weight calculator type.
std::function< Double_t(Int_t pdg, Double_t ekin)> TG4ScoreWeightCalculator
Sensitive detector construction.
static TG4SDManager * Instance()
TG4ScoreWeightCalculator fScoreWeightCalculator
score weight calculator
Int_t NofVolDaughters(const char *volName) const
const char * VolDaughterName(const char *volName, Int_t i) const
TVirtualMCSensitiveDetector * GetSensitiveDetector(const TString &volName) const
Int_t NofVolumes() const
void SetSensitiveDetector(const TString &volName, TVirtualMCSensitiveDetector *sd)
void SetExclusiveSDScoring(Bool_t exclusiveSDScoring)
G4String fNameBuffer
buffer for volume name
Int_t VolDaughterCopyNo(const char *volName, Int_t i) const
TG4SDServices * fSDServices
services related with sensitive detectors
const char * VolName(Int_t id) const
TG4SDManager(const TG4SDManager &right)
Not implemented.
void LateInitialize(TG4ScoreWeightCalculator swc)
Int_t VolId(const Text_t *volName) const
TG4SDManager & operator=(const TG4SDManager &right)
Not implemented.
TG4SDConstruction * GetSDConstruction() const
static TG4SDManager * fgInstance
this instance
Int_t VolId2Mate(Int_t volumeId) const
TG4SDConstruction * fSDConstruction
sensitive detectors construction
Sensitive detectors services.