CMS 3D CMS Logo

Public Member Functions | Private Member Functions | Private Attributes | Static Private Attributes

MaterialBudgetTree Class Reference

#include <MaterialBudgetTree.h>

Inheritance diagram for MaterialBudgetTree:
MaterialBudgetFormat

List of all members.

Public Member Functions

virtual void fillEndTrack ()
virtual void fillPerStep ()
virtual void fillStartTrack ()
 MaterialBudgetTree (MaterialBudgetData *data, const std::string &fileName)
virtual ~MaterialBudgetTree ()

Private Member Functions

virtual void book ()
virtual void hend ()

Private Attributes

float t_DeltaIL [MAXSTEPS]
float t_DeltaIL_AIR [MAXSTEPS]
float t_DeltaIL_CAB [MAXSTEPS]
float t_DeltaIL_COL [MAXSTEPS]
float t_DeltaIL_ELE [MAXSTEPS]
float t_DeltaIL_OTH [MAXSTEPS]
float t_DeltaIL_SEN [MAXSTEPS]
float t_DeltaIL_SUP [MAXSTEPS]
float t_DeltaMB [MAXSTEPS]
float t_DeltaMB_AIR [MAXSTEPS]
float t_DeltaMB_CAB [MAXSTEPS]
float t_DeltaMB_COL [MAXSTEPS]
float t_DeltaMB_ELE [MAXSTEPS]
float t_DeltaMB_OTH [MAXSTEPS]
float t_DeltaMB_SEN [MAXSTEPS]
float t_DeltaMB_SUP [MAXSTEPS]
double t_FinalX [MAXSTEPS]
double t_FinalY [MAXSTEPS]
double t_FinalZ [MAXSTEPS]
float t_IL
double t_InitialX [MAXSTEPS]
double t_InitialY [MAXSTEPS]
double t_InitialZ [MAXSTEPS]
float t_MaterialDensity [MAXSTEPS]
int t_MaterialID [MAXSTEPS]
float t_MaterialLambda0 [MAXSTEPS]
char * t_MaterialName [MAXSTEPS]
float t_MaterialX0 [MAXSTEPS]
float t_MB
int t_Nsteps
float t_ParticleEnergy
float t_ParticleEta
int t_ParticleID
float t_ParticleMass
float t_ParticlePhi
float t_ParticlePt
float t_ParticleStepFinalBeta [MAXSTEPS]
float t_ParticleStepFinalEnergy [MAXSTEPS]
float t_ParticleStepFinalEta [MAXSTEPS]
float t_ParticleStepFinalGamma [MAXSTEPS]
float t_ParticleStepFinalMass [MAXSTEPS]
float t_ParticleStepFinalPhi [MAXSTEPS]
float t_ParticleStepFinalPt [MAXSTEPS]
float t_ParticleStepFinalPx [MAXSTEPS]
float t_ParticleStepFinalPy [MAXSTEPS]
float t_ParticleStepFinalPz [MAXSTEPS]
int t_ParticleStepID [MAXSTEPS]
float t_ParticleStepInitialBeta [MAXSTEPS]
float t_ParticleStepInitialEnergy [MAXSTEPS]
float t_ParticleStepInitialEta [MAXSTEPS]
float t_ParticleStepInitialGamma [MAXSTEPS]
float t_ParticleStepInitialMass [MAXSTEPS]
float t_ParticleStepInitialPhi [MAXSTEPS]
float t_ParticleStepInitialPt [MAXSTEPS]
float t_ParticleStepInitialPx [MAXSTEPS]
float t_ParticleStepInitialPy [MAXSTEPS]
float t_ParticleStepInitialPz [MAXSTEPS]
int t_ParticleStepPostInteraction [MAXSTEPS]
int t_ParticleStepPreInteraction [MAXSTEPS]
int t_VolumeCopy [MAXSTEPS]
int t_VolumeID [MAXSTEPS]
char * t_VolumeName [MAXSTEPS]
float t_VolumeX [MAXSTEPS]
float t_VolumeXaxis1 [MAXSTEPS]
float t_VolumeXaxis2 [MAXSTEPS]
float t_VolumeXaxis3 [MAXSTEPS]
float t_VolumeY [MAXSTEPS]
float t_VolumeYaxis1 [MAXSTEPS]
float t_VolumeYaxis2 [MAXSTEPS]
float t_VolumeYaxis3 [MAXSTEPS]
float t_VolumeZ [MAXSTEPS]
float t_VolumeZaxis1 [MAXSTEPS]
float t_VolumeZaxis2 [MAXSTEPS]
float t_VolumeZaxis3 [MAXSTEPS]
TFile * theFile
TTree * theTree

