X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=TPC%2FAliTPCDisplayClusters.C;h=df91baf2330820f9bc5591ac34676da72d11ec11;hb=176a07b9564c9cba26af6a735c749fdca7095fb9;hp=89588af14ef4d67a0b618c5c5e73b208b7812de2;hpb=afc42102c4f0db8453dcb06ca5063a72216b7d88;p=u%2Fmrichter%2FAliRoot.git diff --git a/TPC/AliTPCDisplayClusters.C b/TPC/AliTPCDisplayClusters.C index 89588af14ef..df91baf2330 100644 --- a/TPC/AliTPCDisplayClusters.C +++ b/TPC/AliTPCDisplayClusters.C @@ -1,4 +1,23 @@ -Int_t AliTPCDisplayClusters(Int_t eventn) { +/**************************************************************************** + * Origin: I.Belikov, CERN, Jouri.Belikov@cern.ch * + ****************************************************************************/ + +#ifndef __CINT__ +#include +#include +#include +#include +#include +#include +#include +#include + +#include "AliTPCParam.h" +#include "AliClusters.h" +#include "AliTPCcluster.h" +#endif + +Int_t AliTPCDisplayClusters(Int_t eventn=0, Int_t noiseth=15) { cerr<<"Displaying clusters...\n"; TFile *file=TFile::Open("galice.root"); @@ -7,7 +26,7 @@ Int_t AliTPCDisplayClusters(Int_t eventn) { TFile *cf=TFile::Open("AliTPCclusters.root"); if (!cf->IsOpen()){cerr<<"Can't open AliTPCclusters.root !\n"; return 3;} - AliTPCParam *dig=(AliTPCParam *)cf->Get("75x40_100x60"); + AliTPCParam *dig=(AliTPCParam *)cf->Get("75x40_100x60_150x60"); if (!dig) {cerr<<"TPC parameters have not been found !\n"; return 2;} TCanvas *c1=new TCanvas("cdisplay", "Cluster display",0,0,700,730); @@ -18,40 +37,63 @@ Int_t AliTPCDisplayClusters(Int_t eventn) { c1->SetTheta(90.); c1->SetPhi(0.); - AliTPCClustersArray *ca=new AliTPCClustersArray; - ca->Setup(dig); - ca->SetClusterType("AliTPCcluster"); char cname[100]; sprintf(cname,"TreeC_TPC_%d",eventn); + TTree *cTree=(TTree *)cf->Get(cname); + if (!cTree) { + cerr<<"Can't find tree : "<ConnectTree(cname); - Int_t nrows=Int_t(ca->GetTree()->GetEntries()); + AliClusters *clusters=new AliClusters(); + clusters->SetClass("AliTPCcluster"); + + cTree->SetBranchAddress("Segment",&clusters); + + Int_t nrows=Int_t(cTree->GetEntries()); for (Int_t n=0; nLoadEntry(n); + cTree->GetEvent(n); Int_t sec,row; - dig->AdjustSectorRow(s->GetID(),sec,row); - AliTPCClustersRow &clrow = *ca->GetRow(sec,row); - Int_t ncl=clrow.GetArray()->GetEntriesFast(); + dig->AdjustSectorRow(clusters->GetID(),sec,row); + TClonesArray &clrow=*clusters->GetArray(); + Int_t ncl=clrow.GetEntriesFast(); TPolyMarker3D *pm=new TPolyMarker3D(ncl); while (ncl--) { AliTPCcluster *cl=(AliTPCcluster*)clrow[ncl]; Double_t x=dig->GetPadRowRadii(sec,row), y=cl->GetY(), z=cl->GetZ(); + if (cl->GetQ()AdjustCosSin(sec,cs,sn); tmp = x*cs-y*sn; y= x*sn+y*cs; x=tmp; pm->SetPoint(ncl,x,y,z); } - ca->ClearRow(sec,row); + clrow.Clear(); pm->SetMarkerSize(1); pm->SetMarkerColor(2); pm->SetMarkerStyle(1); pm->Draw(); } - delete ca; + delete cTree; + delete dig; cf->Close(); TGeometry *geom=(TGeometry*)file->Get("AliceGeom"); + TNode * main = (TNode*)((geom->GetListOfNodes())->First()); + TIter next(main->GetListOfNodes()); + TNode *module=0; + while((module = (TNode*)next())) { + char ch[100]; + sprintf(ch,"%s\n",module->GetTitle()); + //printf("%s\n",module->GetTitle()); + if (ch[0]=='T'&&ch[1]=='P' && ch[2]=='C') //if TPC draw + module->SetVisibility(3); + else + module->SetVisibility(-1); + } + + geom->Draw("same"); c1->Modified(); c1->Update(); file->Close(); return 0; } +