BDSIM
BDSIM is a Geant4 extension toolkit for simulation of particle transport in accelerator beamlines.
BDSScorerInfo.hh
1/*
2Beam Delivery Simulation (BDSIM) Copyright (C) Royal Holloway,
3University of London 2001 - 2022.
4
5This file is part of BDSIM.
6
7BDSIM is free software: you can redistribute it and/or modify
8it under the terms of the GNU General Public License as published
9by the Free Software Foundation version 3 of the License.
10
11BDSIM is distributed in the hope that it will be useful, but
12WITHOUT ANY WARRANTY; without even the implied warranty of
13MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14GNU General Public License for more details.
15
16You should have received a copy of the GNU General Public License
17along with BDSIM. If not, see <http://www.gnu.org/licenses/>.
18*/
19#ifndef BDSSCORERINFO_H
20#define BDSSCORERINFO_H
21
22#include "BDSScorerType.hh"
23
24#include "globals.hh" // geant4 types / globals
25
26#include <vector>
27
28namespace GMAD
29{
30 class Scorer;
31 class ScorerMesh;
32}
33class G4Material;
34class G4ParticleDefinition;
35
46{
47public:
49 BDSScorerInfo() = delete;
50
53 explicit BDSScorerInfo(const GMAD::Scorer& scorer,
54 G4bool upgradeTo3D = false);
55
57 void CheckParticle(G4ParticleDefinition* particleIn,
58 const G4String& nameIn);
59
61 G4String name;
62 G4ParticleDefinition* particle;
63 G4double minimumKineticEnergy;
64 G4double maximumKineticEnergy;
65 G4double minimumTime;
66 G4double maximumTime;
67 G4String filename;
68 G4String pathname;
69 std::vector<G4Material*> materialsToInclude;
70 std::vector<G4Material*> materialsToExclude;
72 G4bool primariesOnly;
73};
74
75#endif
Recipe class for scorer. Checks values.
BDSScorerType scorerType
Scorer type.
G4bool worldVolumeOnly
Which materials to exclude for scoring.
std::vector< G4Material * > materialsToExclude
Which materials to include for scoring.
G4String name
Scorer name.
G4String filename
Name of the conversion factor file.
G4String pathname
Path of the conversion factor file (for ambient dose)
void CheckParticle(G4ParticleDefinition *particleIn, const G4String &nameIn)
Utility function to check valid pointer and throw exception if not.
BDSScorerInfo()=delete
No default constructor as unused.
G4ParticleDefinition * particle
Particle filter.
Scorer class for parser.
Definition: scorer.h:37
Parser namespace for GMAD language. Combination of Geant4 and MAD.