/home/bes3soft/bes3soft/Boss/7.0.2/dist/7.0.2/Simulation/BOOST/TruSim/TruSim-00-00-17/src/BesTruthTrack.cc

Go to the documentation of this file.
00001 //---------------------------------------------------------------------------//
00012 
00013 #include "BesTruthTrack.hh"
00014 #include <iomanip>
00015 using namespace std;
00016 
00017 BesTruthTrack::BesTruthTrack()
00018 :m_fourMomentum(0),m_daughterIndexes(0)
00019 {
00020   //m_fourMomentum;
00021   m_vertex=0;
00022   m_terminalVertex=0;
00023   m_PDGCode=0;
00024   m_PDGCharge=-99;
00025   m_particleName="";
00026   m_index=unassigned;
00027   m_g4TrackId=-99;
00028   //m_daughterIndexes=0;
00029   m_found=false;
00030   m_source="";
00031 }
00032 
00033 ostream &operator<<(ostream &stream, const BesTruthTrack &track)
00034 {
00035   //track index
00036   if(track.GetIndex() == BesTruthTrack::unassigned)
00037     stream << "  --";
00038   else
00039     stream << setw(4) << track.GetIndex() << " ";
00040   
00041   //PDGcode
00042   if(track.GetPDGCode())
00043     stream << setw(4) << track.GetPDGCode()<<" ";
00044   else
00045     stream <<"  --";
00046   
00047   //particle name
00048   if(track.GetParticleName())
00049     stream << setw(10) << track.GetParticleName()<<" ";
00050   else
00051     stream <<"      --";
00052   
00053   //original vertex index
00054   if(track.GetVertex())
00055     stream << setw(4) << track.GetVertex()->GetIndex();
00056   else
00057     stream << "  --";
00058 
00059   //terminal vertex index
00060   if(track.GetTerminalVertex())
00061     stream << setw(4) << track.GetTerminalVertex()->GetIndex();
00062   else
00063     stream << "  --";
00064 
00065   
00066   //four momentum
00067   stream << " " << setiosflags(ios::fixed)
00068          <<setprecision(4) << setw(11) << track.GetP4().x()
00069          <<setprecision(4) << setw(11) << track.GetP4().y()
00070          <<setprecision(4) << setw(11) << track.GetP4().z()
00071          <<setprecision(4) << setw(11) << track.GetP4().e();
00072   
00073   //daughter indexes
00074   if(track.GetDaughterIndexes().size()>0)
00075   {
00076     G4int nDaughter = track.GetDaughterIndexes().size();
00077     for(G4int i=0;i<nDaughter;i++)
00078      stream <<"  "<<( track.GetDaughterIndexes() )[i]<<"  ";
00079   }
00080   return stream;
00081 }
00082 
00083 ostream &operator<<(ostream &stream, const BesTruthTrack *track)
00084 {
00085   stream << *track;
00086   return stream;
00087 }
00088 
00089 
00090   
00091         

Generated on Tue Nov 29 23:14:33 2016 for BOSS_7.0.2 by  doxygen 1.4.7