#include <G4TextPPReporter.hh>
Inheritance diagram for G4TextPPReporter:
Public Member Functions | |
G4TextPPReporter () | |
virtual | ~G4TextPPReporter () |
virtual void | Print (const G4String &option="") |
Protected Member Functions | |
void | SparseOption (const G4String &option) |
void | GeneratePropertyTable (const G4ParticleDefinition *) |
Protected Attributes | |
G4String | baseDir |
Definition at line 44 of file G4TextPPReporter.hh.
G4TextPPReporter::G4TextPPReporter | ( | ) |
Definition at line 49 of file G4TextPPReporter.cc.
00049 :G4VParticlePropertyReporter() 00050 { 00051 }
G4TextPPReporter::~G4TextPPReporter | ( | ) | [virtual] |
void G4TextPPReporter::GeneratePropertyTable | ( | const G4ParticleDefinition * | ) | [protected] |
Definition at line 86 of file G4TextPPReporter.cc.
References baseDir, G4DecayTable::entries(), G4endl, G4VDecayChannel::GetBR(), G4DecayTable::GetDecayChannel(), G4ParticleDefinition::GetDecayTable(), G4ParticleDefinition::GetParticleName(), G4ParticleDefinition::GetPDGCharge(), G4ParticleDefinition::GetPDGEncoding(), G4ParticleDefinition::GetPDGiConjugation(), G4ParticleDefinition::GetPDGiIsospin(), G4ParticleDefinition::GetPDGiParity(), G4ParticleDefinition::GetPDGiSpin(), G4ParticleDefinition::GetPDGLifeTime(), G4ParticleDefinition::GetPDGMass(), and G4ParticleDefinition::GetPDGWidth().
Referenced by Print().
00087 { 00088 G4String name = particle->GetParticleName(); 00089 00090 //--- open file ----- 00091 G4String fileName = baseDir + name + ".txt"; 00092 // exception 00093 if (name == "J/psi") fileName = baseDir +"jpsi.txt"; 00094 00095 std::ofstream outFile(fileName, std::ios::out ); 00096 outFile.setf( std::ios:: scientific, std::ios::floatfield ); 00097 outFile << std::setprecision(7) << G4endl; 00098 00099 // particle name encoding 00100 outFile << name << " " 00101 << particle->GetPDGEncoding() << G4endl; 00102 00103 // IJPC 00104 outFile << particle->GetPDGiIsospin() << " " 00105 << particle->GetPDGiSpin() << " " 00106 << particle->GetPDGiParity() << " " 00107 << particle->GetPDGiConjugation() << G4endl; 00108 00109 // mass, width, charge 00110 outFile << particle->GetPDGMass()/GeV << " " 00111 << particle->GetPDGWidth()/GeV << " " 00112 << particle->GetPDGCharge()/eplus << G4endl; 00113 00114 // life time 00115 outFile << particle->GetPDGLifeTime()/second << G4endl; 00116 00117 // Decay Table 00118 G4DecayTable* dcyTable = particle->GetDecayTable(); 00119 if (dcyTable != 0) { 00120 for (G4int i=0; i< dcyTable->entries(); i++){ 00121 G4VDecayChannel * channel = dcyTable->GetDecayChannel(i); 00122 // column 1 : BR 00123 outFile << channel->GetBR() << " "; 00124 // column 2. : daughters 00125 outFile << channel->GetNumberOfDaughters() << " "; 00126 // column 3 : Kinematics 00127 outFile << channel->GetKinematicsName() << " "; 00128 // daughters 00129 for (G4int j=0; j< channel->GetNumberOfDaughters(); j++){ 00130 outFile << channel->GetDaughter(j)->GetParticleName() << " "; 00131 } 00132 outFile << G4endl; 00133 } 00134 } 00135 }
void G4TextPPReporter::Print | ( | const G4String & | option = "" |
) | [virtual] |
Implements G4VParticlePropertyReporter.
Definition at line 59 of file G4TextPPReporter.cc.
References G4ParticleTable::FindParticle(), GeneratePropertyTable(), G4ParticleTable::GetParticleTable(), G4VParticlePropertyReporter::pList, and SparseOption().
00060 { 00061 SparseOption( option ); 00062 00063 for (size_t i=0; i< pList.size(); i++){ 00064 G4ParticleDefinition* particle = G4ParticleTable::GetParticleTable()->FindParticle( pList[i]->GetParticleName() ); 00065 00066 GeneratePropertyTable(particle); 00067 } 00068 }
void G4TextPPReporter::SparseOption | ( | const G4String & | option | ) | [protected] |
Definition at line 71 of file G4TextPPReporter.cc.
References baseDir, and G4String::isNull().
Referenced by Print().
00072 { 00073 G4Tokenizer savedToken( option ); 00074 00075 // 1st option : base directory 00076 baseDir = savedToken(); 00077 if (!baseDir.isNull()) { 00078 if(baseDir(baseDir.length()-1)!='/') { 00079 baseDir += "/"; 00080 } 00081 } 00082 }
G4String G4TextPPReporter::baseDir [protected] |
Definition at line 61 of file G4TextPPReporter.hh.
Referenced by GeneratePropertyTable(), and SparseOption().