]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - MUON/AliMUONManuPadPainter.cxx
Fix from for producing a dataset via the alien plugin. Redirecting the alien 'find...
[u/mrichter/AliRoot.git] / MUON / AliMUONManuPadPainter.cxx
index aaaff2024da037e948345695f9b629abb224dd34..a8e4774a97bfbe9a2d07c2589f53c491fcca939c 100644 (file)
 
 #include "AliMUONManuPadPainter.h"
 
+#include "AliLog.h"
+#include "AliMUONPainterGroup.h"
 #include "AliMUONPainterHelper.h"
 #include "AliMUONPainterPadStore.h"
+#include "AliMUONTrackerDataHistogrammer.h"
 #include "AliMUONVCalibParam.h"
 #include "AliMUONVDigit.h"
 #include "AliMUONVTrackerData.h"
 #include "AliMpPad.h"
 #include "AliMpSegmentation.h"
 #include "AliMpVSegmentation.h"
-#include "AliLog.h"
-#include <float.h>
+#include <TCanvas.h>
+#include <TH1.h>
 #include <TVirtualPad.h>
 #include <TVirtualX.h>
+#include <float.h>
 
 ///\class AliMUONManuPadPainter
 ///
@@ -57,6 +61,19 @@ fFillStyleBck(-1)
   /// ctor
 }
 
+//_____________________________________________________________________________
+AliMUONManuPadPainter::AliMUONManuPadPainter(TRootIOCtor* ioCtor)
+: AliMUONVPainter(ioCtor), 
+fDetElemId(-1), 
+fManuId(-1),
+fLineColorBck(-1),
+fLineWidthBck(-1),
+fFillColorBck(-1),
+fFillStyleBck(-1)
+{
+  /// ctor
+}
+
 //_____________________________________________________________________________
 AliMUONManuPadPainter::AliMUONManuPadPainter(const AliMUONVPainter& mother,
                                              Int_t detElemId,
@@ -144,6 +161,14 @@ AliMUONManuPadPainter::NameAtPosition(Double_t x, Double_t y) const
   return name;
 }
 
+//_____________________________________________________________________________
+Bool_t
+AliMUONManuPadPainter::IsIncluded() const
+{
+  /// whether this manu is included in the readout or not
+  return ( InteractiveReadOutConfig()->Manu(fDetElemId,fManuId) > 0 );
+}
+
 //_____________________________________________________________________________
 TString 
 AliMUONManuPadPainter::Describe(const AliMUONVTrackerData& data, Int_t dataIndex,
@@ -167,6 +192,33 @@ AliMUONManuPadPainter::Describe(const AliMUONVTrackerData& data, Int_t dataIndex
   }
 }
 
+//_____________________________________________________________________________
+void 
+AliMUONManuPadPainter::DrawHistogramClone(Double_t* values) const
+{
+  /// Draw histogram for pad at (values[0],values[1])
+  
+  if ( !values ) return;
+
+  AliMUONPainterGroup* group = Master()->PlotterGroup();
+  
+  if ( !group ) return; // no data to histogram in this painter
+    
+  AliMpPad pad = PadByPosition(values[0],values[1]);
+  
+  AliMUONVTrackerData* data = group->Data();
+  
+  AliMUONTrackerDataHistogrammer tdh(*data,0,-1);
+
+  fHistogram = tdh.CreateChannelHisto(fDetElemId, fManuId,
+                                      pad.GetLocation().GetSecond());
+  if (fHistogram) 
+  {
+    new TCanvas();
+    fHistogram->Draw();
+  }  
+}
+
 //_____________________________________________________________________________
 void
 AliMUONManuPadPainter::PaintArea(const AliMUONVTrackerData& data,