Geant4
11.2.2
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
G4DCtable.cc
Go to the documentation of this file.
1
//
2
// ********************************************************************
3
// * License and Disclaimer *
4
// * *
5
// * The Geant4 software is copyright of the Copyright Holders of *
6
// * the Geant4 Collaboration. It is provided under the terms and *
7
// * conditions of the Geant4 Software License, included in the file *
8
// * LICENSE and available at http://cern.ch/geant4/license . These *
9
// * include a list of copyright holders. *
10
// * *
11
// * Neither the authors of this software system, nor their employing *
12
// * institutes,nor the agencies providing financial support for this *
13
// * work make any representation or warranty, express or implied, *
14
// * regarding this software system or assume any liability for its *
15
// * use. Please see the license in the file LICENSE and URL above *
16
// * for the full disclaimer and the limitation of liability. *
17
// * *
18
// * This code implementation is the result of the scientific and *
19
// * technical work of the GEANT4 collaboration. *
20
// * By using, copying, modifying or distributing the software (or *
21
// * any work based on the software) you agree to acknowledge its *
22
// * use in resulting scientific publications, and indicate your *
23
// * acceptance of all terms of the Geant4 Software license. *
24
// ********************************************************************
25
//
26
//
27
//
28
29
#include "
G4DCtable.hh
"
30
#include "
G4VDigitizerModule.hh
"
31
32
G4DCtable::G4DCtable
() {;}
33
34
G4DCtable::~G4DCtable
() {;}
35
36
G4int
G4DCtable::Registor
(
G4String
DMname,
G4String
DCname)
37
{
38
for
(std::size_t i=0; i<DClist.size(); ++i)
39
{
40
if
(DClist[i]==DCname && DMlist[i]==DMname)
return
-1;
41
}
42
DClist.push_back(DCname);
43
DMlist.push_back(DMname);
44
return
(
G4int
)DClist.size();
45
}
46
47
G4int
G4DCtable::GetCollectionID
(
G4String
DCname)
const
48
{
49
G4int
i = -1;
50
if
(DCname.find(
"/"
)==std::string::npos)
// DCname only
51
{
52
for
(std::size_t j=0; j<DClist.size(); ++j)
53
{
54
if
(DClist[j]==DCname)
55
{
56
if
(i>=0)
return
-2;
57
i = (
G4int
)j;
58
}
59
}
60
}
61
else
62
{
63
for
(std::size_t j=0; j<DClist.size(); ++j)
64
{
65
G4String
tgt = DMlist[j];
66
tgt +=
"/"
;
67
tgt += DClist[j];
68
if
(tgt==DCname)
69
{
70
if
(i>=0)
return
-2;
71
i = (
G4int
)j;
72
}
73
}
74
}
75
return
i;
76
}
77
78
G4int
G4DCtable::GetCollectionID
(
G4VDigitizerModule
* aDM)
const
79
{
80
if
(aDM->
GetNumberOfCollections
()<1)
81
{
82
G4cerr
<<
"Digitizer Module <"
<< aDM->
GetName
()
83
<<
"> does not have a registered digits collection."
84
<<
G4endl
;
85
return
-1;
86
}
87
if
(aDM->
GetNumberOfCollections
()>1)
88
{
89
G4cerr
<<
"Digitizer Module <"
<< aDM->
GetName
()
90
<<
"> has more than one registered digits collections."
91
<<
G4endl
;
92
G4cerr
<<
"Candidates are : "
;
93
for
(
G4int
j=0; j<aDM->
GetNumberOfCollections
(); ++j)
94
{
G4cerr
<< aDM->
GetCollectionName
(j) <<
" "
; }
95
G4cerr
<<
G4endl
;
96
return
-1;
97
}
98
for
(std::size_t k=0; k<DMlist.size(); ++k)
99
{
100
if
(DMlist[k]==aDM->
GetName
())
return
(
G4int
)k;
101
}
102
return
-1;
103
}
G4DCtable.hh
G4int
int G4int
Definition
G4Types.hh:85
G4VDigitizerModule.hh
G4cerr
G4GLOB_DLL std::ostream G4cerr
G4endl
#define G4endl
Definition
G4ios.hh:67
G4DCtable::~G4DCtable
~G4DCtable()
Definition
G4DCtable.cc:34
G4DCtable::G4DCtable
G4DCtable()
Definition
G4DCtable.cc:32
G4DCtable::Registor
G4int Registor(G4String SDname, G4String DCname)
Definition
G4DCtable.cc:36
G4DCtable::GetCollectionID
G4int GetCollectionID(G4String DCname) const
Definition
G4DCtable.cc:47
G4String
Definition
G4String.hh:62
G4VDigitizerModule
Definition
G4VDigitizerModule.hh:49
G4VDigitizerModule::GetNumberOfCollections
G4int GetNumberOfCollections() const
Definition
G4VDigitizerModule.hh:69
G4VDigitizerModule::GetName
G4String GetName() const
Definition
G4VDigitizerModule.hh:73
G4VDigitizerModule::GetCollectionName
G4String GetCollectionName(G4int i) const
Definition
G4VDigitizerModule.hh:71
geant4-v11.2.2
source
readout
src
G4DCtable.cc
Generated by
1.12.0