Static Private Attributes

static const int MAXSTEPS = 10000

Detailed Description

Definition at line 13 of file MaterialBudgetTree.h.


Constructor & Destructor Documentation

MaterialBudgetTree::MaterialBudgetTree ( MaterialBudgetData data,
const std::string &  fileName 
)

Definition at line 5 of file MaterialBudgetTree.cc.

References book(), and theFile.

                                                                                          : MaterialBudgetFormat( data )
{
  theFile = new TFile(filename.c_str(),"RECREATE");
  
  theFile->cd();

  book();
  
}
virtual MaterialBudgetTree::~MaterialBudgetTree ( ) [inline, virtual]

Definition at line 18 of file MaterialBudgetTree.h.

References hend().

{ hend(); }

Member Function Documentation

void MaterialBudgetTree::book ( ) [private, virtual]

Definition at line 16 of file MaterialBudgetTree.cc.

References MaterialBudgetData::allStepsON(), gather_cfg::cout, t_DeltaIL, t_DeltaIL_AIR, t_DeltaIL_CAB, t_DeltaIL_COL, t_DeltaIL_ELE, t_DeltaIL_OTH, t_DeltaIL_SEN, t_DeltaIL_SUP, t_DeltaMB, t_DeltaMB_AIR, t_DeltaMB_CAB, t_DeltaMB_COL, t_DeltaMB_ELE, t_DeltaMB_OTH, t_DeltaMB_SEN, t_DeltaMB_SUP, t_FinalX, t_FinalY, t_FinalZ, t_IL, t_InitialX, t_InitialY, t_InitialZ, t_MaterialDensity, t_MaterialID, t_MaterialLambda0, t_MaterialName, t_MaterialX0, t_MB, t_Nsteps, t_ParticleEnergy, t_ParticleEta, t_ParticleID, t_ParticleMass, t_ParticlePhi, t_ParticlePt, t_ParticleStepFinalBeta, t_ParticleStepFinalEnergy, t_ParticleStepFinalEta, t_ParticleStepFinalGamma, t_ParticleStepFinalMass, t_ParticleStepFinalPhi, t_ParticleStepFinalPt, t_ParticleStepFinalPx, t_ParticleStepFinalPy, t_ParticleStepFinalPz, t_ParticleStepID, t_ParticleStepInitialBeta, t_ParticleStepInitialEnergy, t_ParticleStepInitialEta, t_ParticleStepInitialGamma, t_ParticleStepInitialMass, t_ParticleStepInitialPhi, t_ParticleStepInitialPt, t_ParticleStepInitialPx, t_ParticleStepInitialPy, t_ParticleStepInitialPz, t_ParticleStepPostInteraction, t_ParticleStepPreInteraction, t_VolumeCopy, t_VolumeID, t_VolumeName, t_VolumeX, t_VolumeXaxis1, t_VolumeXaxis2, t_VolumeXaxis3, t_VolumeY, t_VolumeYaxis1, t_VolumeYaxis2, t_VolumeYaxis3, t_VolumeZ, t_VolumeZaxis1, t_VolumeZaxis2, t_VolumeZaxis3, MaterialBudgetFormat::theData, and theTree.

Referenced by MaterialBudgetTree().

