// ESAF : Euso Simulation and Analysis Framework
// $Id: ETruth.cc,v 1.7 2005/04/20 12:26:36 thea Exp $
// A.Thea created May, 23 2004
/*****************************************************************************
* ESAF: Euso Simulation and Analysis Framework *
* *
* Id: ETruth *
* Package: SimuEvent *
* Coordinator: Alessandro.Thea *
* *
*****************************************************************************/
#include "ETruth.hh"
#include "Etypes.hh"
//______________________________________________________________________________
//
// ETruth
// ======
//
// MonteCarlo Truth object. Informations about the real event
// In case of EECR, contains infos about the original particle,
// direction, energy, type
// In case of other backgrounds, informations about the real process
//
ClassImp(ETruth)
//_____________________________________________________________________________
ETruth::ETruth() {
// ctor
Clear();
}
//_____________________________________________________________________________
ETruth::ETruth( const ETruth& other ) : TObject() {
// copy ctor
other.Copy( *this );
}
//_____________________________________________________________________________
ETruth::~ETruth() {
// dtor
}
//_____________________________________________________________________________
void ETruth::Clear( Option_t* ) {
fTrueEnergy = 0;
fTrueTheta = 0;
fTruePhi = 0;
fTrueParticleName.Resize(0);
fTrueParticleCode = 0;
fTrueInitPosX = -kHuge;
fTrueInitPosY = -kHuge;
fTrueInitPosZ = -kHuge;
fTrueX1 = 0;
fTrueEarthImpactX = -kHuge;
fTrueEarthImpactY = -kHuge;
fTrueEarthImpactZ = -kHuge;
fTrueEarthAge = 0;
fTrueShowerMaxPosX = -kHuge;
fTrueShowerMaxPosY = -kHuge;
fTrueShowerMaxPosZ = -kHuge;
fTrueShowerXMax = 0;
fTrueHclouds = -kHuge;
fTrueCloudsthick = 0;
fTrueCloudsOD = 0;
fTrueLatitude = 0;
fTrueLongitude = 0;
fTrueDate = 0;
}
//_____________________________________________________________________________
void ETruth::Copy( TObject& other) const {
// copy
ETruth& truth = (ETruth&)other;
truth.fTrueEnergy = fTrueEnergy;
truth.fTrueTheta = fTrueTheta;
truth.fTruePhi = fTruePhi;
truth.fTrueParticleName = fTrueParticleName;
truth.fTrueParticleCode = fTrueParticleCode;
truth.fTrueInitPosX = fTrueInitPosX;
truth.fTrueInitPosY = fTrueInitPosY;
truth.fTrueInitPosZ = fTrueInitPosZ;
truth.fTrueX1 = fTrueX1;
truth.fTrueEarthImpactX = fTrueEarthImpactX;
truth.fTrueEarthImpactY = fTrueEarthImpactY;
truth.fTrueEarthImpactZ = fTrueEarthImpactZ;
truth.fTrueEarthAge = fTrueEarthAge;
truth.fTrueShowerMaxPosX = fTrueShowerMaxPosX;
truth.fTrueShowerMaxPosY = fTrueShowerMaxPosY;
truth.fTrueShowerMaxPosZ = fTrueShowerMaxPosZ;
truth.fTrueShowerXMax = fTrueShowerXMax;
truth.fTrueHclouds = fTrueHclouds;
truth.fTrueCloudsthick = fTrueCloudsthick;
truth.fTrueCloudsOD = fTrueCloudsOD;
truth.fTrueLatitude = fTrueLatitude;
truth.fTrueLongitude = fTrueLongitude;
truth.fTrueDate = fTrueDate;
}