ROOT logo
#ifndef ALIDIELECTRONCUTGROUP_H
#define ALIDIELECTRONCUTGROUP_H

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

//#################################################################
//#                                                               #
//#             Class AliDielectronCutGroup                       #
//#              Dielectron Group of cuts                         #
//#                                                               #
//#  Authors:                                                     #
//#   Anton     Andronic, GSI / A.Andronic@gsi.de                 #
//#   Ionut C.  Arsene,   GSI / I.C.Arsene@gsi.de                 #
//#   Christoph Baumann   uni Ffm / cbaumann@ikf.uni-frankfurt.de #
//#   Julian    Book,     Uni Ffm / Julian.Book@cern.ch           #
//#   Frederick Kramer,   Uni Ffm, / Frederick.Kramer@cern.ch     #
//#   Magnus    Mager,    CERN / Magnus.Mager@cern.ch             #
//#   WooJin J. Park,     GSI / W.J.Park@gsi.de                   #
//#   Jens      Wiechula, Uni HD / Jens.Wiechula@cern.ch          #
//#                                                               #
//#################################################################

#include <AliAnalysisCuts.h>
#include <TList.h>

class TCollection;

class AliDielectronCutGroup : public AliAnalysisCuts {
  
public:
  enum TruthValues {
    kCompAND = kTRUE,
    kCompOR = kFALSE
  };
  
  AliDielectronCutGroup(Bool_t compOperator=kCompOR);
  AliDielectronCutGroup(const char*name, const char* title, Bool_t compOperator=kCompOR);
  
  virtual ~AliDielectronCutGroup();
  
  //Analysis cuts interface
  //
  virtual void Init();
  virtual Bool_t IsSelected(TObject* track);
  virtual Bool_t IsSelected(TList*   /* list */ ) {return kFALSE;}
  
  void AddCut(AliAnalysisCuts* fCut);
  void SetCompOperator(Bool_t compOperator);

  virtual void Print(const Option_t* option = "") const;

  
private:
  TList  fCutGroupList;  //for saving the different cuts
  Bool_t fCompOperator;  //determines whether the cuts are AND/OR compared
  
  ClassDef(AliDielectronCutGroup,1) //Group of cuts
};

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