1 void AliTPCTestClustering() {
2 const char *pname="Param1";
3 const char *tname="TreeD0_Param1";
5 // Dynamically link some shared libs
6 if (gClassTable->GetID("AliRun") < 0) {
7 gROOT->LoadMacro("loadlibs.C");
14 // Connect the Root Galice file containing Geometry, Kine and Hits
15 TFile *file = (TFile*)gROOT->GetListOfFiles()->FindObject("galice.root");
16 if (!file) file = new TFile("galice.root");
18 // Get AliRun object from file or create it if not on file
20 gAlice = (AliRun*)file->Get("gAlice");
21 if (gAlice) printf("AliRun object found on file\n");
22 if (!gAlice) gAlice = new AliRun("gAlice","Alice test program");
27 AliTPC *TPC = (AliTPC*)gAlice->GetDetector("TPC");
28 int ver=TPC->IsVersion();
29 cerr<<"TPC version "<<ver<<" has been found !\n";
31 AliTPCD *dig=(AliTPCD*)file->Get(pname);
32 if (dig!=0) TPC->SetDigParam(dig);
33 else cerr<<"Warning: default TPC parameters will be used !\n";
37 cerr<<"Making clusters...\n";
41 cerr<<"Looking for clusters...\n";
42 TPC->Digits2Clusters();
45 cerr<<"Invalid TPC version !\n";
48 TClonesArray *c=TPC->Clusters();
49 int n=c->GetEntriesFast();
50 cerr<<"Number of clusters "<<n<<" \n";
52 AliTPCParam *par=&TPC->GetDigParam()->GetParam();
54 TPolyMarker3D *pm=new TPolyMarker3D(n);
55 for (int i=0; i<n; i++) {
56 AliTPCcluster *cl=(AliTPCcluster *)c->UncheckedAt(i);
58 Double_t xx=x[0], yy=x[1], zz=x[2];
59 pm->SetPoint(i,xx,yy,zz);
62 c1=new TCanvas("c1", "Cluster display",0,0,700,730);
63 TView *v=new TView(1);
64 v->SetRange(-430,-560,-430,430,560,1710);
72 pm->SetMarkerColor(2);
73 pm->SetMarkerStyle(1);
76 gAlice->GetGeometry()->Draw("same");