]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - PWGHF/hfe/AliAnalysisTaskHFEQA.h
Merge branch 'feature-movesplit'
[u/mrichter/AliRoot.git] / PWGHF / hfe / AliAnalysisTaskHFEQA.h
index 7e0fde7324c0a6373424dec4e53562a5f8d82ada..05f3e996ad5cd6d2dad8487357ab501a992ea0b8 100644 (file)
-/**************************************************************************\r
-* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *\r
-*                                                                        *\r
-* Author: The ALICE Off-line Project.                                    *\r
-* Contributors are mentioned in the code where appropriate.              *\r
-*                                                                        *\r
-* Permission to use, copy, modify and distribute this software and its   *\r
-* documentation strictly for non-commercial purposes is hereby granted   *\r
-* without fee, provided that the above copyright notice appears in all   *\r
-* copies and that both the copyright notice and this permission notice   *\r
-* appear in the supporting documentation. The authors make no claims     *\r
-* about the suitability of this software for any purpose. It is          *\r
-* provided "as is" without express or implied warranty.                  *\r
-**************************************************************************/\r
-//\r
-// Flow task class for the ALICE HFE group\r
-//\r
-//\r
-#ifndef ALIANALYSISTASKHFEQA_H\r
-#define ALIANALYSISTASKHFEQA_H\r
-\r
-\r
-#ifndef ALIANALYSISTASKSE_H\r
-#include "AliAnalysisTaskSE.h"\r
-#endif\r
-\r
-#ifndef ROOT_TString\r
-#include <TString.h>\r
-#endif\r
-\r
-#ifndef ROOT_TBits\r
-#include <TBits.h>\r
-#endif\r
-\r
-\r
-class TList;\r
-class AliHFEcuts;\r
-class AliHFEpid;\r
-class AliHFEpidQAmanager;\r
-class AliAODMCHeader;\r
-class TClonesArray;\r
-class TH1F;\r
-\r
-\r
-class AliAnalysisTaskHFEQA: public AliAnalysisTaskSE {\r
-public:\r
-\r
-  typedef enum{\r
-    kpp = 0,\r
-    kpPb = 1,\r
-    kPbPb = 2\r
-  } ESystem_t;\r
-  \r
-\r
-  AliAnalysisTaskHFEQA();\r
-  AliAnalysisTaskHFEQA(const char *name);\r
-  AliAnalysisTaskHFEQA(const AliAnalysisTaskHFEQA &ref);\r
-  AliAnalysisTaskHFEQA& operator=(const AliAnalysisTaskHFEQA &ref);\r
-  virtual void Copy(TObject &o) const;\r
-  virtual ~AliAnalysisTaskHFEQA();\r
-  \r
-  virtual void  UserExec(Option_t */*option*/);\r
-  virtual void  UserCreateOutputObjects();\r
-\r
-  void SetAODAnalysis(Bool_t aodAnalysis)   { fAODAnalysis = aodAnalysis; };\r
-  void SetCentralityEstimator(const char *estimator) { fCentralityEstimator = estimator; }\r
-  void SetppAnalysis(){\r
-    fCollisionSystem.SetBitNumber(kpPb, kFALSE); \r
-    fCollisionSystem.SetBitNumber(kPbPb, kFALSE); \r
-    fCollisionSystem.SetBitNumber(kpp, kTRUE); \r
-  }\r
-  void SetpPbAnalysis() {\r
-    fCollisionSystem.SetBitNumber(kpp, kFALSE); \r
-    fCollisionSystem.SetBitNumber(kPbPb, kFALSE); \r
-    fCollisionSystem.SetBitNumber(kpPb, kTRUE); \r
-  }\r
-  void SetPbPbAnalysis() { \r
-    fCollisionSystem.SetBitNumber(kpp, kFALSE); \r
-    fCollisionSystem.SetBitNumber(kpPb, kFALSE); \r
-    fCollisionSystem.SetBitNumber(kPbPb, kTRUE); \r
-  };\r
-  Bool_t Ispp() const { return fCollisionSystem.TestBitNumber(kpp); }\r
-  Bool_t IsPbPb() const { return fCollisionSystem.TestBitNumber(kPbPb); }\r
-  Bool_t IspPb() const { return fCollisionSystem.TestBitNumber(kpPb); }\r
-  \r
-  AliHFEpid *GetPIDTPConly() const { return fPIDTPConly; }\r
-  AliHFEpid *GetPIDTOFTPC() const { return fPIDTOFTPC; }\r
-  AliHFEpid *GetPIDTPCTRD() const { return fPIDTPCTRD; }\r
-  AliHFEpid *GetPIDTPCEMCal() const { return fPIDTPCEMCal; }\r
-  AliHFEpidQAmanager *GetPIDQAManagerTOFTPC() const { return fPIDqaTOFTPC; }\r
-  AliHFEpidQAmanager *GetPIDQAManagerTPCTRD() const { return fPIDqaTPCTRD; }\r
-  AliHFEpidQAmanager *GetPIDQAManagerTPCEMCal() const { return fPIDqaTPCEMCal; }\r
\r
-\r
-  void SetHFECuts(AliHFEcuts * const cuts) { fHFECuts = cuts; };\r
\r
- private:\r
-  TList     *fListHist;         //! TH list\r
-  Bool_t    fAODAnalysis;       // AOD analysis\r
-  AliAODMCHeader *fAODMCHeader;         // ! MC info AOD\r
-  TClonesArray *fAODArrayMCInfo;        // ! MC info particle AOD\r
\r
-  // Cuts for HFE\r
-  AliHFEcuts *fHFECuts;                   // HFE cuts\r
-  AliHFEpid  *fPIDTPConly;                // PID cuts \r
-  AliHFEpid  *fPIDTOFTPC;                 // PID cuts TOF-TPC only\r
-  AliHFEpid  *fPIDTPCTRD;                 // PID cuts TPC-TRD \r
-  AliHFEpid  *fPIDTPCEMCal;                 // PID cuts TPC-EMCal \r
-  AliHFEpidQAmanager *fPIDqaTOFTPC;       // QA Manager TOF TPC\r
-  AliHFEpidQAmanager *fPIDqaTPCTRD;       // QA Manager TPC TRD\r
-  AliHFEpidQAmanager *fPIDqaTPCEMCal;       // QA Manager TPC EMCal\r
-  TString fCentralityEstimator;         // Centrality Estimator\r
-  TBits fCollisionSystem;              // Collision System;\r
-\r
-  // Histo yields\r
-  TH1F *fTPConly;                      // TPC only electron yield\r
-  TH1F *fTOFTPC;                      // TOF TPC  electron yield\r
-  TH1F *fTPCTRD;                      // TPC TRD  electron yield\r
-  TH1F *fTPCEMCal;                      // TPC EMCal electron yield\r
\r
-  \r
-  // Debuging Cuts step by step all centrality together: pt, step (6)\r
-  //THnSparseF *fTrackingCuts; //! Tracking Cuts\r
-\r
-  \r
-  \r
-  ClassDef(AliAnalysisTaskHFEQA, 1); // analysisclass\r
-};\r
-\r
-#endif\r
+/**************************************************************************
+* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+*                                                                        *
+* Author: The ALICE Off-line Project.                                    *
+* Contributors are mentioned in the code where appropriate.              *
+*                                                                        *
+* Permission to use, copy, modify and distribute this software and its   *
+* documentation strictly for non-commercial purposes is hereby granted   *
+* without fee, provided that the above copyright notice appears in all   *
+* copies and that both the copyright notice and this permission notice   *
+* appear in the supporting documentation. The authors make no claims     *
+* about the suitability of this software for any purpose. It is          *
+* provided "as is" without express or implied warranty.                  *
+**************************************************************************/
+//
+// Flow task class for the ALICE HFE group
+//
+//
+#ifndef ALIANALYSISTASKHFEQA_H
+#define ALIANALYSISTASKHFEQA_H
+
+
+#ifndef ALIANALYSISTASKSE_H
+#include "AliAnalysisTaskSE.h"
+#endif
+
+#ifndef ROOT_TString
+#include <TString.h>
+#endif
+
+#ifndef ROOT_TBits
+#include <TBits.h>
+#endif
+
+
+class TList;
+class AliHFEcuts;
+class AliHFEpid;
+class AliHFEpidQAmanager;
+class AliAODMCHeader;
+class TClonesArray;
+class TH1F;
+
+
+class AliAnalysisTaskHFEQA: public AliAnalysisTaskSE {
+public:
+
+  typedef enum{
+    kpp = 0,
+    kpPb = 1,
+    kPbPb = 2
+  } ESystem_t;
+  
+
+  AliAnalysisTaskHFEQA();
+  AliAnalysisTaskHFEQA(const char *name);
+  AliAnalysisTaskHFEQA(const AliAnalysisTaskHFEQA &ref);
+  AliAnalysisTaskHFEQA& operator=(const AliAnalysisTaskHFEQA &ref);
+  virtual void Copy(TObject &o) const;
+  virtual ~AliAnalysisTaskHFEQA();
+  
+  virtual void  UserExec(Option_t */*option*/);
+  virtual void  UserCreateOutputObjects();
+
+  void SetDoTPConly(Bool_t tpconlydo)   { fTPConlydo = tpconlydo; };
+  void SetDoTRDonly(Bool_t trdonlydo)   { fTRDonlydo = trdonlydo; };
+  void SetDoTOFTPC(Bool_t toftpcdo)   { fTOFTPCdo = toftpcdo; };
+  void SetDoTPCTRD(Bool_t tpctrddo)   { fTPCTRDdo = tpctrddo; };
+  void SetDoTPCEMCal(Bool_t tpcemcaldo)   { fTPCEMCaldo = tpcemcaldo; };
+  void SetAODAnalysis(Bool_t aodAnalysis)   { fAODAnalysis = aodAnalysis; };
+  void SetCentralityEstimator(const char *estimator) { fCentralityEstimator = estimator; }
+  void SetppAnalysis(){
+    fCollisionSystem.SetBitNumber(kpPb, kFALSE); 
+    fCollisionSystem.SetBitNumber(kPbPb, kFALSE); 
+    fCollisionSystem.SetBitNumber(kpp, kTRUE); 
+  }
+  void SetpPbAnalysis() {
+    fCollisionSystem.SetBitNumber(kpp, kFALSE); 
+    fCollisionSystem.SetBitNumber(kPbPb, kFALSE); 
+    fCollisionSystem.SetBitNumber(kpPb, kTRUE); 
+  }
+  void SetPbPbAnalysis() { 
+    fCollisionSystem.SetBitNumber(kpp, kFALSE); 
+    fCollisionSystem.SetBitNumber(kpPb, kFALSE); 
+    fCollisionSystem.SetBitNumber(kPbPb, kTRUE); 
+  };
+  Bool_t Ispp() const { return fCollisionSystem.TestBitNumber(kpp); }
+  Bool_t IsPbPb() const { return fCollisionSystem.TestBitNumber(kPbPb); }
+  Bool_t IspPb() const { return fCollisionSystem.TestBitNumber(kpPb); }
+  
+  AliHFEpid *GetPIDTPConly() const { return fPIDTPConly; }
+  AliHFEpid *GetPIDTRDonly() const { return fPIDTRDonly; }
+  AliHFEpid *GetPIDTOFTPC() const { return fPIDTOFTPC; }
+  AliHFEpid *GetPIDTPCTRD() const { return fPIDTPCTRD; }
+  AliHFEpid *GetPIDTPCEMCal() const { return fPIDTPCEMCal; }
+  AliHFEpidQAmanager *GetPIDQAManagerTRDonly() const { return fPIDqaTRDonly; }
+  AliHFEpidQAmanager *GetPIDQAManagerTOFTPC() const { return fPIDqaTOFTPC; }
+  AliHFEpidQAmanager *GetPIDQAManagerTPCTRD() const { return fPIDqaTPCTRD; }
+  AliHFEpidQAmanager *GetPIDQAManagerTPCEMCal() const { return fPIDqaTPCEMCal; }
+
+  void SetHFECuts(AliHFEcuts * const cuts) { fHFECuts = cuts; };
+ private:
+  TList     *fListHist;         //! TH list
+  Bool_t    fAODAnalysis;       // AOD analysis
+  AliAODMCHeader *fAODMCHeader;         // ! MC info AOD
+  TClonesArray *fAODArrayMCInfo;        // ! MC info particle AOD
+  // Cuts for HFE
+  AliHFEcuts *fHFECuts;                   // HFE cuts
+  AliHFEpid  *fPIDTPConly;                // PID cuts 
+  AliHFEpid  *fPIDTRDonly;                // PID cuts 
+  AliHFEpid  *fPIDTOFTPC;                 // PID cuts TOF-TPC only
+  AliHFEpid  *fPIDTPCTRD;                 // PID cuts TPC-TRD 
+  AliHFEpid  *fPIDTPCEMCal;                 // PID cuts TPC-EMCal 
+  AliHFEpidQAmanager *fPIDqaTRDonly;       // QA Manager TOF TPC
+  AliHFEpidQAmanager *fPIDqaTOFTPC;       // QA Manager TOF TPC
+  AliHFEpidQAmanager *fPIDqaTPCTRD;       // QA Manager TPC TRD
+  AliHFEpidQAmanager *fPIDqaTPCEMCal;       // QA Manager TPC EMCal
+  TString fCentralityEstimator;         // Centrality Estimator
+  TBits fCollisionSystem;              // Collision System;
+
+  // Histo yields
+  TH1F *fNbEvent;                      // Number of events
+  TH1F *fTPConly;                      // TPC only electron yield
+  TH1F *fTOFTPC;                      // TOF TPC  electron yield
+  TH1F *fTPCTRD;                      // TPC TRD  electron yield
+  TH1F *fTPCEMCal;                      // TPC EMCal electron yield
+
+  // Do PID or not
+  Bool_t fTPConlydo;                   // Do TPC only PID
+  Bool_t fTRDonlydo;                   // Do TRD only PID
+  Bool_t fTOFTPCdo;                    // Do TOF TPC 
+  Bool_t fTPCTRDdo;                    // Do TPC TRD 
+  Bool_t fTPCEMCaldo;                    // Do TPC EMCal 
+
+  
+  // Debuging Cuts step by step all centrality together: pt, step (6)
+  //THnSparseF *fTrackingCuts; //! Tracking Cuts
+
+  
+  
+  ClassDef(AliAnalysisTaskHFEQA, 3); // analysisclass
+};
+
+#endif