X-Git-Url: http://git.uio.no/git/?p=u%2Fmrichter%2FAliRoot.git;a=blobdiff_plain;f=STEER%2FAliVertexGenFile.cxx;h=60c3d0af07c42273ebc91ec26aff90044eb58c60;hp=b2020b45ae9be68a160aeaec46e4cc147899524a;hb=2524c56fba4a86dcf43cea061a46c0def80b5b5b;hpb=04bae0a025ce3010d7eccaeadb9298aaef2890b8 diff --git a/STEER/AliVertexGenFile.cxx b/STEER/AliVertexGenFile.cxx index b2020b45ae9..60c3d0af07c 100644 --- a/STEER/AliVertexGenFile.cxx +++ b/STEER/AliVertexGenFile.cxx @@ -26,12 +26,14 @@ /////////////////////////////////////////////////////////////////////////////// -#include "AliVertexGenFile.h" -#include "AliHeader.h" -#include "AliGenEventHeader.h" +#include #include #include -#include + +#include "AliVertexGenFile.h" +#include "AliLog.h" +#include "AliGenEventHeader.h" +#include "AliHeader.h" ClassImp(AliVertexGenFile) @@ -65,13 +67,15 @@ AliVertexGenFile::AliVertexGenFile(const char* fileName, TDirectory* dir = gDirectory; fFile = TFile::Open(fileName); - if (!fFile) { - Error("AliVertexGenFile", "could not open file %s", fileName); + if (!fFile || !fFile->IsOpen()) { + AliError(Form("could not open file %s", fileName)); + delete fFile; + fFile = NULL; return; } fTree = (TTree*) fFile->Get("TE"); if (!fTree) { - Error("AliVertexGenFile", "not header tree found in file %s", fileName); + AliError(Form("no header tree found in file %s", fileName)); dir->cd(); return; } @@ -86,7 +90,7 @@ AliVertexGenFile::~AliVertexGenFile() { // clean up - fFile->Close(); + if (fFile) fFile->Close(); delete fFile; delete fHeader; } @@ -98,13 +102,18 @@ TVector3 AliVertexGenFile::GetVertex() // get the vertex from the event header tree Int_t entry = fEvent++ / fEventsPerEntry; + if (!fTree) { + AliError("no header tree"); + return TVector3(0,0,0); + } + if (fTree->GetEntry(entry) <= 0) { - Error("GetVertex", "error loading entry %d", entry); + AliError(Form("error loading entry %d", entry)); return TVector3(0,0,0); } if (!fHeader->GenEventHeader()) { - Error("GetVertex", "no generator event header"); + AliError("no generator event header"); return TVector3(0,0,0); }