BDSIM
BDSIM is a Geant4 extension toolkit for simulation of particle transport in accelerator beamlines.
Loading...
Searching...
No Matches
BDSVisManager.hh
1/*
2Beam Delivery Simulation (BDSIM) Copyright (C) Royal Holloway,
3University of London 2001 - 2024.
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 BDSVISMANAGER_H
20#define BDSVISMANAGER_H
21
22#include "G4String.hh"
23#include "G4Types.hh"
24
26class BDSMessenger;
27class G4UIsession;
28class G4VisManager;
29
38{
39public:
40 BDSVisManager(const G4String& visMacroFileNameIn,
41 const G4String& geant4MacroFileNameIn,
42 const BDSDetectorConstruction* realWorldIn = nullptr,
43 G4int visVerbosity = 0);
44
46
48 void StartSession(int argc, char** argv);
49
50private:
51 G4UIsession* uiSession;
52 G4VisManager* visManager;
53 BDSMessenger* bdsMessenger;
56};
57
58#endif
59
Class that constructs a Geant4 model of an accelerator.
User interface commands.
The BDS Visualisation Manager.
G4String visMacroFileName
Full macro file path to run for visualisation.
G4String geant4MacroFileName
Full macro file path for optional macro to run afterwards.
void StartSession(int argc, char **argv)
Start interactive mode.