{
  std::cout << "=== booking user TTree ===" << std::endl;
  // create the TTree
  theTree = new TTree("T1","GeometryTest Tree");

  // GENERAL block
  theTree->Branch("MB", &t_MB, "MB/F");
  theTree->Branch("IL", &t_IL, "IL/F");
  
  // rr
  // PARTICLE Block
  theTree->Branch( "Particle ID",     &t_ParticleID,     "Particle_ID/I"  );
  theTree->Branch( "Particle Pt",     &t_ParticlePt,     "Particle_Pt/F"  );
  theTree->Branch( "Particle Eta",    &t_ParticleEta,    "Particle_Eta/F" );
  theTree->Branch( "Particle Phi",    &t_ParticlePhi,    "Particle_Phi/F" );
  theTree->Branch( "Particle Energy", &t_ParticleEnergy, "Particle_E/F"   );
  theTree->Branch( "Particle Mass",   &t_ParticleMass,   "Particle_M/F"   );
  // rr
 
  if( theData->allStepsON() ) {
    theTree->Branch("Nsteps", &t_Nsteps, "Nsteps/I");
    theTree->Branch("DeltaMB", t_DeltaMB, "DeltaMB[Nsteps]/F");
    // rr
    theTree->Branch("DeltaMB_SUP", t_DeltaMB_SUP, "DeltaMB_SUP[Nsteps]/F");
    theTree->Branch("DeltaMB_SEN", t_DeltaMB_SEN, "DeltaMB_SEN[Nsteps]/F");
    theTree->Branch("DeltaMB_CAB", t_DeltaMB_CAB, "DeltaMB_CAB[Nsteps]/F");
    theTree->Branch("DeltaMB_COL", t_DeltaMB_COL, "DeltaMB_COL[Nsteps]/F");
    theTree->Branch("DeltaMB_ELE", t_DeltaMB_ELE, "DeltaMB_ELE[Nsteps]/F");
    theTree->Branch("DeltaMB_OTH", t_DeltaMB_OTH, "DeltaMB_OTH[Nsteps]/F");
    theTree->Branch("DeltaMB_AIR", t_DeltaMB_AIR, "DeltaMB_AIR[Nsteps]/F");
    theTree->Branch("DeltaIL", t_DeltaIL, "DeltaIL[Nsteps]/F");
    theTree->Branch("DeltaIL_SUP", t_DeltaIL_SUP, "DeltaIL_SUP[Nsteps]/F");
    theTree->Branch("DeltaIL_SEN", t_DeltaIL_SEN, "DeltaIL_SEN[Nsteps]/F");
    theTree->Branch("DeltaIL_CAB", t_DeltaIL_CAB, "DeltaIL_CAB[Nsteps]/F");
    theTree->Branch("DeltaIL_COL", t_DeltaIL_COL, "DeltaIL_COL[Nsteps]/F");
    theTree->Branch("DeltaIL_ELE", t_DeltaIL_ELE, "DeltaIL_ELE[Nsteps]/F");
    theTree->Branch("DeltaIL_OTH", t_DeltaIL_OTH, "DeltaIL_OTH[Nsteps]/F");
    theTree->Branch("DeltaIL_AIR", t_DeltaIL_AIR, "DeltaIL_AIR[Nsteps]/F");
    // rr
    theTree->Branch("Initial X", t_InitialX, "Initial_X[Nsteps]/D");
    theTree->Branch("Initial Y", t_InitialY, "Initial_Y[Nsteps]/D");
    theTree->Branch("Initial Z", t_InitialZ, "Initial_Z[Nsteps]/D");
    theTree->Branch("Final X",   t_FinalX,   "Final_X[Nsteps]/D");
    theTree->Branch("Final Y",   t_FinalY,   "Final_Y[Nsteps]/D");
    theTree->Branch("Final Z",   t_FinalZ,   "Final_Z[Nsteps]/D");
    // rr
    theTree->Branch("Volume ID",       t_VolumeID,     "VolumeID[Nsteps]/I");
    theTree->Branch("Volume Name",     t_VolumeName,   "VolumeName[Nsteps]/C");
    theTree->Branch("Volume Copy",     t_VolumeCopy,   "VolumeCopy[Nsteps]/I");
    theTree->Branch("Volume X",        t_VolumeX,      "VolumeX[Nsteps]/F");
    theTree->Branch("Volume Y",        t_VolumeY,      "VolumeY[Nsteps]/F");
    theTree->Branch("Volume Z",        t_VolumeZ,      "VolumeZ[Nsteps]/F");
    theTree->Branch("Volume X axis 1", t_VolumeXaxis1, "VolumeXaxis1[Nsteps]/F");
    theTree->Branch("Volume X axis 2", t_VolumeXaxis2, "VolumeXaxis2[Nsteps]/F");
    theTree->Branch("Volume X axis 3", t_VolumeXaxis3, "VolumeXaxis3[Nsteps]/F");
    theTree->Branch("Volume Y axis 1", t_VolumeYaxis1, "VolumeYaxis1[Nsteps]/F");
    theTree->Branch("Volume Y axis 2", t_VolumeYaxis2, "VolumeYaxis2[Nsteps]/F");
    theTree->Branch("Volume Y axis 3", t_VolumeYaxis3, "VolumeYaxis3[Nsteps]/F");
    theTree->Branch("Volume Z axis 1", t_VolumeZaxis1, "VolumeZaxis1[Nsteps]/F");
    theTree->Branch("Volume Z axis 2", t_VolumeZaxis2, "VolumeZaxis2[Nsteps]/F");
    theTree->Branch("Volume Z axis 3", t_VolumeZaxis3, "VolumeZaxis3[Nsteps]/F");
    
    theTree->Branch("Material ID",      t_MaterialID,      "MaterialID[Nsteps]/I");
    theTree->Branch("Material Name",    t_MaterialName,    "MaterialName[Nsteps]/C");
    theTree->Branch("Material X0",      t_MaterialX0,      "MaterialX0[Nsteps]/F");
    theTree->Branch("Material Lambda0", t_MaterialLambda0, "MaterialLambda0[Nsteps]/F");
    theTree->Branch("Material Density", t_MaterialDensity, "MaterialDensity[Nsteps]/F");
    
    theTree->Branch("Particle Step ID",               t_ParticleStepID,              "Step_ID[Nsteps]/I");
    theTree->Branch("Particle Step Initial Pt",       t_ParticleStepInitialPt,       "Step_Initial_Pt[Nsteps]/F");
    theTree->Branch("Particle Step Initial Eta",      t_ParticleStepInitialEta,      "Step_Initial_Eta[Nsteps]/F");
    theTree->Branch("Particle Step Initial Phi",      t_ParticleStepInitialPhi,      "Step_Initial_Phi[Nsteps]/F");
    theTree->Branch("Particle Step Initial Energy",   t_ParticleStepInitialEnergy,   "Step_Initial_E[Nsteps]/F");
    theTree->Branch("Particle Step Initial Px",       t_ParticleStepInitialPx,       "Step_Initial_Px[Nsteps]/F");
    theTree->Branch("Particle Step Initial Py",       t_ParticleStepInitialPy,       "Step_Initial_Py[Nsteps]/F");
    theTree->Branch("Particle Step Initial Pz",       t_ParticleStepInitialPz,       "Step_Initial_Pz[Nsteps]/F");
    theTree->Branch("Particle Step Initial Beta",     t_ParticleStepInitialBeta,     "Step_Initial_Beta[Nsteps]/F");
    theTree->Branch("Particle Step Initial Gamma",    t_ParticleStepInitialGamma,    "Step_Initial_Gamma[Nsteps]/F");
    theTree->Branch("Particle Step Initial Mass",     t_ParticleStepInitialMass,     "Step_Initial_Mass[Nsteps]/F");
    theTree->Branch("Particle Step Final Pt",         t_ParticleStepFinalPt,         "Step_Final_Pt[Nsteps]/F");
    theTree->Branch("Particle Step Final Eta",        t_ParticleStepFinalEta,        "Step_Final_Eta[Nsteps]/F");
    theTree->Branch("Particle Step Final Phi",        t_ParticleStepFinalPhi,        "Step_Final_Phi[Nsteps]/F");
    theTree->Branch("Particle Step Final Energy",     t_ParticleStepFinalEnergy,     "Step_Final_E[Nsteps]/F");
    theTree->Branch("Particle Step Final Px",         t_ParticleStepFinalPx,         "Step_Final_Px[Nsteps]/F");
    theTree->Branch("Particle Step Final Py",         t_ParticleStepFinalPy,         "Step_Final_Py[Nsteps]/F");
    theTree->Branch("Particle Step Final Pz",         t_ParticleStepFinalPz,         "Step_Final_Pz[Nsteps]/F");
    theTree->Branch("Particle Step Final Beta",       t_ParticleStepFinalBeta,       "Step_Final_Beta[Nsteps]/F");
    theTree->Branch("Particle Step Final Gamma",      t_ParticleStepFinalGamma,      "Step_Final_Gamma[Nsteps]/F");
    theTree->Branch("Particle Step Final Mass",       t_ParticleStepFinalMass,       "Step_Final_Mass[Nsteps]/F");
    theTree->Branch("Particle Step Pre Interaction",  t_ParticleStepPreInteraction,  "Step_PreInteraction[Nsteps]/I");
    theTree->Branch("Particle Step Post Interaction", t_ParticleStepPostInteraction, "Step_PostInteraction[Nsteps]/I");
    // rr
  }
  
  std::cout << "=== booking user TTree done ===" << std::endl;
  
}
void MaterialBudgetTree::fillEndTrack ( ) [virtual]

