]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - MONITOR/AliMonitorTPC.cxx
Remove warning
[u/mrichter/AliRoot.git] / MONITOR / AliMonitorTPC.cxx
index 89251da43a0209e6ed71183e570f786d90cef0cc..8d646bf94ff462353600f82944ef4b650e1e3090 100644 (file)
 
 
 #include "AliMonitorTPC.h"
+#include "AliMonitorDataTPC.h"
+#include "AliMonitorHisto.h"
+#include "AliMonitorTrend.h"
+#include "AliTPCParam.h"
 #include "AliTPCRawStream.h"
 #include "AliTPCClustersRow.h"
 #include "AliTPCclusterMI.h"
 #include "AliTPCtrack.h"
+#include "AliRunLoader.h"
+#include "AliRawReader.h"
+#include <TFolder.h>
+#include <TTree.h>
 
 
-ClassImp(AliMonitorDataTPC) 
-
+ClassImp(AliMonitorTPC) 
 
-//_____________________________________________________________________________
-AliMonitorDataTPC::AliMonitorDataTPC()
-{
-  fPt = fEta = fPhi = NULL;
-  fSize = 0;
-}
 
 //_____________________________________________________________________________
-AliMonitorDataTPC::AliMonitorDataTPC(Int_t size)
+AliMonitorTPC::AliMonitorTPC(AliTPCParam* param)
 {
-  fPt = new Float_t[size];
-  fEta = new Float_t[size];
-  fPhi = new Float_t[size];
-  fSize = size;
-}
+// create a TPC monitor object with the given parameters
 
-//_____________________________________________________________________________
-AliMonitorDataTPC::~AliMonitorDataTPC()
-{
-  delete[] fPt;
-  delete[] fEta;
-  delete[] fPhi;
+  fParam = param;
+  fData = new AliMonitorDataTPC(10000);
 }
 
 //_____________________________________________________________________________
-void AliMonitorDataTPC::SetSize(Int_t size)
+AliMonitorTPC::AliMonitorTPC(const AliMonitorTPC& monitor) :
+  AliMonitor(monitor)
 {
-  if (size > fSize) {
-    delete[] fPt;
-    delete[] fEta;
-    delete[] fPhi;
-    fPt = new Float_t[size];
-    fEta = new Float_t[size];
-    fPhi = new Float_t[size];
-    fSize = size;
-  }
+  Fatal("AliMonitorTPC", "copy constructor not implemented");
 }
 
-
-
-ClassImp(AliMonitorTPC) 
-
-
 //_____________________________________________________________________________
-AliMonitorTPC::AliMonitorTPC(AliTPCParam* param)
+AliMonitorTPC& AliMonitorTPC::operator = (const AliMonitorTPC& /*monitor*/)
 {
-// create a TPC monitor object with the given parameters
-
-  fParam = param;
-  fData = new AliMonitorDataTPC(10000);
+  Fatal("operator =", "assignment operator not implemented");
+  return *this;
 }
 
 //_____________________________________________________________________________
@@ -126,7 +105,7 @@ void AliMonitorTPC::CreateHistos(TFolder* folder)
 
   fTrackPt = CreateHisto1("TrackPt", "pt distribution of tracks", 
                          90, 0, 3, "p_{t} [GeV/c]", "#Delta N/N",
-                         AliMonitorHisto::kNormEntries);
+                         AliMonitorHisto::kNormNone);
 
   fTrackEta = CreateHisto1("TrackEta", "eta distribution of tracks", 
                           100, -2, 2, "#eta", "#Delta N/N",
@@ -139,12 +118,28 @@ void AliMonitorTPC::CreateHistos(TFolder* folder)
 
   fTrackNCl = CreateHisto1("TrackNCl", "Number of clusters per track", 
                           200, 0, 200, "N_{clusters}", "#Delta N/N",
-                          AliMonitorHisto::kNormEntries);
+                          AliMonitorHisto::kNormNone);
 
   fTrackDEdxVsP = CreateHisto2("TrackDEdxVsP", "dE/dx of tracks", 
                               100, 0, 3, 100, 0, 200, 
                               "p [GeV/c]", "dE/dx", "#Delta N/N",
                               AliMonitorHisto::kNormEntries);
+
+  fTrackDEdx = CreateHisto1("TrackDEdx", "dE/dx of tracks with 0.4<p<1.0 GeV/c", 
+                              50, 0, 100, 
+                              "dE/dx", "#Delta N/N",
+                              AliMonitorHisto::kNormEntries);
+
+  fTrackEtaVsPhi = CreateHisto2("TrackEtaVsPhi", "#phi vs #eta", 
+                              20, -1, 1, 25, 0, 360, 
+                              "#eta", "#phi", "#Delta N/N",
+                              AliMonitorHisto::kNormNone);
+
+  fPtEtaVsPhi = CreateHisto2("PtEtaVsPhi", "#phi vs #eta", 
+                              20, -1, 1, 25, 0, 360, 
+                              "#eta", "#phi", "#Delta N/N",
+                              AliMonitorHisto::kNormNone);
+
 }
 
 
@@ -209,20 +204,25 @@ void AliMonitorTPC::FillHistos(AliRunLoader* runLoader,
   AliTPCtrack* track = new AliTPCtrack;
   tracks->SetBranchAddress("tracks", &track);
 
-  fNTracks->Fill(tracks->GetEntries());
-  fData->fNTracks = (Int_t) tracks->GetEntries();
-  fData->SetSize(fData->fNTracks);
-  for (Int_t i = 0; i < tracks->GetEntries(); i++) {
+  Int_t nTracks = (Int_t) tracks->GetEntries();
+  fNTracks->Fill(nTracks);
+  fData->SetNTracks(nTracks);
+  for (Int_t i = 0; i < nTracks; i++) {
     tracks->GetEntry(i);
     fTrackPt->Fill(track->Pt());
     fTrackEta->Fill(track->Eta());
     fTrackPhi->Fill(track->Phi() * TMath::RadToDeg());
+    if(track->Pt()>3.) {
+      fTrackEtaVsPhi->Fill(track->Eta(),track->Phi() * TMath::RadToDeg());
+      fPtEtaVsPhi->Fill(track->Eta(),track->Phi() * TMath::RadToDeg(),track->Pt());
+    }
     fTrackNCl->Fill(track->GetNumberOfClusters());
     fTrackDEdxVsP->Fill(track->P(), track->GetdEdx());
+    if(track->P()>0.4 && track->P()<1.0)
+      fTrackDEdx->Fill(track->GetdEdx());
 
-    fData->fPt[i] = track->Pt();
-    fData->fEta[i] = track->Eta();
-    fData->fPhi[i] = track->Phi() * TMath::RadToDeg();
+    fData->SetData(i, track->Pt(), track->Eta(), 
+                  track->Phi() * TMath::RadToDeg());
   }
 
   delete track;