]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG/FLOW/Tasks/AliAnalysisTaskScalarProduct.h
Merge branch 'feature-movesplit'
[u/mrichter/AliRoot.git] / PWG / FLOW / Tasks / AliAnalysisTaskScalarProduct.h
CommitLineData
8d312f00 1/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
2* See cxx source for full Copyright notice */
e2d51347 3/* $Id: $ */
8d312f00 4
5#ifndef AliAnalysisTaskScalarProduct_H
6#define AliAnalysisTaskScalarProduct_H
7
29195b69 8/////////////////////////////////////////////////
8d312f00 9// AliAnalysisTaskScalarProduct:
10// analysis task for Scalar Product method
11// Author: Naomi van der Kolk (kolk@nikhef.nl)
29195b69 12/////////////////////////////////////////////////
8d312f00 13
dc3481ef 14class AliFlowEventSimple;
8d312f00 15class AliFlowAnalysisWithScalarProduct;
88e00a8a 16class TList;
8d312f00 17
18#include "TString.h"
ea456d37 19#include "AliAnalysisTaskSE.h"
8d312f00 20
29195b69 21//===============================================================
22
ea456d37 23class AliAnalysisTaskScalarProduct : public AliAnalysisTaskSE {
8d312f00 24 public:
882ffd6a 25 AliAnalysisTaskScalarProduct();
29195b69 26 AliAnalysisTaskScalarProduct(const char *name, Bool_t usePhiWeights);
e2d51347 27 virtual ~AliAnalysisTaskScalarProduct();
8d312f00 28
ea456d37 29 virtual void UserCreateOutputObjects();
30 virtual void UserExec(Option_t *option);
8d312f00 31 virtual void Terminate(Option_t *);
32
29195b69 33 void SetUsePhiWeights(Bool_t const aPhiW) {this->fUsePhiWeights = aPhiW;}
34 Bool_t GetUsePhiWeights() const {return this->fUsePhiWeights;}
35
a554b203 36 void SetRelDiffMsub(Double_t diff) { this->fRelDiffMsub = diff; }
37 Double_t GetRelDiffMsub() const { return this->fRelDiffMsub; }
3c5d5752 38
39 void SetApplyCorrectionForNUA(Bool_t const applyCorrectionForNUA) {this->fApplyCorrectionForNUA = applyCorrectionForNUA;};
40 Bool_t GetApplyCorrectionForNUA() const {return this->fApplyCorrectionForNUA;};
50fe33aa 41
42 void SetHarmonic(Int_t const harmonic) {this->fHarmonic = harmonic;};
43 Int_t GetHarmonic() const {return this->fHarmonic;};
02914cfa 44
45 void SetBehaveAsEP() { fNormalizationType = 0; }
2a3b9289 46
47 void SetTotalQvector(const char *tqv) {*this->fTotalQvector = tqv;};
29195b69 48
b591bbbb 49 void SetBookOnlyBasicCCH(Bool_t const aMB) {this->fMinimalBook = aMB;}
50
8d312f00 51 private:
b76ccfd5 52
53 AliAnalysisTaskScalarProduct(const AliAnalysisTaskScalarProduct& aAnalysisTask);
54 AliAnalysisTaskScalarProduct& operator=(const AliAnalysisTaskScalarProduct& aAnalysisTask);
55
29195b69 56 AliFlowEventSimple* fEvent; //input event
57 AliFlowAnalysisWithScalarProduct* fSP; // analysis object
58 TList* fListHistos; // collection of output
59
b591bbbb 60 Bool_t fMinimalBook; // flag to turn off QA and minimize FlowCommonHist
a554b203 61 Bool_t fUsePhiWeights; // use phi weights
62 TList* fListWeights; // list with weights
9d062fe3 63
a554b203 64 Double_t fRelDiffMsub; // the relative difference the two subevent multiplicities can have
dc3481ef 65
3c5d5752 66 Bool_t fApplyCorrectionForNUA; // apply automatic correction for non-uniform acceptance
67
50fe33aa 68 Int_t fHarmonic; // harmonic
02914cfa 69 Int_t fNormalizationType; // 0: EP mode || 1: SP mode (default)
70
2a3b9289 71 TString *fTotalQvector; // total Q-vector is: "QaQb" (means Qa+Qb), "Qa" or "Qb"
72
b591bbbb 73 ClassDef(AliAnalysisTaskScalarProduct, 2); // example of analysis
8d312f00 74};
75
29195b69 76//==================================================================
77
df802279 78#endif