Implements MaterialBudgetFormat.

Definition at line 127 of file MaterialBudgetTree.cc.

References MaterialBudgetData::allStepsON(), gather_cfg::cout, MaterialBudgetData::getAirDil(), MaterialBudgetData::getAirDmb(), MaterialBudgetData::getCablesDil(), MaterialBudgetData::getCablesDmb(), MaterialBudgetData::getCoolingDil(), MaterialBudgetData::getCoolingDmb(), MaterialBudgetData::getElectronicsDil(), MaterialBudgetData::getElectronicsDmb(), MaterialBudgetData::getEnergy(), MaterialBudgetData::getEta(), MaterialBudgetData::getID(), MaterialBudgetData::getMass(), MaterialBudgetData::getNumberOfSteps(), MaterialBudgetData::getOtherDil(), MaterialBudgetData::getOtherDmb(), MaterialBudgetData::getPhi(), MaterialBudgetData::getPt(), MaterialBudgetData::getSensitiveDil(), MaterialBudgetData::getSensitiveDmb(), MaterialBudgetData::getStepDil(), MaterialBudgetData::getStepDmb(), MaterialBudgetData::getStepFinalBeta(), MaterialBudgetData::getStepFinalEnergy(), MaterialBudgetData::getStepFinalEta(), MaterialBudgetData::getStepFinalGamma(), MaterialBudgetData::getStepFinalMass(), MaterialBudgetData::getStepFinalPhi(), MaterialBudgetData::getStepFinalPt(), MaterialBudgetData::getStepFinalPx(), MaterialBudgetData::getStepFinalPy(), MaterialBudgetData::getStepFinalPz(), MaterialBudgetData::getStepFinalX(), MaterialBudgetData::getStepFinalY(), MaterialBudgetData::getStepFinalZ(), MaterialBudgetData::getStepID(), MaterialBudgetData::getStepInitialBeta(), MaterialBudgetData::getStepInitialEnergy(), MaterialBudgetData::getStepInitialEta(), MaterialBudgetData::getStepInitialGamma(), MaterialBudgetData::getStepInitialMass(), MaterialBudgetData::getStepInitialPhi(), MaterialBudgetData::getStepInitialPt(), MaterialBudgetData::getStepInitialPx(), MaterialBudgetData::getStepInitialPy(), MaterialBudgetData::getStepInitialPz(), MaterialBudgetData::getStepInitialX(), MaterialBudgetData::getStepInitialY(), MaterialBudgetData::getStepInitialZ(), MaterialBudgetData::getStepMaterialDensity(), MaterialBudgetData::getStepMaterialID(), MaterialBudgetData::getStepMaterialLambda0(), MaterialBudgetData::getStepMaterialName(), MaterialBudgetData::getStepMaterialX0(), MaterialBudgetData::getStepPostProcess(), MaterialBudgetData::getStepPreProcess(), MaterialBudgetData::getStepVolumeCopy(), MaterialBudgetData::getStepVolumeID(), MaterialBudgetData::getStepVolumeName(), MaterialBudgetData::getStepVolumeX(), MaterialBudgetData::getStepVolumeXaxis(), MaterialBudgetData::getStepVolumeY(), MaterialBudgetData::getStepVolumeYaxis(), MaterialBudgetData::getStepVolumeZ(), MaterialBudgetData::getStepVolumeZaxis(), MaterialBudgetData::getSupportDil(), MaterialBudgetData::getSupportDmb(), MaterialBudgetData::getTotalIL(), MaterialBudgetData::getTotalMB(), MAXSTEPS, t_DeltaIL, t_DeltaIL_AIR, t_DeltaIL_CAB, t_DeltaIL_COL, t_DeltaIL_ELE, t_DeltaIL_OTH, t_DeltaIL_SEN, t_DeltaIL_SUP, t_DeltaMB, t_DeltaMB_AIR, t_DeltaMB_CAB, t_DeltaMB_COL, t_DeltaMB_ELE, t_DeltaMB_OTH, t_DeltaMB_SEN, t_DeltaMB_SUP, t_FinalX, t_FinalY, t_FinalZ, t_IL, t_InitialX, t_InitialY, t_InitialZ, t_MaterialDensity, t_MaterialID, t_MaterialLambda0, t_MaterialName, t_MaterialX0, t_MB, t_Nsteps, t_ParticleEnergy, t_ParticleEta, t_ParticleID, t_ParticleMass, t_ParticlePhi, t_ParticlePt, t_ParticleStepFinalBeta, t_ParticleStepFinalEnergy, t_ParticleStepFinalEta, t_ParticleStepFinalGamma, t_ParticleStepFinalMass, t_ParticleStepFinalPhi, t_ParticleStepFinalPt, t_ParticleStepFinalPx, t_ParticleStepFinalPy, t_ParticleStepFinalPz, t_ParticleStepID, t_ParticleStepInitialBeta, t_ParticleStepInitialEnergy, t_ParticleStepInitialEta, t_ParticleStepInitialGamma, t_ParticleStepInitialMass, t_ParticleStepInitialPhi, t_ParticleStepInitialPt, t_ParticleStepInitialPx, t_ParticleStepInitialPy, t_ParticleStepInitialPz, t_ParticleStepPostInteraction, t_ParticleStepPreInteraction, t_VolumeCopy, t_VolumeID, t_VolumeName, t_VolumeX, t_VolumeXaxis1, t_VolumeXaxis2, t_VolumeXaxis3, t_VolumeY, t_VolumeYaxis1, t_VolumeYaxis2, t_VolumeYaxis3, t_VolumeZ, t_VolumeZaxis1, t_VolumeZaxis2, t_VolumeZaxis3, MaterialBudgetFormat::theData, and theTree.

