if(!c) return;
Int_t det = c->GetDetector();
- AliEveTRDLoader *loader = NULL;
+ AliEveTRDLoader *loader(NULL);
switch(typ){
+ case 3:
+ loader = new AliEveTRDLoaderSim("MC");
+ if(!loader->Open("galice.root")) delete loader;
+ else{
+ loader->SetDataType(AliEveTRDLoader::kTRDHits | AliEveTRDLoader::kTRDDigits | AliEveTRDLoader::kTRDClusters);
+ break;
+ }
case 0:
loader = new AliEveTRDLoader("Hits");
- if(!loader->Open("TRD.Hits.root")){
- delete loader;
- return;
+ if(!loader->Open("TRD.Hits.root")) delete loader;
+ else{
+ loader->SetDataType(AliEveTRDLoader::kTRDHits);
+ if(typ!=3) break;
}
- loader->SetDataType(AliEveTRDLoader::kTRDHits);
- break;
case 1:
- loader = new AliEveTRDLoader("Digits");
- if(!loader->Open("TRD.Digits.root")){
- delete loader;
- return;
+ if(!loader) loader = new AliEveTRDLoader("Digits");
+ if(!loader->Open("TRD.Digits.root")){
+ if(typ==1) delete loader;
+ } else {
+ loader->SetDataType(AliEveTRDLoader::kTRDDigits);
+ if(typ!=3) break;
}
- loader->SetDataType(AliEveTRDLoader::kTRDDigits);
- break;
case 2:
- loader = new AliEveTRDLoader("Clusters");
- if(!loader->Open("TRD.RecPoints.root")){
- delete loader;
- return;
- }
- loader->SetDataType(AliEveTRDLoader::kTRDClusters);
- break;
- case 3:
- loader = new AliEveTRDLoaderSim("MC");
- if(!loader->Open("galice.root")){
- delete loader;
- return;
+ if(!loader) loader = new AliEveTRDLoader("Clusters");
+ if(!loader->Open("TRD.RecPoints.root")){
+ if(typ ==2) delete loader;
+ } else {
+ loader->SetDataType(AliEveTRDLoader::kTRDClusters);
+ break;
}
- loader->SetDataType(AliEveTRDLoader::kTRDHits | AliEveTRDLoader::kTRDDigits | AliEveTRDLoader::kTRDClusters);
- break;
default: return;
}
+ if(!loader) return;
loader->AddChambers(AliTRDgeometry::GetSector(det),AliTRDgeometry::GetStack(det), AliTRDgeometry::GetLayer(det));
// load first event
Unload();
- TTree *t = 0x0;
- TFile *f = TFile::Open(Form("%s/%s", fDir.Data(), fFilename.Data()));
- if(! f->cd(Form("Event%d", ev))){
- AliError(Form("Couldn't find event %d in file \"%s/%s\".", ev, fDir.Data(), fFilename.Data()));
+ TTree *t(NULL); TFile *f(NULL);
+ if(!(f = TFile::Open(Form("%s/%s", fDir.Data(), fFilename.Data())))){
+ AliWarning(Form("File not found \"%s/%s\".", fDir.Data(), fFilename.Data()));
+ return kFALSE;
+ }
+ if(!f->cd(Form("Event%d", ev))){
+ AliError(Form("Event[%d] not found in file \"%s/%s\".", ev, fDir.Data(), fFilename.Data()));
f->Close(); //delete f;
return kFALSE;
}
if(fDataType&kTRDHits){
- t = (TTree*)gDirectory->Get("TreeH");
- if(!t) return kFALSE;
+ if(!(t = (TTree*)gDirectory->Get("TreeH"))){
+ AliError(Form("Tree[TreeH] not found for Event[%d].", ev));
+ return kFALSE;
+ }
if(!LoadHits(t)) return kFALSE;
- } else if(fDataType&kTRDDigits){
- t = (TTree*)gDirectory->Get("TreeD");
- if(!t) return kFALSE;
+ }
+ if(fDataType&kTRDDigits){
+ if(!(t = (TTree*)gDirectory->Get("TreeD"))){
+ AliError(Form("Tree[TreeD] not found for Event[%d].", ev));
+ return kFALSE;
+ }
if(!LoadDigits(t)) return kFALSE;
- } else if(fDataType&kTRDClusters){
- t = (TTree*)gDirectory->Get("TreeR");
- if(!t) return kFALSE;
+ }
+ if(fDataType&kTRDClusters){
+ if(!(t = (TTree*)gDirectory->Get("TreeR"))){
+ AliError(Form("Tree[TreeR] not found for Event[%d].", ev));
+ return kFALSE;
+ }
if(!LoadClusters(t)) return kFALSE;
- } else if(fDataType&kTRDTracklets){
- t = (TTree*)gDirectory->Get("tracklets");
- if(!t) return kFALSE;
+ }
+ if(fDataType&kTRDTracklets){
+ if(!(t = (TTree*)gDirectory->Get("tracklets"))){
+ AliError(Form("Tree[tracklets] not found for Event[%d].", ev));
+ return kFALSE;
+ }
if(!LoadTracklets(t)) return kFALSE;
- } else AliWarning("Please select first the type of data that you want to monitor and then hit the \"Load\" button.");
+ }// else AliWarning("Please select first the type of data that you want to monitor and then hit the \"Load\" button.");
f->Close(); //delete f;
TObjArray *clusters = new TObjArray();
tC->SetBranchAddress("TRDcluster", &clusters);
- AliEveTRDChamber *chmb = 0x0;
- AliTRDcluster *c=0x0;
- for(int idet=0; idet<540; idet++){
+ AliEveTRDChamber *chmb(NULL);
+ AliTRDcluster *c(NULL);
+ for(int idet=0; idet<AliTRDgeometry::kNdet; idet++){
tC->GetEntry(idet);
if(!clusters->GetEntriesFast()) continue;
- c = (AliTRDcluster*)clusters->UncheckedAt(0);
- if(!c) continue;
+ if(!(c = (AliTRDcluster*)clusters->UncheckedAt(0))) continue;
if((chmb = GetChamber(c->GetDetector()))) chmb->LoadClusters(clusters);
}
return kTRUE;
AliEveTRDChamber *chmb;
AliTRDdigitsManager dm;
dm.ReadDigits(tD);
- for(int idet=0; idet<540; idet++){
+ for(int idet=0; idet<AliTRDgeometry::kNdet; idet++){
if(!(chmb=GetChamber(idet))) continue;
// digits = dm.GetDigits(idet);
// if(!digits) continue;