ROOT logo
#ifndef ALIDIELECTRONCUTQA_H
#define ALIDIELECTRONCUTQA_H

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

//#################################################################
//#                                                               #
//#             Class AliDielectronCutQA                          #
//#              Dielectron Group of cuts                         #
//#                                                               #
//#  Authors:                                                     #
//#   Julian    Book,     Uni Ffm / Julian.Book@cern.ch           #
//#                                                               #
//#################################################################

#include <TNamed.h>
#include <AliAnalysisFilter.h>
#include <TH1F.h>
#include <TList.h>
#include <TObjArray.h>

class TCollection;

class AliDielectronCutQA : public TNamed {
  
public:
  enum { kEvent=0, kTrack, kPair, kNtypes };

  AliDielectronCutQA();
  AliDielectronCutQA(const char*name, const char* title);
  
  virtual ~AliDielectronCutQA();

  //Analysis cuts interface
  //
  void Init();
  void AddTrackFilter(     AliAnalysisFilter *trkFilter);
  /*  void AddPrePairFilter(   AliAnalysisFilter *prePairFilter);*/
  /* void AddPrePairLegFilter(AliAnalysisFilter *prePairLegFilter); */
  void AddPairFilter(      AliAnalysisFilter *pairFilter);
  void AddEventFilter(     AliAnalysisFilter *eventFilter);

  //  void Fill(AliAnalysisCuts *cut);
  void Fill(UInt_t mask, TObject *obj);
  void FillAll(TObject *obj);// { fCutQA->Fill(0); }

  const TObjArray * GetQAHistArray() const { return &fQAHistArray; }


private:

  TObjArray fQAHistArray;              //-> array of QA histograms
  TH1F *fCutQA[kNtypes];               // qa histogram
  Int_t fNCuts[kNtypes];               // number of cuts
  const char* fCutNames[20][kNtypes];  // cut names
  const char* fTypeKeys[kNtypes];      // type names


  UInt_t GetObjIndex(TObject *obj);    // return object index

  AliDielectronCutQA(const AliDielectronCutQA &);
  AliDielectronCutQA &operator=(const AliDielectronCutQA &);
  
  ClassDef(AliDielectronCutQA,1) //Group of cuts
};

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