Little fixes to bring the macros up to the ITSUv1 geometry (Yura)
authorshahoian <ruben.shahoyan@cern.ch>
Fri, 7 Nov 2014 11:55:24 +0000 (12:55 +0100)
committershahoian <ruben.shahoyan@cern.ch>
Fri, 7 Nov 2014 11:55:24 +0000 (12:55 +0100)
EVE/alice-macros/geom_gentle_itsU.C
EVE/alice-macros/itsU_clusters.C
EVE/macros/visscan_itsU.C

index 626c74b..6d1bf38 100644 (file)
@@ -125,37 +125,24 @@ TEveGeoShape* GetItsUpgradeGeom(Bool_t bPrint) {
   TEveGeoShape *itsU = new TEveGeoShape("ITSU");  
  
   // Loop on all ITSV nodes, count Layer volumes by checking names
-
-  Int_t nNodes = itsV->GetNodes()->GetEntries();
-  for (Int_t j=0; j<nNodes; j++) {
-    if (strstr(itsV->GetNodes()->At(j)->GetName(),gm->GetITSLayerPattern())) {
-
-
+  Int_t nLayers=gm->GetNLayers();
+  for (Int_t l=0; l<nLayers; l++) {
+      Int_t id=gm->GetFirstChipIndex(l);
+      Double_t loc[3]={0.,0.,0.}, glo[3];
+      gm->LocalToGlobal(id,loc,glo);
+      Double_t rMid=TMath::Sqrt(glo[0]*glo[0] + glo[1]*glo[1]);
+      Double_t dz=TMath::Abs(glo[2]); 
       
-      char laddnam[30];
-      snprintf(laddnam, 30, "%s%d", gm->GetITSLayerPattern(),j);
-      TGeoVolume* volLd = gGeoManager->GetVolume(laddnam);
-      TGeoTube *t=(TGeoTube*)volLd->GetShape();
-
-      if (bPrint) {
-       printf("%s   ",itsV->GetNodes()->At(j)->GetName());
-       printf(" r = (%3.2lf %3.2lf) ",t->GetRmin(),t->GetRmax());
-       printf(" z = %3.2lf ",t->GetDz());   
-       printf(" #lad = %d \n",gm->GetNLadders(j));   
-      }
-
       // Add Element to EVE
-      TGeoTube *layer = new TGeoTube(t->GetRmin(),t->GetRmax(),t->GetDz());
-      TEveGeoShape *elLayer = new TEveGeoShape(Form("%s%d",gm->GetITSLayerPattern(),j));    
+      TGeoTube *layer = new TGeoTube(rMid-0.25,rMid+0.25,dz+1.5);
+      TEveGeoShape *elLayer = 
+      new TEveGeoShape(Form("%s%d",gm->GetITSLayerPattern(),l));
       elLayer->SetShape(layer);
       elLayer->SetMainColor(kGreen);
-      elLayer->SetMainTransparency(90);
+      elLayer->SetMainTransparency(70/*90*/);
       itsU->AddElement(elLayer);
-
-    }
-
   }
+
   itsU->SetMainColor(kGreen);
   
   return itsU;
index bc5a58f..57898d4 100644 (file)
@@ -61,7 +61,6 @@ void itsU_clusters(TEveElement* cont=0, Float_t maxR=50)
   //  layClusters->SetOwnIds(kTRUE);
 
   Int_t layOld =-1;
-  Int_t nentr = (Int_t) cTree->GetEntries();
   cTree->GetEntry(0);
   for (int ilr=0;ilr<nlr;ilr++) {
     TClonesArray* clr = (TClonesArray*)layerClus.At(ilr);
@@ -70,9 +69,9 @@ void itsU_clusters(TEveElement* cont=0, Float_t maxR=50)
     Float_t maxRsqr = maxR*maxR;
     for (Int_t icl = 0; icl < ncl; ++icl) {
       AliITSUClusterPix *c = (AliITSUClusterPix*) clr->UncheckedAt(icl);
-      Int_t mod = c->GetVolumeId();
-      int lay,lad,det;
-      gm->GetModuleId(mod, lay,lad,det);
+      Int_t id = c->GetVolumeId();
+      int lay,sta,ssta,mod,chip;
+      gm->GetChipId(id, lay,sta,ssta,mod,chip);
       
       if (lay!=layOld) { // assumes order in the digits !
        layOld=lay;
@@ -93,8 +92,8 @@ void itsU_clusters(TEveElement* cont=0, Float_t maxR=50)
        layClusters->SetNextPoint(g[0], g[1], g[2]);
        AliITSUClusterPix *atp = new AliITSUClusterPix(*c);
        layClusters->SetPointId(atp);
-               printf("%d: mod %d: loc(%.4lf,%.4lf,%.4lf); glob(%.4lf,%.4lf,%.4lf); \n",
-                      icl,atp->GetVolumeId(), l[0],l[1],l[2], g[0],g[1],g[2]);
+//     printf("%d: mod %d: loc(%.4lf,%.4lf,%.4lf); glob(%.4lf,%.4lf,%.4lf); \n",
+//                    icl,atp->GetVolumeId(), l[0],l[1],l[2], g[0],g[1],g[2]);
       }
     }
   }
index cce0db8..a8be3c0 100644 (file)
@@ -94,7 +94,10 @@ void visscan_itsU(const TString& cdburi = "local://$ALICE_ROOT/OCDB",
   //==============================================================================
   // Registration of per-event macros
   //==============================================================================
+  exec->AddMacro(new AliEveMacro(AliEveMacro::kRunLoader, "REC Clusters ITS", "itsU_clusters.C+", "itsU_clusters"));
+  exec->AddMacro(new AliEveMacro(AliEveMacro::kESD, "REC Tracks", "esd_tracks.C+", "esd_tracks"));
 
+  /*
   exec->AddMacro(new AliEveMacro(AliEveMacro::kRunLoader, "SIM Track",   "kine_tracks.C+", "kine_tracks", "", kFALSE));
 
   exec->AddMacro(new AliEveMacro(AliEveMacro::kRunLoader, "SIM Hits ITS", "its_hits.C+",    "its_hits",    "", kFALSE));
@@ -176,7 +179,7 @@ void visscan_itsU(const TString& cdburi = "local://$ALICE_ROOT/OCDB",
     exec->AddMacro(new AliEveMacro(AliEveMacro::kRunLoader, "REC Clusters MUON", "muon_clusters.C+", "muon_clusters", "", kTRUE));
     exec->AddMacro(new AliEveMacro(AliEveMacro::kESD, "REC Tracks MUON", "esd_muon_tracks.C+", "esd_muon_tracks", "kTRUE,kFALSE", kTRUE));
   }
-
+  */
   //==============================================================================
   // Additional GUI components
   //==============================================================================