Geant4 Cross Reference

Cross-Referencing   Geant4
Geant4/visualization/HepRep/src/G4HepRepMessenger.cc

Version: [ ReleaseNotes ] [ 1.0 ] [ 1.1 ] [ 2.0 ] [ 3.0 ] [ 3.1 ] [ 3.2 ] [ 4.0 ] [ 4.0.p1 ] [ 4.0.p2 ] [ 4.1 ] [ 4.1.p1 ] [ 5.0 ] [ 5.0.p1 ] [ 5.1 ] [ 5.1.p1 ] [ 5.2 ] [ 5.2.p1 ] [ 5.2.p2 ] [ 6.0 ] [ 6.0.p1 ] [ 6.1 ] [ 6.2 ] [ 6.2.p1 ] [ 6.2.p2 ] [ 7.0 ] [ 7.0.p1 ] [ 7.1 ] [ 7.1.p1 ] [ 8.0 ] [ 8.0.p1 ] [ 8.1 ] [ 8.1.p1 ] [ 8.1.p2 ] [ 8.2 ] [ 8.2.p1 ] [ 8.3 ] [ 8.3.p1 ] [ 8.3.p2 ] [ 9.0 ] [ 9.0.p1 ] [ 9.0.p2 ] [ 9.1 ] [ 9.1.p1 ] [ 9.1.p2 ] [ 9.1.p3 ] [ 9.2 ] [ 9.2.p1 ] [ 9.2.p2 ] [ 9.2.p3 ] [ 9.2.p4 ] [ 9.3 ] [ 9.3.p1 ] [ 9.3.p2 ] [ 9.4 ] [ 9.4.p1 ] [ 9.4.p2 ] [ 9.4.p3 ] [ 9.4.p4 ] [ 9.5 ] [ 9.5.p1 ] [ 9.5.p2 ] [ 9.6 ] [ 9.6.p1 ] [ 9.6.p2 ] [ 9.6.p3 ] [ 9.6.p4 ] [ 10.0 ] [ 10.0.p1 ] [ 10.0.p2 ] [ 10.0.p3 ] [ 10.0.p4 ] [ 10.1 ] [ 10.1.p1 ] [ 10.1.p2 ] [ 10.1.p3 ] [ 10.2 ] [ 10.2.p1 ] [ 10.2.p2 ] [ 10.2.p3 ] [ 10.3 ] [ 10.3.p1 ] [ 10.3.p2 ] [ 10.3.p3 ] [ 10.4 ] [ 10.4.p1 ] [ 10.4.p2 ] [ 10.4.p3 ] [ 10.5 ] [ 10.5.p1 ] [ 10.6 ] [ 10.6.p1 ] [ 10.6.p2 ] [ 10.6.p3 ] [ 10.7 ] [ 10.7.p1 ] [ 10.7.p2 ] [ 10.7.p3 ] [ 10.7.p4 ] [ 11.0 ] [ 11.0.p1 ] [ 11.0.p2 ] [ 11.0.p3, ] [ 11.0.p4 ] [ 11.1 ] [ 11.1.1 ] [ 11.1.2 ] [ 11.1.3 ] [ 11.2 ] [ 11.2.1 ] [ 11.2.2 ] [ 11.3.0 ]

Diff markup

