]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - EVE/alice-macros/MUON_displaySimu.C
AliInfo displays better than std::cout
[u/mrichter/AliRoot.git] / EVE / alice-macros / MUON_displaySimu.C
index 470f5199326a8838d84641ffa375c53c8266d1f3..8813a490277bbb8410b61ebbe6f8dd3bfff0934a 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,16 +7,50 @@
  * full copyright notice.                                                 *
  **************************************************************************/
 
+/// \ingroup evemacros
+/// \file MUON_displaySimu.C
+///
+/// \author B. Vulpescu, LPC
+
+#if !defined(__CINT__) || defined(__MAKECINT__)
+#include <Riostream.h>
+#include <Rtypes.h>
+#include <TTree.h>
+#include <TStyle.h>
+#include <TString.h>
+#include <TSystem.h>
+#include <TEveManager.h>
+#include <TEveElement.h>
+#include <TEveTrack.h>
+
+#include <AliMpSegmentation.h>
+#include <AliMpDDLStore.h>
+#include <AliMpCDB.h>
+#include <AliMUONRecoCheck.h>
+#include <AliMUONTrack.h>
+#include <AliMUONTrackExtrap.h>
+#include <AliMUONVTrackStore.h>
+#include <AliStack.h>
+#include <AliRunLoader.h>
+#include <AliESDEvent.h>
+#include <AliESDMuonTrack.h>
+#include <AliEveEventManager.h>
+#include <AliEveMUONData.h>
+#include <AliEveMUONChamber.h>
+#include <AliEveMUONTrack.h>
+#else
 class AliEveMUONData;
 class AliEveEventManager;
+#endif
 
 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_ESD_tracks();
+void MUON_Ref_tracks();
+void MUON_MC_tracks();
 
 void MUON_displaySimu(Bool_t fromRaw = kFALSE, Bool_t showTracks = kTRUE, Bool_t clustersFromESD = kTRUE)
 {
@@ -28,41 +62,38 @@ void MUON_displaySimu(Bool_t fromRaw = kFALSE, Bool_t showTracks = kTRUE, Bool_t
   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;
@@ -71,21 +102,21 @@ void MUON_displaySimu(Bool_t fromRaw = kFALSE, Bool_t showTracks = kTRUE, Bool_t
     rl->LoadDigits("MUON");
     dt = rl->GetTreeD("MUON", false);
     if (dt == 0) {
-      cout << "No digits produced!" << endl;
+      AliInfo("No digits produced!");
     } else {
-      cout << "With aliroot digits!" << endl;
+      AliInfo("With aliroot digits!");
       g_muon_data->LoadDigits(dt);
     }
   } else {
     if (gSystem->AccessPathName(dataPath.Data(),kFileExists)) {
-      cout << "No raw data produced!" << endl;
+      AliInfo("No raw data produced!");
     } else {
-      cout << "With raw digits!" << endl;
+      AliInfo("With raw digits!");
       g_muon_data->LoadRaw(dataPath.Data());
     }
   }
 
-  TString esdDataPath = TString(gAliEveEvent->GetTitle());
+  TString esdDataPath = TString(AliEveEventManager::GetMaster()->GetTitle());
   esdDataPath.Append("/AliESDs.root");
   if (clustersFromESD) {
     g_muon_data->LoadRecPointsFromESD(esdDataPath.Data());
@@ -99,9 +130,7 @@ void MUON_displaySimu(Bool_t fromRaw = kFALSE, Bool_t showTracks = kTRUE, Bool_t
   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);
 
@@ -170,13 +199,13 @@ 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;
 
@@ -203,13 +232,10 @@ void MUON_Ref_tracks()
 //______________________________________________________________________________
 void MUON_MC_tracks()
 {
-  Double_t RADDEG = 180.0/TMath::Pi();
-
   AliRunLoader* rl =  AliEveEventManager::AssertRunLoader();
   rl->LoadKinematics();
   AliStack* stack = rl->Stack();
 
-  Int_t nPrimary = stack->GetNprimary();
   Int_t nTracks  = stack->GetNtrack();
 
   TEveTrackList* lt = new TEveTrackList("MC-Tracks");
@@ -218,7 +244,6 @@ void MUON_MC_tracks()
 
   gEve->AddElement(lt);
 
-  Int_t pdgCode;
   TParticle *part;
   TEveRecTrack rt;
 
@@ -228,7 +253,7 @@ void MUON_MC_tracks()
   {
     index = g_muon_data->GetTrack(i);
     if (index >= nTracks) {
-      cout << "TEveHit track index larger than number in stack!" << endl;
+      AliInfo("TEveHit track index larger than number in stack!");
       continue;
     }