]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - EVE/alice-macros/MUON_displaySimu.C
Make macros compilable with ACLiC
[u/mrichter/AliRoot.git] / EVE / alice-macros / MUON_displaySimu.C
index 2ad38c056e2fe667de0047dfb30ed5a382c210e7..4fa6fa7808a011290aac70eba61bbb318cd4951a 100644 (file)
@@ -1,4 +1,4 @@
-// $Id: MUON_display.C 24485 2008-03-13 15:27:38Z mtadel $
+// $Id$
 // Main authors: Matevz Tadel & Alja Mrak-Tadel: 2006, 2007
 
 /**************************************************************************
@@ -7,18 +7,21 @@
  * full copyright notice.                                                 *
  **************************************************************************/
 
+/// \ingroup evemacros
+/// \file MUON_displaySimu.C
+///
+/// \author B. Vulpescu, LPC
+
 class AliEveMUONData;
 class AliEveEventManager;
 
 AliEveMUONData     *g_muon_data       = 0;
-AliEveEventManager *g_muon_last_event = 0;
 
 Int_t  g_currentEvent = -1;
 Bool_t g_fromRaw      = kFALSE;
 
-AliMagFMaps *g_field = 0;
 
-void MUON_displaySimu(Bool_t fromRaw = kFALSE, Bool_t showTracks = kTRUE)
+void MUON_displaySimu(Bool_t fromRaw = kFALSE, Bool_t showTracks = kTRUE, Bool_t clustersFromESD = kTRUE)
 {
   //
   // display from simulated digits (or produced raw data) 
@@ -28,41 +31,38 @@ void MUON_displaySimu(Bool_t fromRaw = kFALSE, Bool_t showTracks = kTRUE)
   if (!AliMpSegmentation::Instance()) AliMpCDB::LoadMpSegmentation();
   if (!AliMpDDLStore::Instance())     AliMpCDB::LoadDDLStore();
 
-  if (g_field == 0) {
-    printf("Loading field map...\n");
-    g_field = new AliMagFMaps("Maps","Maps", 1, 1., 10., AliMagFMaps::k5kG);
-    AliTracker::SetFieldMap(g_field, kFALSE);
-    AliMUONTrackExtrap::SetField(AliTracker::GetFieldMap());
-  }
+  // set the magnetic field for track extrapolations
+  AliEveEventManager::AssertMagField();
+  AliMUONTrackExtrap::SetField();
 
   TTree* dt = 0;
   TTree* ct = 0;
   TTree* ht = 0;
 
-  if (gAliEveEvent == 0) {
+  if (AliEveEventManager::GetMaster() == 0) {
     printf("No alieve event: use alieve_init(...) \n");
     return;
   }
 
-  if (g_currentEvent == gAliEveEvent->GetEventId()) {
+  if (g_currentEvent == AliEveEventManager::GetMaster()->GetEventId()) {
     if (g_fromRaw == fromRaw) {
       printf("Same event... \n");
       return;
     } else {
       if (g_fromRaw) {
        printf("Same event with digits.\n");
-       gAliEveEvent->GotoEvent(g_currentEvent);
+       AliEveEventManager::GetMaster()->GotoEvent(g_currentEvent);
       } else {
        printf("Same event with raw.\n");
-       gAliEveEvent->GotoEvent(g_currentEvent);
+       AliEveEventManager::GetMaster()->GotoEvent(g_currentEvent);
       }
     }
   }
 
   g_fromRaw = fromRaw;
 
-  TString dataPath = TString(gAliEveEvent->GetTitle());
-  dataPath.Append("/rawmuon.root");
+  TString dataPath = TString(AliEveEventManager::GetMaster()->GetTitle());
+  dataPath.Append("/raw.root");
 
   AliRunLoader* rl =  AliEveEventManager::AssertRunLoader();
   g_muon_data = new AliEveMUONData;
@@ -85,20 +85,21 @@ void MUON_displaySimu(Bool_t fromRaw = kFALSE, Bool_t showTracks = kTRUE)
     }
   }
 
-  rl->LoadRecPoints("MUON");
-  ct = rl->GetTreeR("MUON", false);
-
-  TString esdDataPath = TString(gAliEveEvent->GetTitle());
+  TString esdDataPath = TString(AliEveEventManager::GetMaster()->GetTitle());
   esdDataPath.Append("/AliESDs.root");
-  g_muon_data->LoadRecPointsFromESD(esdDataPath.Data());
+  if (clustersFromESD) {
+    g_muon_data->LoadRecPointsFromESD(esdDataPath.Data());
+  } else {
+    rl->LoadRecPoints("MUON");
+    ct = rl->GetTreeR("MUON", false);
+    g_muon_data->LoadRecPoints(ct);
+  }
   
   rl->LoadHits("MUON");
   ht = rl->GetTreeH("MUON", false);
   g_muon_data->LoadHits(ht);
   
-  g_muon_last_event = gAliEveEvent;
-
-  g_currentEvent = g_muon_last_event->GetEventId();
+  g_currentEvent = AliEveEventManager::GetMaster()->GetEventId();
 
   gStyle->SetPalette(1, 0);
 
@@ -106,7 +107,7 @@ void MUON_displaySimu(Bool_t fromRaw = kFALSE, Bool_t showTracks = kTRUE)
 
   TEveElementList* l = new TEveElementList("MUONChambers");
   l->SetTitle("MUON chambers");
-  l->SetMainColor(Color_t(2));
+  l->SetMainColor(2);
   gEve->AddElement(l);
 
   for (Int_t ic = 0; ic < 14; ic++)
@@ -137,7 +138,7 @@ void MUON_ESD_tracks()
   AliESDEvent* esd = AliEveEventManager::AssertESD();
 
   TEveTrackList* lt = new TEveTrackList("ESD-Tracks");
-  lt->SetMainColor(Color_t(6));
+  lt->SetMainColor(6);
   //lt->SetMUON();
 
   gEve->AddElement(lt);
@@ -167,18 +168,18 @@ void MUON_ESD_tracks()
 //______________________________________________________________________________
 void MUON_Ref_tracks()
 {
-  TString dataPathESD = TString(gAliEveEvent->GetTitle());
+  TString dataPathESD = TString(AliEveEventManager::GetMaster()->GetTitle());
   dataPathESD.Append("/AliESDs.root");
-  TString dataPathSIM = TString(gAliEveEvent->GetTitle());
+  TString dataPathSIM = TString(AliEveEventManager::GetMaster()->GetTitle());
   dataPathSIM.Append("/");
 
   AliMUONRecoCheck recoCheck(dataPathESD.Data(),dataPathSIM.Data());
-  AliMUONVTrackStore* trackRefStore = recoCheck.ReconstructibleTracks(gAliEveEvent->GetEventId());
+  AliMUONVTrackStore* trackRefStore = recoCheck.ReconstructibleTracks(AliEveEventManager::GetMaster()->GetEventId());
   TIter next(trackRefStore->CreateIterator());
   AliMUONTrack* trackRef;
 
   TEveTrackList* lt = new TEveTrackList("Ref-Tracks");
-  lt->SetMainColor(Color_t(6));
+  lt->SetMainColor(6);
 
   gEve->AddElement(lt);
 
@@ -210,7 +211,7 @@ void MUON_MC_tracks()
   Int_t nTracks  = stack->GetNtrack();
 
   TEveTrackList* lt = new TEveTrackList("MC-Tracks");
-  lt->SetMainColor(Color_t(6));
+  lt->SetMainColor(6);
   //lt->SetMUON();
 
   gEve->AddElement(lt);