G3toG4.hh File Reference

#include "G3toG4Defs.hh"
#include "globals.hh"
#include "G3G4Interface.hh"

Go to the source code of this file.

Defines

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

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]


Define Documentation

#define G3TOG4_HH   1

Definition at line 32 of file G3toG4.hh.

#define PTgsatt   "ssi"

Definition at line 55 of file G3toG4.hh.

Referenced by PG4gsatt().

#define PTgsdet   "ssiSIiii"

Definition at line 69 of file G3toG4.hh.

Referenced by PG4gsdet().

#define PTgsdeta   "sssii"

Definition at line 71 of file G3toG4.hh.

Referenced by PG4gsdeta().

#define PTgsdetd   "ssiSI"

Definition at line 73 of file G3toG4.hh.

Referenced by PG4gsdetd().

#define PTgsdeth   "ssiSIRR"

Definition at line 72 of file G3toG4.hh.

Referenced by PG4gsdeth().

#define PTgsdetu   "ssiR"

Definition at line 74 of file G3toG4.hh.

Referenced by PG4gsdetu().

#define PTgsdetv   "ssiii"

Definition at line 70 of file G3toG4.hh.

Referenced by PG4gsdetv().

#define PTgsdk   "iiRI"

Definition at line 68 of file G3toG4.hh.

Referenced by PG4gsdk().

#define PTgsdvn   "ssii"

Definition at line 57 of file G3toG4.hh.

Referenced by PG4gsdvn().

#define PTgsdvn2   "ssiiri"

Definition at line 60 of file G3toG4.hh.

Referenced by PG4gsdvn2().

#define PTgsdvt   "ssriii"

Definition at line 58 of file G3toG4.hh.

Referenced by PG4gsdvt().

#define PTgsdvt2   "ssririi"

Definition at line 61 of file G3toG4.hh.

Referenced by PG4gsdvt2().

#define PTgsdvx   "ssiirrii"

Definition at line 59 of file G3toG4.hh.

Referenced by PG4gsdvx().

#define PTgsmate   "isrrrriR"

Definition at line 62 of file G3toG4.hh.

Referenced by PG4gsmate().

#define PTgsmixt   "isriQ"

Definition at line 64 of file G3toG4.hh.

Referenced by PG4gsmixt().

#define PTgspart   "isirrriR"

Definition at line 67 of file G3toG4.hh.

Referenced by PG4gspart().

#define PTgspos   "sisrrris"

Definition at line 53 of file G3toG4.hh.

Referenced by PG4gspos().

#define PTgsposp   "sisrrrisiR"

Definition at line 54 of file G3toG4.hh.

Referenced by PG4gsposp().

#define PTgsrotm   "irrrrrr"

Definition at line 56 of file G3toG4.hh.

Referenced by PG4gsrotm().

#define PTgstmed   "isiiirrrrrriR"

Definition at line 65 of file G3toG4.hh.

Referenced by PG4gstmed().

#define PTgstpar   "isr"

Definition at line 66 of file G3toG4.hh.

Referenced by PG4gstpar().

#define PTgsvolu   "ssiiR"

Definition at line 52 of file G3toG4.hh.

Referenced by PG4gsvolu().


Function Documentation

void G3fillParams ( G4String tokens,
const char *  ptypes 
)

Definition at line 219 of file clparse.cc.

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().

00220 {
00221   //
00222   // G3fillParams
00223   //
00224   // Interpret tokens to fill call parameters, based on parameter types ptypes
00225 
00226     // loop over ptypes
00227     //
00228     G4int i =0, ipt = 0, k = 0;
00229     G4int ni =0, nr = 0, nq = 0;
00230     while (ptypes[i] != '\0')
00231     {
00232         switch (ptypes[i])
00233         {
00234             case 'i':
00235                 Ipar[ni] = atoi(tokens[ipt].data());
00236                 narray = Ipar[ni];
00237                 ni++; ipt++;
00238                 break;
00239             case 'r':
00240                 Rpar[nr] = atof(tokens[ipt].data());
00241                 nr++; ipt++;
00242                 break;
00243             case 's':
00244                 Spar[nq] = tokens[ipt];
00245                 nq++; ipt++;
00246                 break;
00247             case 'I':
00248                 for (k=0; k < narray; k++)
00249                 {
00250                     Ipar[ni] = atoi(tokens[ipt].data());
00251                     ni++; ipt++;
00252                 }
00253                 break;
00254             case 'R':
00255                 for (k=0; k < narray; k++) 
00256                 { 
00257                     Rpar[nr] = atof(tokens[ipt].data()); 
00258                     nr++; ipt++;
00259                 }
00260                 break;
00261             case 'Q':
00262                 // special case of reading three successive R arrays 
00263                 // into one (used in gsmixt)
00264                 //
00265                 narray = 3 * std::abs(narray);
00266                 for (k=0; k < narray; k++) 
00267                 { 
00268                     Rpar[nr] = atof(tokens[ipt].data()); 
00269                     nr++; ipt++;
00270                 }
00271                 break;
00272             case 'S':
00273                 for (k=0; k < narray; k++)
00274                 {
00275                     Spar[nq] = tokens[ipt];
00276                     nq++; ipt++;
00277                 }
00278                 break;
00279             default:
00280                 ofile << "unidentified ptype '" << ptypes[i] << G4endl;
00281         };
00282         i++;
00283     }
00284 }


Variable Documentation

G3G4DLL_API char gSeparator

Referenced by G4CloneDaughters(), G4CreateCloneVTE(), G4CreateCloneVTEWithDivision(), and G3VolTableEntry::GetMasterClone().

G3G4DLL_API G4int Ipar[1000]

Definition at line 66 of file clparse.cc.

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

G3G4DLL_API G4double Rpar[1000]

Definition at line 67 of file clparse.cc.

Referenced by G3fillParams(), PG4gsdeth(), PG4gsdetu(), PG4gsdk(), PG4gsdvn2(), PG4gsdvt(), PG4gsdvt2(), PG4gsdvx(), PG4gsmate(), PG4gsmixt(), PG4gspart(), PG4gspos(), PG4gsposp(), PG4gsrotm(), PG4gstmed(), PG4gstpar(), and PG4gsvolu().

G3G4DLL_API G4String Spar[1000]

Definition at line 68 of file clparse.cc.

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


Generated on Mon May 27 17:50:37 2013 for Geant4 by  doxygen 1.4.7