diff --git a/generators/MpdVHLLEGenerator.cxx b/generators/MpdVHLLEGenerator.cxx index 3913f5aae29d936adeb0f2ada3f9aa45b347d10b..f837f58decd3c5b294b14a2808103637fcb8043e 100644 --- a/generators/MpdVHLLEGenerator.cxx +++ b/generators/MpdVHLLEGenerator.cxx @@ -3,13 +3,15 @@ MpdVHLLEGenerator::MpdVHLLEGenerator() : FairGenerator(), fInputFile(NULL), -fFileName("") { +fFileName("") , +fFreezout(NULL){ } MpdVHLLEGenerator::MpdVHLLEGenerator(TString fileName, Bool_t isCascade) : FairGenerator(), fInputFile(NULL), -fFileName(fileName) { +fFileName(fileName), +fFreezout(NULL){ // fFileName = fileName; cout << "-I MpdVHLLEGenerator: Opening input file " << fFileName << endl; fInputFile = new TFile(fFileName.Data()); @@ -31,10 +33,13 @@ fFileName(fileName) { fDstTree->SetBranchAddress("y", fY); fDstTree->SetBranchAddress("z", fZ); fDstTree->SetBranchAddress("E", fE); + fDstTree->SetBranchAddress("t", fT); fDstTree->SetBranchAddress("npart", &fNpart); fDstTree->SetBranchAddress("id", fPID); fEventNumber = 0; + MpdFreezoutGenerator *freezgen = MpdFreezoutGenerator::Instance(); + fFreezout = freezgen->GetArray(); } MpdVHLLEGenerator::~MpdVHLLEGenerator() { @@ -66,9 +71,11 @@ Bool_t MpdVHLLEGenerator::ReadEvent(FairPrimaryGenerator* primGen) { // event->SetB(b); event->MarkSet(kTRUE); } - + fFreezout->Clear(); for (Int_t iTrack = 0; iTrack < fNpart; iTrack++) { primGen->AddTrack(fPID[iTrack], fPx[iTrack], fPy[iTrack], fPz[iTrack], fX[iTrack], fY[iTrack], fZ[iTrack]); + TLorentzVector *freezpos = (TLorentzVector*)fFreezout->ConstructedAt(iTrack); + freezpos->SetXYZT(fX[iTrack],fY[iTrack],fZ[iTrack],fT[iTrack]); // cout << iTrack << " " << fPID[iTrack] << " " << // fPx[iTrack] << " " << fPy[iTrack] << " " << fPz[iTrack] << " " << // fX[iTrack] << " " << fY[iTrack] << " " << fZ[iTrack] << endl; diff --git a/generators/MpdVHLLEGenerator.h b/generators/MpdVHLLEGenerator.h index 59eba3fb07ba0df262e8d6509901039d42d2225b..6a271926937808fec5c5eddac590e735dd7410dc 100644 --- a/generators/MpdVHLLEGenerator.h +++ b/generators/MpdVHLLEGenerator.h @@ -14,6 +14,7 @@ #include "FairPrimaryGenerator.h" #include "TFile.h" #include "TChain.h" +#include "MpdFreezoutGenerator.h" using namespace std; using namespace TMath; @@ -48,9 +49,11 @@ private: Float_t fY[dim]; //! Float_t fZ[dim]; //! Float_t fE[dim]; //! + Float_t fT[dim]; //! Int_t fPID[dim]; //! Int_t fNpart; //! Int_t fEventNumber; //! + TClonesArray *fFreezout; //! TString fBranch; //! treefin corresponds to hydro + cascade, treeini -- to hydro calculations only void SetCascade(Bool_t flag) {