-#ifndef AliMUONQADataMakerRec_H
-#define AliMUONQADataMakerRec_H
+#ifndef ALIMUONQADATAMAKERREC_H
+#define ALIMUONQADATAMAKERREC_H
/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
* See cxx source for full Copyright notice */
/// \class AliMUONQADataMakerRec
/// \brief MUON Quality assurance data maker
///
-// Author Christian Finck
// --- AliRoot header files ---
-class AliMUONVTrackStore;
-class AliMUONDigitMaker;
-class AliMUONVDigitStore;
-class AliMUONVTriggerStore;
-
-// --- ROOT system ---
-class TObjArray;
-class TArrayF;
-
#include "AliQADataMakerRec.h"
+class AliMUONVQADataMakerRec;
+
class AliMUONQADataMakerRec: public AliQADataMakerRec {
public:
- AliMUONQADataMakerRec();
- AliMUONQADataMakerRec(const AliMUONQADataMakerRec& qadm);
- AliMUONQADataMakerRec& operator=(const AliMUONQADataMakerRec& qadm);
+ AliMUONQADataMakerRec(Bool_t tracker=kTRUE, Bool_t trigger=kTRUE);
virtual ~AliMUONQADataMakerRec();
-
-private:
- /// Raw histograms indices
- enum ERaw {
- kRawBusPatch = 0, ///< Raw bus patch histogram index
- kRawCharge = 1, ///< Raw charge histogram index
- kRawBuspatchDDL = 2, ///< Raw buspatch hit map histogram per DDL index
- kTriggerScalersBP = 22, ///< Trigger scalers on BP histogram per chamber index
- kTriggerScalersNBP = 23, ///< Trigger scalers on NBP histogram per chamber index
- kTriggerScalersDisplay = 24 ///< Trigger scalers display histogram per chamber index
- };
-
- /// Rec points histograms indices
- enum ERecPoints {
- kTriggerDigitsBendPlane = 0, ///< Trigger digits on BP histogram index
- kTriggerDigitsNonBendPlane = 1, ///< Trigger digits on NBP histogram index
- kTriggeredBoards = 2, ///< Triggered boards histogram index
- kTriggerDigitsDisplay = 3, ///< Trigger digits display histogram per plane index
- kTriggerBoardsDisplay = 11 ///< Triggered boards display histogram index
- };
-
- /// ESD histograms indices
- enum EESD {
- kESDnTracks = 0, ///< ESD nTrack histogram index
- kESDMomentum = 1, ///< ESD momentum histogram index
- kESDPt = 2, ///< ESD Pt histogram index
- kESDRapidity = 3, ///< ESD Rapidity histogram index
- kESDClusterHitMap = 4 ///< ESD Cluster hit map histogram index
- };
- virtual void StartOfDetectorCycle();
+ /// Return tracker sub-qadatamaker
+ AliMUONVQADataMakerRec* Tracker() const { return fTracker; }
+ /// Return trigger sub-qadatamaker
+ AliMUONVQADataMakerRec* Trigger() const { return fTrigger; }
+
+ virtual void InitDigits();
+ virtual void InitESDs();
+ virtual void InitRaws();
+ virtual void InitRecPoints();
- virtual void InitRaws();
- virtual void InitRecPoints();
- virtual void InitESDs();
+ virtual void StartOfDetectorCycle();
+
+ void MakeDigits();
- virtual void MakeRaws(AliRawReader* rawReader);
- virtual void MakeRecPoints(TTree* recpo);
- virtual void MakeESDs(AliESDEvent* esd) ;
- virtual void EndOfDetectorCycle(AliQA::TASKINDEX_t task, TObjArray* list);
+ virtual void MakeDigits(TTree* dig);
+ virtual void MakeESDs(AliESDEvent* esd) ;
+ virtual void MakeRaws(AliRawReader* rawReader);
+ virtual void MakeRecPoints(TTree* recpo);
+
+ virtual void EndOfDetectorCycle(AliQAv1::TASKINDEX_t task, TObjArray** list);
- void DisplayTriggerInfo(AliQA::TASKINDEX_t task);
- Bool_t InitDisplayHistos(AliQA::TASKINDEX_t task);
- Bool_t AddSortedPoint(Float_t currVal, TArrayF& position, const Float_t kResetValue);
+ virtual void ResetDetector(AliQAv1::TASKINDEX_t task);
- Bool_t fIsInitRaws; //!< info if InitRaws() went ok
- Bool_t fIsInitRecPoints; //!< info if InitRecPoints() went ok
- Bool_t fIsInitESDs; //!< info if InitESDs() went ok
+ using AliQADataMakerRec::Add2List;
+ using AliQADataMakerRec::GetData;
- AliMUONVDigitStore* fDigitStore; //!< pointer to digits store
- AliMUONVTriggerStore* fTriggerStore; //!< pointer to trigger store
- AliMUONDigitMaker* fDigitMaker; //!< pointer to digit maker
+ Int_t Add2List(TH1 * hist, const Int_t index, AliQAv1::TASKINDEX_t task, const Bool_t expert, const Bool_t image, const Bool_t saveForCorr);
+
+ TObject* GetData(AliQAv1::TASKINDEX_t task, const Int_t index) ;
- ClassDef(AliMUONQADataMakerRec,2) // MUON Quality assurance data maker
+private:
+ /// Not implemented
+ AliMUONQADataMakerRec(const AliMUONQADataMakerRec& qadm);
+ /// Not implemented
+ AliMUONQADataMakerRec& operator=(const AliMUONQADataMakerRec& qadm);
+
+ TObjArray** GetList(AliQAv1::TASKINDEX_t taks);
+
+private:
+ AliMUONVQADataMakerRec* fTracker; ///< tracker sub-qadatamaker
+ AliMUONVQADataMakerRec* fTrigger; ///< trigger sub-qadatamaker
+
+ ClassDef(AliMUONQADataMakerRec,10) // MUON Quality assurance data maker
};
#endif