Geant4-11
Macros | Functions | Variables
G3toG4.hh File Reference
#include "G3toG4Defs.hh"
#include "globals.hh"
#include "G3G4Interface.hh"

Go to the source code of this file.

Macros

#define PTgsatt   "ssi"
 
#define PTgsdet   "ssiSIiii"
 
#define PTgsdeta   "sssii"
 
#define PTgsdetd   "ssiSI"
 
#define PTgsdeth   "ssiSIRR"
 
#define PTgsdetu   "ssiR"
 
#define PTgsdetv   "ssiii"
 
#define PTgsdk   "iiRI"
 
#define PTgsdvn   "ssii"
 
#define PTgsdvn2   "ssiiri"
 
#define PTgsdvt   "ssriii"
 
#define PTgsdvt2   "ssririi"
 
#define PTgsdvx   "ssiirrii"
 
#define PTgsmate   "isrrrriR"
 
#define PTgsmixt   "isriQ"
 
#define PTgspart   "isirrriR"
 
#define PTgspos   "sisrrris"
 
#define PTgsposp   "sisrrrisiR"
 
#define PTgsrotm   "irrrrrr"
 
#define PTgstmed   "isiiirrrrrriR"
 
#define PTgstpar   "isr"
 
#define PTgsvolu   "ssiiR"
 

Functions

void G3fillParams (G4String *tokens, const char *ptypes)
 

Variables

G3G4DLL_API char gSeparator
 
G3G4DLL_API G4int Ipar [1000]
 
G3G4DLL_API G4double Rpar [1000]
 
G3G4DLL_API G4String Spar [1000]
 

Macro Definition Documentation

◆ PTgsatt

#define PTgsatt   "ssi"

Definition at line 54 of file G3toG4.hh.

◆ PTgsdet

#define PTgsdet   "ssiSIiii"

Definition at line 68 of file G3toG4.hh.

◆ PTgsdeta

#define PTgsdeta   "sssii"

Definition at line 70 of file G3toG4.hh.

◆ PTgsdetd

#define PTgsdetd   "ssiSI"

Definition at line 72 of file G3toG4.hh.

◆ PTgsdeth

#define PTgsdeth   "ssiSIRR"

Definition at line 71 of file G3toG4.hh.

◆ PTgsdetu

#define PTgsdetu   "ssiR"

Definition at line 73 of file G3toG4.hh.

◆ PTgsdetv

#define PTgsdetv   "ssiii"

Definition at line 69 of file G3toG4.hh.

◆ PTgsdk

#define PTgsdk   "iiRI"

Definition at line 67 of file G3toG4.hh.

◆ PTgsdvn

#define PTgsdvn   "ssii"

Definition at line 56 of file G3toG4.hh.

◆ PTgsdvn2

#define PTgsdvn2   "ssiiri"

Definition at line 59 of file G3toG4.hh.

◆ PTgsdvt

#define PTgsdvt   "ssriii"

Definition at line 57 of file G3toG4.hh.

◆ PTgsdvt2

#define PTgsdvt2   "ssririi"

Definition at line 60 of file G3toG4.hh.

◆ PTgsdvx

#define PTgsdvx   "ssiirrii"

Definition at line 58 of file G3toG4.hh.

◆ PTgsmate

#define PTgsmate   "isrrrriR"

Definition at line 61 of file G3toG4.hh.

◆ PTgsmixt

#define PTgsmixt   "isriQ"

Definition at line 63 of file G3toG4.hh.

◆ PTgspart

#define PTgspart   "isirrriR"

Definition at line 66 of file G3toG4.hh.

◆ PTgspos

#define PTgspos   "sisrrris"

Definition at line 52 of file G3toG4.hh.

◆ PTgsposp

#define PTgsposp   "sisrrrisiR"

Definition at line 53 of file G3toG4.hh.

◆ PTgsrotm

#define PTgsrotm   "irrrrrr"

Definition at line 55 of file G3toG4.hh.

◆ PTgstmed

#define PTgstmed   "isiiirrrrrriR"

Definition at line 64 of file G3toG4.hh.

◆ PTgstpar

#define PTgstpar   "isr"

Definition at line 65 of file G3toG4.hh.

◆ PTgsvolu

#define PTgsvolu   "ssiiR"

Definition at line 51 of file G3toG4.hh.

Function Documentation

◆ G3fillParams()

void G3fillParams ( G4String tokens,
const char *  ptypes 
)

Definition at line 218 of file clparse.cc.

219{
220 //
221 // G3fillParams
222 //
223 // Interpret tokens to fill call parameters, based on parameter types ptypes
224
225 // loop over ptypes
226 //
227 G4int i =0, ipt = 0, k = 0;
228 G4int ni =0, nr = 0, nq = 0;
229 while (ptypes[i] != '\0')
230 {
231 switch (ptypes[i])
232 {
233 case 'i':
234 Ipar[ni] = atoi(tokens[ipt].data());
235 narray = Ipar[ni];
236 ni++; ipt++;
237 break;
238 case 'r':
239 Rpar[nr] = atof(tokens[ipt].data());
240 nr++; ipt++;
241 break;
242 case 's':
243 Spar[nq] = tokens[ipt];
244 nq++; ipt++;
245 break;
246 case 'I':
247 for (k=0; k < narray; k++)
248 {
249 Ipar[ni] = atoi(tokens[ipt].data());
250 ni++; ipt++;
251 }
252 break;
253 case 'R':
254 for (k=0; k < narray; k++)
255 {
256 Rpar[nr] = atof(tokens[ipt].data());
257 nr++; ipt++;
258 }
259 break;
260 case 'Q':
261 // special case of reading three successive R arrays
262 // into one (used in gsmixt)
263 //
264 narray = 3 * std::abs(narray);
265 for (k=0; k < narray; k++)
266 {
267 Rpar[nr] = atof(tokens[ipt].data());
268 nr++; ipt++;
269 }
270 break;
271 case 'S':
272 for (k=0; k < narray; k++)
273 {
274 Spar[nq] = tokens[ipt];
275 nq++; ipt++;
276 }
277 break;
278 default:
279 ofile << "unidentified ptype '" << ptypes[i] << G4endl;
280 };
281 i++;
282 }
283}
int G4int
Definition: G4Types.hh:85
#define G4endl
Definition: G4ios.hh:57
G4double Rpar[1000]
Definition: clparse.cc:66
G4int narray
Definition: clparse.cc:63
G4String Spar[1000]
Definition: clparse.cc:67
std::ofstream ofile
Definition: clparse.cc:44
G4int Ipar[1000]
Definition: clparse.cc:65

References G4endl, Ipar, narray, ofile, Rpar, and Spar.

Referenced by PG4gsatt(), PG4gsdet(), PG4gsdeta(), PG4gsdetd(), PG4gsdeth(), PG4gsdetu(), PG4gsdetv(), PG4gsdk(), PG4gsdvn(), PG4gsdvn2(), PG4gsdvt(), PG4gsdvt2(), PG4gsdvx(), PG4gsmate(), PG4gsmixt(), PG4gspart(), PG4gspos(), PG4gsposp(), PG4gsrotm(), PG4gstmed(), PG4gstpar(), and PG4gsvolu().

Variable Documentation

◆ gSeparator

G3G4DLL_API char gSeparator
extern

◆ Ipar

G3G4DLL_API G4int Ipar[1000]
extern

◆ Rpar

G3G4DLL_API G4double Rpar[1000]
extern

◆ Spar

G3G4DLL_API G4String Spar[1000]
extern