ROOT logo
/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
 * See cxx source for full Copyright notice                               */

//_________________________________________________________________________
// Container class for bad channels & bad runs identification
// Author: Olga Driga (SUBATECH)

#ifndef ALIANALYSISTASKCALOCELLSQA_H
#define ALIANALYSISTASKCALOCELLSQA_H

// --- ROOT system ---
#include <TString.h>

// --- AliRoot header files ---
#include <AliAnalysisTaskSE.h>
#include <AliCaloCellsQA.h>

class AliAnalysisTaskCaloCellsQA : public AliAnalysisTaskSE {

public:

  // detectors
  enum {
    kEMCAL = 0,
    kPHOS  = 1
// ,kDCAL  = 2      // not implemented
  };

  AliAnalysisTaskCaloCellsQA();
  AliAnalysisTaskCaloCellsQA(const char *name, Int_t nmods = 10, Int_t det = kEMCAL, char *outfile = NULL);
  virtual ~AliAnalysisTaskCaloCellsQA();

  void   UserCreateOutputObjects();
  void   UserExec(Option_t *);
  void   Terminate(Option_t *);

  void   SetBadCells(Int_t badcells[], Int_t nbad);

  // getters and setters
  AliCaloCellsQA*  GetCaloCellsQA()                { return fCellsQA; }
  Bool_t           GetAvoidPileup()                { return fkAvoidPileup; }
  const char*      GetOutputFileName()             { return fOutfile.Data(); }
  void             SetAvoidPileup(Bool_t flag)     { fkAvoidPileup = flag; }
  void             SetOutputFileName(char* fname)  { fOutfile = fname; }

protected:
  Bool_t IsClusterBad(AliVCluster *clus);

private:
  AliAnalysisTaskCaloCellsQA(const AliAnalysisTaskCaloCellsQA &);
  AliAnalysisTaskCaloCellsQA & operator = (const AliAnalysisTaskCaloCellsQA &);

private:
  Bool_t           fkAvoidPileup;     // flag not to process pileup events
  AliCaloCellsQA*  fCellsQA;          // analysis instance
  TString          fOutfile;          // output file name
  Int_t            fNBad;             // number of entries in fBadCells
  Int_t*           fBadCells;         //[fNBad] bad cells array

  ClassDef(AliAnalysisTaskCaloCellsQA, 2);
};

#endif
 AliAnalysisTaskCaloCellsQA.h:1
 AliAnalysisTaskCaloCellsQA.h:2
 AliAnalysisTaskCaloCellsQA.h:3
 AliAnalysisTaskCaloCellsQA.h:4
 AliAnalysisTaskCaloCellsQA.h:5
 AliAnalysisTaskCaloCellsQA.h:6
 AliAnalysisTaskCaloCellsQA.h:7
 AliAnalysisTaskCaloCellsQA.h:8
 AliAnalysisTaskCaloCellsQA.h:9
 AliAnalysisTaskCaloCellsQA.h:10
 AliAnalysisTaskCaloCellsQA.h:11
 AliAnalysisTaskCaloCellsQA.h:12
 AliAnalysisTaskCaloCellsQA.h:13
 AliAnalysisTaskCaloCellsQA.h:14
 AliAnalysisTaskCaloCellsQA.h:15
 AliAnalysisTaskCaloCellsQA.h:16
 AliAnalysisTaskCaloCellsQA.h:17
 AliAnalysisTaskCaloCellsQA.h:18
 AliAnalysisTaskCaloCellsQA.h:19
 AliAnalysisTaskCaloCellsQA.h:20
 AliAnalysisTaskCaloCellsQA.h:21
 AliAnalysisTaskCaloCellsQA.h:22
 AliAnalysisTaskCaloCellsQA.h:23
 AliAnalysisTaskCaloCellsQA.h:24
 AliAnalysisTaskCaloCellsQA.h:25
 AliAnalysisTaskCaloCellsQA.h:26
 AliAnalysisTaskCaloCellsQA.h:27
 AliAnalysisTaskCaloCellsQA.h:28
 AliAnalysisTaskCaloCellsQA.h:29
 AliAnalysisTaskCaloCellsQA.h:30
 AliAnalysisTaskCaloCellsQA.h:31
 AliAnalysisTaskCaloCellsQA.h:32
 AliAnalysisTaskCaloCellsQA.h:33
 AliAnalysisTaskCaloCellsQA.h:34
 AliAnalysisTaskCaloCellsQA.h:35
 AliAnalysisTaskCaloCellsQA.h:36
 AliAnalysisTaskCaloCellsQA.h:37
 AliAnalysisTaskCaloCellsQA.h:38
 AliAnalysisTaskCaloCellsQA.h:39
 AliAnalysisTaskCaloCellsQA.h:40
 AliAnalysisTaskCaloCellsQA.h:41
 AliAnalysisTaskCaloCellsQA.h:42
 AliAnalysisTaskCaloCellsQA.h:43
 AliAnalysisTaskCaloCellsQA.h:44
 AliAnalysisTaskCaloCellsQA.h:45
 AliAnalysisTaskCaloCellsQA.h:46
 AliAnalysisTaskCaloCellsQA.h:47
 AliAnalysisTaskCaloCellsQA.h:48
 AliAnalysisTaskCaloCellsQA.h:49
 AliAnalysisTaskCaloCellsQA.h:50
 AliAnalysisTaskCaloCellsQA.h:51
 AliAnalysisTaskCaloCellsQA.h:52
 AliAnalysisTaskCaloCellsQA.h:53
 AliAnalysisTaskCaloCellsQA.h:54
 AliAnalysisTaskCaloCellsQA.h:55
 AliAnalysisTaskCaloCellsQA.h:56
 AliAnalysisTaskCaloCellsQA.h:57
 AliAnalysisTaskCaloCellsQA.h:58
 AliAnalysisTaskCaloCellsQA.h:59
 AliAnalysisTaskCaloCellsQA.h:60
 AliAnalysisTaskCaloCellsQA.h:61
 AliAnalysisTaskCaloCellsQA.h:62
 AliAnalysisTaskCaloCellsQA.h:63