Referenced by MaterialBudgetAction::update().

{
  t_MB  = theData->getTotalMB();
  t_IL  = theData->getTotalIL();
  //  t_Eta = theData->getEta();
  //  t_Phi = theData->getPhi();

  // rr
  t_ParticleID     = theData->getID();
  t_ParticlePt     = theData->getPt();
  t_ParticleEta    = theData->getEta();
  t_ParticlePhi    = theData->getPhi();
  t_ParticleEnergy = theData->getEnergy();
  t_ParticleMass   = theData->getMass();
  // rr
  
  // do this only if I really want to save all the steps
  if( theData->allStepsON() ) {
    t_Nsteps = theData->getNumberOfSteps();
    if( t_Nsteps > MAXSTEPS ) t_Nsteps = MAXSTEPS;
    std::cout << " Number of Steps into the tree " << t_Nsteps << std::endl;
    for(int ii=0;ii<t_Nsteps;ii++) {
      t_DeltaMB[ii] = theData->getStepDmb(ii);
      t_DeltaMB_SUP[ii] = theData->getSupportDmb(ii);
      t_DeltaMB_SEN[ii] = theData->getSensitiveDmb(ii);
      t_DeltaMB_CAB[ii] = theData->getCablesDmb(ii);
      t_DeltaMB_COL[ii] = theData->getCoolingDmb(ii);
      t_DeltaMB_ELE[ii] = theData->getElectronicsDmb(ii);
      t_DeltaMB_OTH[ii] = theData->getOtherDmb(ii);
      t_DeltaMB_AIR[ii] = theData->getAirDmb(ii);
      
      t_DeltaIL[ii] = theData->getStepDil(ii);
      t_DeltaIL_SUP[ii] = theData->getSupportDil(ii);
      t_DeltaIL_SEN[ii] = theData->getSensitiveDil(ii);
      t_DeltaIL_CAB[ii] = theData->getCablesDil(ii);
      t_DeltaIL_COL[ii] = theData->getCoolingDil(ii);
      t_DeltaIL_ELE[ii] = theData->getElectronicsDil(ii);
      t_DeltaIL_OTH[ii] = theData->getOtherDil(ii);
      t_DeltaIL_AIR[ii] = theData->getAirDil(ii);

      t_InitialX[ii] = theData->getStepInitialX(ii);
      t_InitialY[ii] = theData->getStepInitialY(ii);
      t_InitialZ[ii] = theData->getStepInitialZ(ii);
      t_FinalX[ii]   = theData->getStepFinalX(ii);
      t_FinalY[ii]   = theData->getStepFinalY(ii);
      t_FinalZ[ii]   = theData->getStepFinalZ(ii);
      
      t_VolumeID[ii]     = theData->getStepVolumeID(ii);
      t_VolumeName[ii]   = const_cast<char*> (theData->getStepVolumeName(ii).c_str());
      t_VolumeCopy[ii]   = theData->getStepVolumeCopy(ii);
      t_VolumeX[ii]      = theData->getStepVolumeX(ii);
      t_VolumeY[ii]      = theData->getStepVolumeY(ii);
      t_VolumeZ[ii]      = theData->getStepVolumeZ(ii);
      t_VolumeXaxis1[ii] = theData->getStepVolumeXaxis(ii).x();
      t_VolumeXaxis2[ii] = theData->getStepVolumeXaxis(ii).y();
      t_VolumeXaxis3[ii] = theData->getStepVolumeXaxis(ii).z();
      t_VolumeYaxis1[ii] = theData->getStepVolumeYaxis(ii).x();
      t_VolumeYaxis2[ii] = theData->getStepVolumeYaxis(ii).y();
      t_VolumeYaxis3[ii] = theData->getStepVolumeYaxis(ii).z();
      t_VolumeZaxis1[ii] = theData->getStepVolumeZaxis(ii).x();
      t_VolumeZaxis2[ii] = theData->getStepVolumeZaxis(ii).y();
      t_VolumeZaxis3[ii] = theData->getStepVolumeZaxis(ii).z();
      
      t_MaterialID[ii]        = theData->getStepMaterialID(ii);
      t_MaterialName[ii]      = const_cast<char*> (theData->getStepMaterialName(ii).c_str());
      t_MaterialX0[ii]        = theData->getStepMaterialX0(ii);
      t_MaterialLambda0[ii]   = theData->getStepMaterialLambda0(ii);
      t_MaterialDensity[ii]   = theData->getStepMaterialDensity(ii);
      
      t_ParticleStepID[ii]              = theData->getStepID(ii);
      t_ParticleStepInitialPt[ii]       = theData->getStepInitialPt(ii);
      t_ParticleStepInitialEta[ii]      = theData->getStepInitialEta(ii);
      t_ParticleStepInitialPhi[ii]      = theData->getStepInitialPhi(ii);
      t_ParticleStepInitialEnergy[ii]   = theData->getStepInitialEnergy(ii);
      t_ParticleStepInitialPx[ii]       = theData->getStepInitialPx(ii);
      t_ParticleStepInitialPy[ii]       = theData->getStepInitialPy(ii);
      t_ParticleStepInitialPz[ii]       = theData->getStepInitialPz(ii);
      t_ParticleStepInitialBeta[ii]     = theData->getStepInitialBeta(ii);
      t_ParticleStepInitialGamma[ii]    = theData->getStepInitialGamma(ii);
      t_ParticleStepInitialMass[ii]     = theData->getStepInitialMass(ii);
      t_ParticleStepFinalPt[ii]         = theData->getStepFinalPt(ii);
      t_ParticleStepFinalEta[ii]        = theData->getStepFinalEta(ii);
      t_ParticleStepFinalPhi[ii]        = theData->getStepFinalPhi(ii);
      t_ParticleStepFinalEnergy[ii]     = theData->getStepFinalEnergy(ii);
      t_ParticleStepFinalPx[ii]         = theData->getStepFinalPx(ii);
      t_ParticleStepFinalPy[ii]         = theData->getStepFinalPy(ii);
      t_ParticleStepFinalPz[ii]         = theData->getStepFinalPz(ii);
      t_ParticleStepFinalBeta[ii]       = theData->getStepFinalBeta(ii);
      t_ParticleStepFinalGamma[ii]      = theData->getStepFinalGamma(ii);
      t_ParticleStepFinalMass[ii]       = theData->getStepFinalMass(ii);
      t_ParticleStepPreInteraction[ii]  = theData->getStepPreProcess(ii);
      t_ParticleStepPostInteraction[ii] = theData->getStepPostProcess(ii);
      
      // rr
    }
  }

  theTree->Fill();

}
void MaterialBudgetTree::fillPerStep ( ) [virtual]

