X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=MUON%2FAliMUONQADataMakerRec.h;h=899d1a2636b557c21ad4d46fbcf4898c601435e6;hb=4d019bab422f7f1f1fd4c6a1c472ab41a787f9a0;hp=29407d9ab1cdf7063862dcaf71b86853ffc12eca;hpb=4e25ac795836afea113484651fe7e4a9d3d2c95a;p=u%2Fmrichter%2FAliRoot.git diff --git a/MUON/AliMUONQADataMakerRec.h b/MUON/AliMUONQADataMakerRec.h index 29407d9ab1c..899d1a2636b 100644 --- a/MUON/AliMUONQADataMakerRec.h +++ b/MUON/AliMUONQADataMakerRec.h @@ -12,163 +12,58 @@ // --- AliRoot header files --- #include "AliQADataMakerRec.h" -#include "AliMUONRecoParam.h" -class AliMUONDigitMaker; -class AliMUONVDigitStore; -class AliMUONVTriggerStore; -class AliMUONVClusterStore; -class AliMUONVTrackerData; -class AliMUONVTrackerDataMaker; +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(); - - AliMUONVTrackerData* GetTrackerData() const; - -protected: - - 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 InitESDs(); + + virtual void StartOfDetectorCycle(); + + void MakeDigits(); + virtual void MakeDigits(TTree* dig); + virtual void MakeESDs(AliESDEvent* esd) ; virtual void MakeRaws(AliRawReader* rawReader); virtual void MakeRecPoints(TTree* recpo); - virtual void MakeESDs(AliESDEvent* esd) ; - virtual void DefaultEndOfDetectorCycle(AliQAv1::TASKINDEX_t) {} - virtual void EndOfDetectorCycle(AliQAv1::TASKINDEX_t task, TObjArray** list); -private: - /// Raw histograms indices - enum ERaw { - kTrackerData = 3, ///< Accumulated data - kTrackerBusPatchOccupancy = 4, ///< Bus patch occupancies - 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 - kTriggerScalersTime = 32 ///< Trigger scalers acquisition time 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 - kTriggerRPCi = 12, ///< Trigger chamber currents index - kTriggerRPChv = 13, ///< Trigger chamber HV index - kTriggerIDisplay = 14, ///< Trigger chamber currents display histogram index - kTriggerHVDisplay = 18, ///< Trigger chamber HV display histogram index - - kTrackerNumberOfClustersPerChamber = 100, ///< Tracker: number of clusters per chamber - kTrackerClusterMultiplicityPerChMean = 101, ///< cluster size per Ch: mean - kTrackerClusterMultiplicityPerChSigma = 102, ///< cluster size per Ch: dispersion - kTrackerClusterChargePerChMean = 103, ///< cluster charge per Ch: mean - kTrackerClusterChargePerChSigma = 104, ///< cluster charge per Ch: dispersion - - kTrackerClusterMultiplicityPerChamber = 200, ///< Tracker: cluster multiplicity per chamber - kTrackerClusterChargePerChamber = 300, ///< Tracker: cluster charge per chamber - kTrackerClusterHitMapPerChamber = 400, ///< Tracker: cluster position distribution per chamber - - kTrackerNumberOfClustersPerDE = 1000, ///< Tracker : number of clusters per DE - kTrackerClusterMultiplicityPerDEMean = 1001, ///< cluster size per DE: mean - kTrackerClusterChargePerDEMean = 1002, ///< cluster charge per DE: mean - - kTrackerClusterMultiplicityPerDE = 3000, ///< Tracker : cluster multiplicity per DE - kTrackerClusterChargePerDE = 5000 ///< Tracker : cluster charge per DE - }; + virtual void ResetDetector(AliQAv1::TASKINDEX_t task); - /// ESD histograms indices - enum EESD { - kESDnTracks = 0, ///< number of tracks - kESDMatchTrig = 1, ///< number of tracks matched with trigger - kESDMomentum = 2, ///< P distribution - kESDPt = 3, ///< Pt distribution - kESDRapidity = 4, ///< rapidity distribution - kESDChi2 = 5, ///< normalized chi2 distribution - kESDProbChi2 = 6, ///< distribution of probability of chi2 - - kESDClusterHitMap = 7, ///< cluster position distribution in chamber i - kESDnClustersPerTrack = 17, ///< number of clusters per track - kESDnClustersPerCh = 18, ///< number of clusters per chamber per track - kESDnClustersPerDE = 19, ///< number of clusters per DE per track - kESDClusterChargeInCh = 20, ///< cluster charge distribution in chamber i - kESDClusterChargePerChMean = 30, ///< cluster charge per Ch: mean - kESDClusterChargePerChSigma = 31, ///< cluster charge per Ch: dispersion - kESDClusterChargePerDE = 32, ///< cluster charge per DE: mean - kESDClusterSizeInCh = 33, ///< cluster size distribution in chamber i - kESDClusterSizePerChMean = 43, ///< cluster size per Ch: mean - kESDClusterSizePerChSigma = 44, ///< cluster size per Ch: dispersion - kESDClusterSizePerDE = 45, ///< cluster size per DE: mean - - kESDResidualXInCh = 46, ///< cluster-track residual-X distribution in chamber i - kESDResidualYInCh = 56, ///< cluster-track residual-Y distribution in chamber i - kESDResidualXPerChMean = 66, ///< cluster-track residual-X per Ch: mean - kESDResidualYPerChMean = 67, ///< cluster-track residual-Y per Ch: mean - kESDResidualXPerChSigma = 68, ///< cluster-track residual-X per Ch: dispersion - kESDResidualYPerChSigma = 69, ///< cluster-track residual-Y per Ch: dispersion - kESDResidualXPerDEMean = 70, ///< cluster-track residual-X per DE: mean - kESDResidualYPerDEMean = 71, ///< cluster-track residual-Y per DE: mean - kESDResidualXPerDESigma = 72, ///< cluster-track residual-X per DE: dispersion - kESDResidualYPerDESigma = 73, ///< cluster-track residual-Y per DE: dispersion - kESDLocalChi2XInCh = 74, ///< local chi2-X distribution in chamber i - kESDLocalChi2YInCh = 84, ///< local chi2-Y distribution in chamber i - kESDLocalChi2XPerChMean = 94, ///< local chi2-X per Ch: mean - kESDLocalChi2YPerChMean = 95, ///< local chi2-Y per Ch: mean - kESDLocalChi2XPerDEMean = 96, ///< local chi2-X per DE: mean - kESDLocalChi2YPerDEMean = 97, ///< local chi2-Y per DE: mean - - kESDnTotClustersPerCh = 1000, ///< total number of associated clusters per chamber - kESDnTotClustersPerDE = 1001, ///< total number of associated clusters per DE - kESDnTotFullClustersPerDE = 1002, ///< total number of associated clusters containing pad info per DE - kESDSumClusterChargePerDE = 1003, ///< sum of cluster charge per DE - kESDSumClusterSizePerDE = 1004, ///< sum of cluster size per DE - kESDSumResidualXPerDE = 1005, ///< sum of cluster-track residual-X per DE - kESDSumResidualYPerDE = 1006, ///< sum of cluster-track residual-Y per DE - kESDSumResidualX2PerDE = 1007, ///< sum of cluster-track residual-X**2 per DE - kESDSumResidualY2PerDE = 1008, ///< sum of cluster-track residual-Y**2 per DE - kESDSumLocalChi2XPerDE = 1009, ///< sum of local chi2-X per DE - kESDSumLocalChi2YPerDE = 1010 ///< sum of local chi2-X per DE - }; + using AliQADataMakerRec::Add2List; + using AliQADataMakerRec::GetData; + 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) ; + private: - - void Ctor(); - void DisplayTriggerInfo(AliQAv1::TASKINDEX_t task); - Bool_t FillTriggerDCSHistos(); - void InitRecPointsTracker(); - void InitRecPointsTrigger(); - void MakeRawsTracker(AliRawReader* rawReader); - void MakeRawsTrigger(AliRawReader* rawReader); - void MakeRecPointsTracker(TTree* treeR); - void MakeRecPointsTrigger(TTree* treeR); - - /// Return reco parameters - const AliMUONRecoParam* GetRecoParam() const { return dynamic_cast(fRecoParam); } - - Bool_t fIsInitRaws; //!< info if InitRaws() went ok - Bool_t fIsInitRecPointsTracker; //!< info if InitRecPoints() went ok - Bool_t fIsInitRecPointsTrigger; //!< info if InitRecPoints() went ok - Bool_t fIsInitESDs; //!< info if InitESDs() went ok + /// Not implemented + AliMUONQADataMakerRec(const AliMUONQADataMakerRec& qadm); + /// Not implemented + AliMUONQADataMakerRec& operator=(const AliMUONQADataMakerRec& qadm); + + TObjArray** GetList(AliQAv1::TASKINDEX_t taks); - AliMUONVDigitStore* fDigitStore; //!< pointer to digits store - AliMUONVTriggerStore* fTriggerStore; //!< pointer to trigger store - AliMUONDigitMaker* fDigitMaker; //!< pointer to digit maker - AliMUONVClusterStore* fClusterStore; //!< pointer to cluster store - - AliMUONVTrackerDataMaker* fTrackerDataMaker; //!< tracker data accumulation +private: + AliMUONVQADataMakerRec* fTracker; ///< tracker sub-qadatamaker + AliMUONVQADataMakerRec* fTrigger; ///< trigger sub-qadatamaker - ClassDef(AliMUONQADataMakerRec,5) // MUON Quality assurance data maker + ClassDef(AliMUONQADataMakerRec,10) // MUON Quality assurance data maker }; #endif