Geant4 9.6.0
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
G4HepRepMessenger.hh
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// $Id$
27//
28//
29#ifndef G4HepRepMessenger_HH
30#define G4HepRepMessenger_HH 1
31
32#include "G4UImessenger.hh"
33#include "G4UIdirectory.hh"
34#include "G4UIcmdWithABool.hh"
35#include "G4UIcmdWithAString.hh"
36#include "G4UIcmdWithADouble.hh"
38#include "G4UIcommand.hh"
39#include "G4ThreeVector.hh"
40
42
43 public:
44 static G4HepRepMessenger* GetInstance(); // Singleton constructor.
45 virtual ~G4HepRepMessenger();
46
47 virtual G4String GetCurrentValue(G4UIcommand * command);
48 virtual void SetNewValue(G4UIcommand * command, G4String newValue);
49
50 // Used by HepRepFile
51 virtual G4String getFileDir();
52 virtual G4String getFileName();
53 virtual G4bool getOverwrite();
54 virtual G4bool getCullInvisibles();
56 virtual G4double getScale();
57 virtual G4ThreeVector getCenter();
58
59 // Used by HepRepXML
61 virtual G4bool appendGeometry();
62 virtual G4bool addPointAttributes();
63 virtual G4bool useSolids();
64 virtual G4bool writeInvisibles();
65
66 private:
67 G4HepRepMessenger(); // Private constructor.
68 static G4HepRepMessenger* fpInstance;
69
70 G4UIdirectory* heprepDirectory;
71
72 G4String fileDir;
73 G4UIcmdWithAString* setFileDirCommand;
74
75 G4String fileName;
76 G4UIcmdWithAString* setFileNameCommand;
77
78 G4bool overwrite;
79 G4UIcmdWithABool* setOverwriteCommand;
80
81 G4bool cullInvisibles;
82 G4UIcmdWithABool* setCullInvisiblesCommand;
83
84 G4bool cylAsPolygons;
85 G4UIcmdWithABool* renderCylAsPolygonsCommand;
86
87 G4double scale;
88 G4UIcmdWithADouble* setScaleCommand;
89
90 G4ThreeVector center;
91 G4UIcmdWith3VectorAndUnit* setCenterCommand;
92
93 G4String suffix;
94 G4UIcmdWithAString* setEventNumberSuffixCommand;
95
96 G4bool geometry;
97 G4UIcmdWithABool* appendGeometryCommand;
98
99 G4bool pointAttributes;
100 G4UIcmdWithABool* addPointAttributesCommand;
101
102 G4bool solids;
103 G4UIcmdWithABool* useSolidsCommand;
104
105 G4bool invisibles;
106 G4UIcmdWithABool* writeInvisiblesCommand;
107};
108
109#endif
double G4double
Definition: G4Types.hh:64
bool G4bool
Definition: G4Types.hh:67
virtual G4String GetCurrentValue(G4UIcommand *command)
virtual G4bool renderCylAsPolygons()
virtual void SetNewValue(G4UIcommand *command, G4String newValue)
virtual G4String getFileName()
virtual G4bool addPointAttributes()
virtual G4bool writeInvisibles()
virtual G4double getScale()
virtual G4bool useSolids()
virtual G4String getEventNumberSuffix()
virtual G4String getFileDir()
virtual G4bool getCullInvisibles()
virtual G4bool appendGeometry()
virtual G4bool getOverwrite()
static G4HepRepMessenger * GetInstance()
virtual G4ThreeVector getCenter()