Implements MaterialBudgetFormat.

Definition at line 122 of file MaterialBudgetTree.cc.

Referenced by MaterialBudgetAction::update().

{
}
void MaterialBudgetTree::fillStartTrack ( ) [virtual]

Implements MaterialBudgetFormat.

Definition at line 116 of file MaterialBudgetTree.cc.

Referenced by MaterialBudgetAction::update().

{
  
}
void MaterialBudgetTree::hend ( ) [private, virtual]

Definition at line 231 of file MaterialBudgetTree.cc.

References gather_cfg::cout, theFile, and theTree.

Referenced by ~MaterialBudgetTree().

{
  std::cout << " === save user TTree ===" << std::endl;
 
  theFile->cd();
  theTree->Write();
  
  theFile->Close();

}

Member Data Documentation

const int MaterialBudgetTree::MAXSTEPS = 10000 [static, private]

Definition at line 33 of file MaterialBudgetTree.h.

Referenced by fillEndTrack().

Definition at line 55 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 62 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 58 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 59 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 60 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 61 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 57 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 56 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 47 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 54 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 50 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 51 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 52 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 53 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 49 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 48 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 66 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 67 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 68 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

float MaterialBudgetTree::t_IL [private]

Definition at line 35 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 63 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 64 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 65 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 89 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 85 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 88 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 86 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 87 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

float MaterialBudgetTree::t_MB [private]

Definition at line 34 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 46 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 43 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 41 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 39 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 44 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 42 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 40 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 108 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 104 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 102 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 109 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 110 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 103 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 101 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 105 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 106 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 107 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 90 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 98 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 94 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 92 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 99 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 100 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 93 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 91 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 95 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 96 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 97 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 112 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 111 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 72 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 70 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 71 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 73 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 76 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 77 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 78 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 74 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 79 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 80 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 81 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 75 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 82 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 83 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

Definition at line 84 of file MaterialBudgetTree.h.

Referenced by book(), and fillEndTrack().

TFile* MaterialBudgetTree::theFile [private]

Definition at line 30 of file MaterialBudgetTree.h.

Referenced by hend(), and MaterialBudgetTree().

TTree* MaterialBudgetTree::theTree [private]

Definition at line 31 of file MaterialBudgetTree.h.

Referenced by book(), fillEndTrack(), and hend().