]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG2/FLOW/AliFlowTasks/AliAnalysisTaskScalarProduct.h
new version scalar product which includes different weights which then behaves as...
[u/mrichter/AliRoot.git] / PWG2 / FLOW / AliFlowTasks / 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
8d312f00 49 private:
b76ccfd5 50
51 AliAnalysisTaskScalarProduct(const AliAnalysisTaskScalarProduct& aAnalysisTask);
52 AliAnalysisTaskScalarProduct& operator=(const AliAnalysisTaskScalarProduct& aAnalysisTask);
53
29195b69 54 AliFlowEventSimple* fEvent; //input event
55 AliFlowAnalysisWithScalarProduct* fSP; // analysis object
56 TList* fListHistos; // collection of output
57
a554b203 58 Bool_t fUsePhiWeights; // use phi weights
59 TList* fListWeights; // list with weights
9d062fe3 60
a554b203 61 Double_t fRelDiffMsub; // the relative difference the two subevent multiplicities can have
dc3481ef 62
3c5d5752 63 Bool_t fApplyCorrectionForNUA; // apply automatic correction for non-uniform acceptance
64
50fe33aa 65 Int_t fHarmonic; // harmonic
02914cfa 66 Int_t fNormalizationType; // 0: EP mode || 1: SP mode (default)
67
2a3b9289 68 TString *fTotalQvector; // total Q-vector is: "QaQb" (means Qa+Qb), "Qa" or "Qb"
69
04b2edad 70 ClassDef(AliAnalysisTaskScalarProduct, 1); // example of analysis
8d312f00 71};
72
29195b69 73//==================================================================
74
df802279 75#endif