Differences between /visualization/HepRep/src/G4HepRepMessenger.cc (Version 11.3.0) and /visualization/HepRep/src/G4HepRepMessenger.cc (Version 10.3.p1)


  1 //                                                  1 //
  2 // *******************************************      2 // ********************************************************************
  3 // * License and Disclaimer                         3 // * License and Disclaimer                                           *
  4 // *                                                4 // *                                                                  *
  5 // * The  Geant4 software  is  copyright of th      5 // * The  Geant4 software  is  copyright of the Copyright Holders  of *
  6 // * the Geant4 Collaboration.  It is provided      6 // * the Geant4 Collaboration.  It is provided  under  the terms  and *
  7 // * conditions of the Geant4 Software License      7 // * conditions of the Geant4 Software License,  included in the file *
  8 // * LICENSE and available at  http://cern.ch/      8 // * LICENSE and available at  http://cern.ch/geant4/license .  These *
  9 // * include a list of copyright holders.           9 // * include a list of copyright holders.                             *
 10 // *                                               10 // *                                                                  *
 11 // * Neither the authors of this software syst     11 // * Neither the authors of this software system, nor their employing *
 12 // * institutes,nor the agencies providing fin     12 // * institutes,nor the agencies providing financial support for this *
 13 // * work  make  any representation or  warran     13 // * work  make  any representation or  warranty, express or implied, *
 14 // * regarding  this  software system or assum     14 // * regarding  this  software system or assume any liability for its *
 15 // * use.  Please see the license in the file      15 // * use.  Please see the license in the file  LICENSE  and URL above *
 16 // * for the full disclaimer and the limitatio     16 // * for the full disclaimer and the limitation of liability.         *
 17 // *                                               17 // *                                                                  *
 18 // * This  code  implementation is the result      18 // * This  code  implementation is the result of  the  scientific and *
 19 // * technical work of the GEANT4 collaboratio     19 // * technical work of the GEANT4 collaboration.                      *
 20 // * By using,  copying,  modifying or  distri     20 // * By using,  copying,  modifying or  distributing the software (or *
 21 // * any work based  on the software)  you  ag     21 // * any work based  on the software)  you  agree  to acknowledge its *
 22 // * use  in  resulting  scientific  publicati     22 // * use  in  resulting  scientific  publications,  and indicate your *
 23 // * acceptance of all terms of the Geant4 Sof     23 // * acceptance of all terms of the Geant4 Software license.          *
 24 // *******************************************     24 // ********************************************************************
 25 //                                                 25 //
                                                   >>  26 // $Id: G4HepRepMessenger.cc 66870 2013-01-14 23:38:59Z adotti $
 26 //                                                 27 //
 27 #include "G4HepRepMessenger.hh"                    28 #include "G4HepRepMessenger.hh"
 28                                                    29 
 29 G4HepRepMessenger* G4HepRepMessenger::fpInstan <<  30 G4HepRepMessenger*
                                                   >>  31 G4HepRepMessenger::fpInstance = 0;
 30                                                    32 
 31 G4HepRepMessenger* G4HepRepMessenger::GetInsta <<  33 G4HepRepMessenger*
                                                   >>  34 G4HepRepMessenger::GetInstance()
 32 {                                                  35 {
 33   if(!fpInstance)                              <<  36   if (!fpInstance) fpInstance = new G4HepRepMessenger;
 34     fpInstance = new G4HepRepMessenger;        <<  37   return fpInstance;
 35   return fpInstance;                           <<  38 }
 36 }                                              << 
 37                                                << 
 38 G4HepRepMessenger::G4HepRepMessenger()         << 
 39   : fileDir("")                                << 
 40   , fileName("G4Data")                         << 
 41   , overwrite(false)                           << 
 42   , cullInvisibles(false)                      << 
 43   , cylAsPolygons(false)                       << 
 44   , scale(1.)                                  << 
 45   , suffix("")                                 << 
 46   , geometry(true)                             << 
 47   , pointAttributes(false)                     << 
 48   , solids(true)                               << 
 49   , invisibles(true)                           << 
 50 {                                              << 
 51   heprepDirectory = new G4UIdirectory("/vis/he << 
 52   heprepDirectory->SetGuidance("HepRep command << 
 53                                                    39 
 54   setFileDirCommand = new G4UIcmdWithAString(" <<  40 G4HepRepMessenger::G4HepRepMessenger() :
 55   setFileDirCommand->SetGuidance("Set director <<  41     fileDir(""),
 56   setFileDirCommand->SetGuidance(              <<  42   fileName("G4Data"),
 57     "This command is used by HepRepFile, not b <<  43   overwrite(false),
 58   setFileDirCommand->SetParameterName("directo <<  44   cullInvisibles(false),
 59   if(std::getenv("G4HEPREPFILE_DIR") == NULL)  <<  45   cylAsPolygons(false),
 60   {                                            <<  46   scale(1.),
 61     setFileDirCommand->SetDefaultValue("");    <<  47     suffix (""),
 62   }                                            <<  48     geometry(true),
 63   else                                         <<  49     solids(true),
 64   {                                            <<  50     invisibles(true) {
 65     setFileDirCommand->SetDefaultValue(std::ge <<  51 
 66     fileDir = std::getenv("G4HEPREPFILE_DIR"); <<  52     heprepDirectory = new G4UIdirectory("/vis/heprep/");
 67   }                                            <<  53     heprepDirectory->SetGuidance("HepRep commands.");
 68   setFileDirCommand->AvailableForStates(G4Stat <<  54     
 69                                                <<  55   setFileDirCommand = new G4UIcmdWithAString("/vis/heprep/setFileDir", this);
 70   setFileNameCommand = new G4UIcmdWithAString( <<  56   setFileDirCommand->SetGuidance("Set directory for output.");
 71   setFileNameCommand->SetGuidance("Set file na <<  57   setFileDirCommand->SetGuidance("This command is used by HepRepFile, not by HepRepXML.");
 72   setFileNameCommand->SetGuidance(             <<  58   setFileDirCommand->SetParameterName("directory",false);
 73     "This command is used by HepRepFile, not b <<  59   if ( getenv( "G4HEPREPFILE_DIR" ) == NULL ) {
 74   setFileNameCommand->SetParameterName("direct <<  60     setFileDirCommand->SetDefaultValue("");
 75   if(std::getenv("G4HEPREPFILE_NAME") == NULL) <<  61   } else {
 76   {                                            <<  62     setFileDirCommand->SetDefaultValue(getenv("G4HEPREPFILE_DIR"));
 77     setFileNameCommand->SetDefaultValue("G4Dat <<  63     fileDir = getenv("G4HEPREPFILE_DIR");
 78   }                                            <<  64   }
 79   else                                         <<  65   setFileDirCommand->AvailableForStates(G4State_Idle);
 80   {                                            <<  66     
 81     setFileNameCommand->SetDefaultValue(std::g <<  67   setFileNameCommand = new G4UIcmdWithAString("/vis/heprep/setFileName", this);
 82     fileName = std::getenv("G4HEPREPFILE_NAME" <<  68   setFileNameCommand->SetGuidance("Set file name for output.");
 83   }                                            <<  69   setFileNameCommand->SetGuidance("This command is used by HepRepFile, not by HepRepXML.");
 84   setFileNameCommand->AvailableForStates(G4Sta <<  70   setFileNameCommand->SetParameterName("directory",false);
 85                                                <<  71   if ( getenv( "G4HEPREPFILE_NAME" ) == NULL ) {
 86   setOverwriteCommand = new G4UIcmdWithABool(" <<  72     setFileNameCommand->SetDefaultValue("G4Data");
 87   setOverwriteCommand->SetGuidance(            <<  73   } else {
 88     "Set true to write all output to exact sam <<  74     setFileNameCommand->SetDefaultValue(getenv("G4HEPREPFILE_NAME"));
 89   setOverwriteCommand->SetGuidance(            <<  75     fileName = getenv("G4HEPREPFILE_NAME");
 90     "Set false to increment the file name for  <<  76   }
 91   setOverwriteCommand->SetGuidance(            <<  77   setFileNameCommand->AvailableForStates(G4State_Idle);
 92     "This command is used by HepRepFile, not b <<  78 
 93   setOverwriteCommand->SetParameterName("flag" <<  79   setOverwriteCommand = new G4UIcmdWithABool("/vis/heprep/setOverwrite", this);
 94   if(std::getenv("G4HEPREPFILE_OVERWRITE") ==  <<  80   setOverwriteCommand->SetGuidance("Set true to write all output to exact same file name.");
 95   {                                            <<  81   setOverwriteCommand->SetGuidance("Set false to increment the file name for each new output.");
 96     setOverwriteCommand->SetDefaultValue(false <<  82   setOverwriteCommand->SetGuidance("This command is used by HepRepFile, not by HepRepXML.");
 97   }                                            <<  83   setOverwriteCommand->SetParameterName("flag",false);
 98   else                                         <<  84   if ( getenv( "G4HEPREPFILE_OVERWRITE" ) == NULL ) {
 99   {                                            <<  85     setOverwriteCommand->SetDefaultValue(false);
100     setOverwriteCommand->SetDefaultValue(std:: <<  86   } else {
101     overwrite =                                <<  87     setOverwriteCommand->SetDefaultValue(getenv("G4HEPREPFILE_OVERWRITE"));
102       setOverwriteCommand->ConvertToBool(std:: <<  88     overwrite = setOverwriteCommand->ConvertToBool(getenv("G4HEPREPFILE_OVERWRITE"));
103   }                                            <<  89   }
104   setOverwriteCommand->AvailableForStates(G4St <<  90   setOverwriteCommand->AvailableForStates(G4State_Idle);
105                                                <<  91     
106   setCullInvisiblesCommand =                   <<  92   setCullInvisiblesCommand = new G4UIcmdWithABool("/vis/heprep/setCullInvisibles", this);
107     new G4UIcmdWithABool("/vis/heprep/setCullI <<  93   setCullInvisiblesCommand->SetGuidance("Remove invisible objects from output file.");
108   setCullInvisiblesCommand->SetGuidance(       <<  94   setCullInvisiblesCommand->SetGuidance("This command is used by HepRepFile, not by HepRepXML.");
109     "Remove invisible objects from output file <<  95   setCullInvisiblesCommand->SetParameterName("flag",false);
110   setCullInvisiblesCommand->SetGuidance(       <<  96   if ( getenv( "G4HEPREPFILE_CULL" ) == NULL ) {
111     "This command is used by HepRepFile, not b <<  97     setCullInvisiblesCommand->SetDefaultValue(false);
112   setCullInvisiblesCommand->SetParameterName(" <<  98   } else {
113   if(std::getenv("G4HEPREPFILE_CULL") == NULL) <<  99     setCullInvisiblesCommand->SetDefaultValue(getenv("G4HEPREPFILE_CULL"));
114   {                                            << 100     cullInvisibles = setCullInvisiblesCommand->ConvertToBool(getenv("G4HEPREPFILE_CULL"));
115     setCullInvisiblesCommand->SetDefaultValue( << 101   }
116   }                                            << 102   setCullInvisiblesCommand->AvailableForStates(G4State_Idle);
117   else                                         << 103     
118   {                                            << 104   renderCylAsPolygonsCommand = new G4UIcmdWithABool("/vis/heprep/renderCylAsPolygons", this);
119     setCullInvisiblesCommand->SetDefaultValue( << 105   renderCylAsPolygonsCommand->SetGuidance("Render cylinders and cones as polygons.");
120     cullInvisibles =                           << 106   renderCylAsPolygonsCommand->SetGuidance("This command is used by HepRepFile, not by HepRepXML.");
121       setCullInvisiblesCommand->ConvertToBool( << 107   renderCylAsPolygonsCommand->SetParameterName("flag",false);
122   }                                            << 108   renderCylAsPolygonsCommand->SetDefaultValue(false);
123   setCullInvisiblesCommand->AvailableForStates << 109   renderCylAsPolygonsCommand->AvailableForStates(G4State_Idle);
124                                                << 110     
125   renderCylAsPolygonsCommand =                 << 111   setScaleCommand = new G4UIcmdWithADouble("/vis/heprep/scale",this);
126     new G4UIcmdWithABool("/vis/heprep/renderCy << 112   setScaleCommand->SetGuidance("Re-Scale coordinates.");
127   renderCylAsPolygonsCommand->SetGuidance(     << 113   setScaleCommand->SetParameterName("Scale",true);
128     "Render cylinders and cones as polygons.") << 114   setScaleCommand->SetDefaultValue(1.);
129   renderCylAsPolygonsCommand->SetGuidance(     << 115   setScaleCommand->SetRange("Scale > 0");
130     "This command is used by HepRepFile, not b << 116   
131   renderCylAsPolygonsCommand->SetParameterName << 117   setCenterCommand = new G4UIcmdWith3VectorAndUnit("/vis/heprep/center",this);
132   renderCylAsPolygonsCommand->SetDefaultValue( << 118   setCenterCommand->SetGuidance("Re-Center coordinates.");
133   renderCylAsPolygonsCommand->AvailableForStat << 119   setCenterCommand->SetParameterName("CenterX","CenterY","CenterZ",true);
134                                                << 120   setCenterCommand->SetDefaultValue(G4ThreeVector(0.,0.,0.));
135   setScaleCommand = new G4UIcmdWithADouble("/v << 121   setCenterCommand->SetDefaultUnit("m");
136   setScaleCommand->SetGuidance("Re-Scale coord << 122     
137   setScaleCommand->SetParameterName("Scale", t << 123     setEventNumberSuffixCommand = new G4UIcmdWithAString("/vis/heprep/setEventNumberSuffix", this);
138   setScaleCommand->SetDefaultValue(1.);        << 124     setEventNumberSuffixCommand->SetGuidance("Write separate event files, appended with given suffix.");
139   setScaleCommand->SetRange("Scale > 0");      << 125     setEventNumberSuffixCommand->SetGuidance("Define the suffix with a pattern such as '-0000'.");
140                                                << 126   setEventNumberSuffixCommand->SetGuidance("This command is used by HepRepXML, not by HepRepFile.");
141   setCenterCommand = new G4UIcmdWith3VectorAnd << 127     setEventNumberSuffixCommand->SetParameterName("suffix",false);
142   setCenterCommand->SetGuidance("Re-Center coo << 128     setEventNumberSuffixCommand->SetDefaultValue("");
143   setCenterCommand->SetParameterName("CenterX" << 129     setEventNumberSuffixCommand->AvailableForStates(G4State_Idle);
144   setCenterCommand->SetDefaultValue(G4ThreeVec << 130     
145   setCenterCommand->SetDefaultUnit("m");       << 131     appendGeometryCommand = new G4UIcmdWithABool("/vis/heprep/appendGeometry", this);
146                                                << 132     appendGeometryCommand->SetGuidance("Appends copy of geometry to every event.");
147   setEventNumberSuffixCommand =                << 133   appendGeometryCommand->SetGuidance("This command is used by HepRepXML, not by HepRepFile.");
148     new G4UIcmdWithAString("/vis/heprep/setEve << 134     appendGeometryCommand->SetParameterName("flag",false);
149   setEventNumberSuffixCommand->SetGuidance(    << 135     appendGeometryCommand->SetDefaultValue(true);
150     "Write separate event files, appended with << 136     appendGeometryCommand->AvailableForStates(G4State_Idle);
151   setEventNumberSuffixCommand->SetGuidance(    << 137 
152     "Define the suffix with a pattern such as  << 138     addPointAttributesCommand = new G4UIcmdWithABool("/vis/heprep/addPointAttributes", this);
153   setEventNumberSuffixCommand->SetGuidance(    << 139     addPointAttributesCommand->SetGuidance("Adds point attributes to the points of trajectories.");
154     "This command is used by HepRepXML, not by << 140   addPointAttributesCommand->SetGuidance("This command is used by HepRepXML, not by HepRepFile.");
155   setEventNumberSuffixCommand->SetParameterNam << 141     addPointAttributesCommand->SetParameterName("flag",false);
156   setEventNumberSuffixCommand->SetDefaultValue << 142     addPointAttributesCommand->SetDefaultValue(false);
157   setEventNumberSuffixCommand->AvailableForSta << 143     addPointAttributesCommand->AvailableForStates(G4State_Idle);
158                                                << 144     
159   appendGeometryCommand =                      << 145   useSolidsCommand = new G4UIcmdWithABool("/vis/heprep/useSolids", this);
160     new G4UIcmdWithABool("/vis/heprep/appendGe << 146   useSolidsCommand->SetGuidance("Use HepRep Solids, rather than Geant4 Primitives.");
161   appendGeometryCommand->SetGuidance(          << 147   useSolidsCommand->SetGuidance("This command is used by HepRepXML, not by HepRepFile..");
162     "Appends copy of geometry to every event." << 148   useSolidsCommand->SetParameterName("flag",false);
163   appendGeometryCommand->SetGuidance(          << 149   useSolidsCommand->SetDefaultValue(true);
164     "This command is used by HepRepXML, not by << 150   useSolidsCommand->AvailableForStates(G4State_Idle);
165   appendGeometryCommand->SetParameterName("fla << 
166   appendGeometryCommand->SetDefaultValue(true) << 
167   appendGeometryCommand->AvailableForStates(G4 << 
168                                                << 
169   addPointAttributesCommand =                  << 
170     new G4UIcmdWithABool("/vis/heprep/addPoint << 
171   addPointAttributesCommand->SetGuidance(      << 
172     "Adds point attributes to the points of tr << 
173   addPointAttributesCommand->SetGuidance(      << 
174     "This command is used by HepRepXML, not by << 
175   addPointAttributesCommand->SetParameterName( << 
176   addPointAttributesCommand->SetDefaultValue(f << 
177   addPointAttributesCommand->AvailableForState << 
178                                                << 
179   useSolidsCommand = new G4UIcmdWithABool("/vi << 
180   useSolidsCommand->SetGuidance(               << 
181     "Use HepRep Solids, rather than Geant4 Pri << 
182   useSolidsCommand->SetGuidance(               << 
183     "This command is used by HepRepXML, not by << 
184   useSolidsCommand->SetParameterName("flag", f << 
185   useSolidsCommand->SetDefaultValue(true);     << 
186   useSolidsCommand->AvailableForStates(G4State << 
187 }                                                 151 }
188                                                   152 
189 G4HepRepMessenger::~G4HepRepMessenger()        << 153 G4HepRepMessenger::~G4HepRepMessenger() {
190 {                                              << 154   delete setFileDirCommand;
191   delete setFileDirCommand;                    << 155   delete setFileNameCommand;
192   delete setFileNameCommand;                   << 156   delete setOverwriteCommand;
193   delete setOverwriteCommand;                  << 157   delete setCullInvisiblesCommand;
194   delete setCullInvisiblesCommand;             << 158     delete renderCylAsPolygonsCommand;
195   delete renderCylAsPolygonsCommand;           << 159   delete setScaleCommand;
196   delete setScaleCommand;                      << 160   delete setCenterCommand;
197   delete setCenterCommand;                     << 161     delete setEventNumberSuffixCommand;
198   delete setEventNumberSuffixCommand;          << 162     delete appendGeometryCommand;
199   delete appendGeometryCommand;                << 163     delete addPointAttributesCommand;
200   delete addPointAttributesCommand;            << 164     delete useSolidsCommand;
201   delete useSolidsCommand;                     << 165     delete heprepDirectory;
202   delete heprepDirectory;                      << 
203 }                                                 166 }
204                                                   167 
205 G4String G4HepRepMessenger::GetCurrentValue(G4 << 168 G4String G4HepRepMessenger::GetCurrentValue(G4UIcommand * command) {
206 {                                              << 169     if (command==setFileDirCommand) {
207   if(command == setFileDirCommand)             << 170         return fileDir;
208   {                                            << 171     } else if (command==setFileNameCommand) {
                                                   >> 172         return fileName; 
                                                   >> 173     } else if (command==setOverwriteCommand) {
                                                   >> 174         return overwrite; 
                                                   >> 175     } else if (command==setCullInvisiblesCommand) {
                                                   >> 176         return cullInvisibles; 
                                                   >> 177     } else if (command==renderCylAsPolygonsCommand) {
                                                   >> 178         return renderCylAsPolygonsCommand->ConvertToString(cylAsPolygons);
                                                   >> 179     } else if (command==setScaleCommand) {
                                                   >> 180         return setScaleCommand->ConvertToString(scale);
                                                   >> 181     } else if (command==setCenterCommand) {
                                                   >> 182         return setCenterCommand->ConvertToString(center,"m");
                                                   >> 183     } else if (command==setEventNumberSuffixCommand) {
                                                   >> 184         return suffix; 
                                                   >> 185     } else if (command==appendGeometryCommand) {
                                                   >> 186         return appendGeometryCommand->ConvertToString(geometry); 
                                                   >> 187     } else if (command==addPointAttributesCommand) {
                                                   >> 188         return addPointAttributesCommand->ConvertToString(pointAttributes); 
                                                   >> 189     } else if (command==useSolidsCommand) {
                                                   >> 190         return useSolidsCommand->ConvertToString(solids);
                                                   >> 191     } else {
                                                   >> 192         return "";
                                                   >> 193     }
                                                   >> 194 }
                                                   >> 195 
                                                   >> 196 void G4HepRepMessenger::SetNewValue(G4UIcommand * command, G4String newValue) {
                                                   >> 197     if (command==setFileDirCommand) {
                                                   >> 198         fileDir = newValue;
                                                   >> 199     } else if (command==setFileNameCommand) {
                                                   >> 200         fileName = newValue;
                                                   >> 201     } else if (command==setOverwriteCommand) {
                                                   >> 202         overwrite = setOverwriteCommand->GetNewBoolValue(newValue);
                                                   >> 203     } else if (command==setCullInvisiblesCommand) {
                                                   >> 204     cullInvisibles = setCullInvisiblesCommand->GetNewBoolValue(newValue);
                                                   >> 205     } else if (command==renderCylAsPolygonsCommand) {
                                                   >> 206         cylAsPolygons = renderCylAsPolygonsCommand->GetNewBoolValue(newValue);
                                                   >> 207     } else if (command==setScaleCommand) {
                                                   >> 208         scale = setScaleCommand->GetNewDoubleValue(newValue);
                                                   >> 209     } else if (command==setCenterCommand) {
                                                   >> 210         center = setCenterCommand->GetNew3VectorValue(newValue);
                                                   >> 211     } else if (command==setEventNumberSuffixCommand) {
                                                   >> 212         suffix = newValue;
                                                   >> 213     } else if (command==appendGeometryCommand) {
                                                   >> 214         geometry = appendGeometryCommand->GetNewBoolValue(newValue);
                                                   >> 215     } else if (command==addPointAttributesCommand) {
                                                   >> 216         pointAttributes = addPointAttributesCommand->GetNewBoolValue(newValue);
                                                   >> 217     } else if (command==useSolidsCommand) {
                                                   >> 218         solids = useSolidsCommand->GetNewBoolValue(newValue);
                                                   >> 219     } 
                                                   >> 220 }
                                                   >> 221 
                                                   >> 222 G4String G4HepRepMessenger::getFileDir() {
209     return fileDir;                               223     return fileDir;
210   }                                            << 224 }
211   else if(command == setFileNameCommand)       << 225 
212   {                                            << 226 G4String G4HepRepMessenger::getFileName() {
213     return fileName;                              227     return fileName;
214   }                                            << 228 }
215   else if(command == setOverwriteCommand)      << 229 
216   {                                            << 230 G4bool G4HepRepMessenger::getOverwrite() {
217     return G4UIcommand::ConvertToString(overwr << 231     return overwrite;
218   }                                            << 232 }
219   else if(command == setCullInvisiblesCommand) << 233 
220   {                                            << 234 G4bool G4HepRepMessenger::getCullInvisibles() {
221     return G4UIcommand::ConvertToString(cullIn << 235     return cullInvisibles;
222   }                                            << 236 }
223   else if(command == renderCylAsPolygonsComman << 237 
224   {                                            << 238 G4bool G4HepRepMessenger::renderCylAsPolygons() {
225     return renderCylAsPolygonsCommand->Convert << 239     return cylAsPolygons;
226   }                                            << 240 }
227   else if(command == setScaleCommand)          << 241 
228   {                                            << 242 G4double G4HepRepMessenger::getScale() {
229     return setScaleCommand->ConvertToString(sc << 243     return scale;
230   }                                            << 244 }
231   else if(command == setCenterCommand)         << 245 
232   {                                            << 246 G4ThreeVector G4HepRepMessenger::getCenter() {
233     return setCenterCommand->ConvertToString(c << 247     return center;
234   }                                            << 248 }
235   else if(command == setEventNumberSuffixComma << 249 
236   {                                            << 250 G4String G4HepRepMessenger::getEventNumberSuffix() {
237     return suffix;                                251     return suffix;
238   }                                            << 
239   else if(command == appendGeometryCommand)    << 
240   {                                            << 
241     return appendGeometryCommand->ConvertToStr << 
242   }                                            << 
243   else if(command == addPointAttributesCommand << 
244   {                                            << 
245     return addPointAttributesCommand->ConvertT << 
246   }                                            << 
247   else if(command == useSolidsCommand)         << 
248   {                                            << 
249     return useSolidsCommand->ConvertToString(s << 
250   }                                            << 
251   else                                         << 
252   {                                            << 
253     return "";                                 << 
254   }                                            << 
255 }                                                 252 }
256                                                   253 
257 void G4HepRepMessenger::SetNewValue(G4UIcomman << 254 G4bool G4HepRepMessenger::appendGeometry() {
258 {                                              << 255     return geometry;
259   if(command == setFileDirCommand)             << 256 }
260   {                                            << 
261     fileDir = newValue;                        << 
262   }                                            << 
263   else if(command == setFileNameCommand)       << 
264   {                                            << 
265     fileName = newValue;                       << 
266   }                                            << 
267   else if(command == setOverwriteCommand)      << 
268   {                                            << 
269     overwrite = setOverwriteCommand->GetNewBoo << 
270   }                                            << 
271   else if(command == setCullInvisiblesCommand) << 
272   {                                            << 
273     cullInvisibles = setCullInvisiblesCommand- << 
274   }                                            << 
275   else if(command == renderCylAsPolygonsComman << 
276   {                                            << 
277     cylAsPolygons = renderCylAsPolygonsCommand << 
278   }                                            << 
279   else if(command == setScaleCommand)          << 
280   {                                            << 
281     scale = setScaleCommand->GetNewDoubleValue << 
282   }                                            << 
283   else if(command == setCenterCommand)         << 
284   {                                            << 
285     center = setCenterCommand->GetNew3VectorVa << 
286   }                                            << 
287   else if(command == setEventNumberSuffixComma << 
288   {                                            << 
289     suffix = newValue;                         << 
290   }                                            << 
291   else if(command == appendGeometryCommand)    << 
292   {                                            << 
293     geometry = appendGeometryCommand->GetNewBo << 
294   }                                            << 
295   else if(command == addPointAttributesCommand << 
296   {                                            << 
297     pointAttributes = addPointAttributesComman << 
298   }                                            << 
299   else if(command == useSolidsCommand)         << 
300   {                                            << 
301     solids = useSolidsCommand->GetNewBoolValue << 
302   }                                            << 
303 }                                              << 
304                                                << 
305 G4String G4HepRepMessenger::getFileDir() { ret << 
306                                                << 
307 G4String G4HepRepMessenger::getFileName() { re << 
308                                                << 
309 G4bool G4HepRepMessenger::getOverwrite() { ret << 
310                                                << 
311 G4bool G4HepRepMessenger::getCullInvisibles()  << 
312                                                << 
313 G4bool G4HepRepMessenger::renderCylAsPolygons( << 
314                                                << 
315 G4double G4HepRepMessenger::getScale() { retur << 
316                                                << 
317 G4ThreeVector G4HepRepMessenger::getCenter() { << 
318                                                << 
319 G4String G4HepRepMessenger::getEventNumberSuff << 
320                                                   257 
321 G4bool G4HepRepMessenger::appendGeometry() { r << 258 G4bool G4HepRepMessenger::addPointAttributes() {
                                                   >> 259     return pointAttributes;
                                                   >> 260 }
322                                                   261 
323 G4bool G4HepRepMessenger::addPointAttributes() << 262 G4bool G4HepRepMessenger::useSolids() {
                                                   >> 263     return solids;
                                                   >> 264 }
324                                                   265 
325 G4bool G4HepRepMessenger::useSolids() { return << 266 G4bool G4HepRepMessenger::writeInvisibles() {
                                                   >> 267     return invisibles;
                                                   >> 268 }
326                                                   269 
327 G4bool G4HepRepMessenger::writeInvisibles() {  << 
328                                                   270