]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG4/JetTasks/AliTHn.h
added switch for event slection in cluster task, updated plot notand JetSpectrum...
[u/mrichter/AliRoot.git] / PWG4 / JetTasks / AliTHn.h
CommitLineData
85bfac17 1#ifndef AliTHn_H
2#define AliTHn_H
3
4/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
6
7// optimized data container reusing functionality of AliCFContainer / THnsparse
8
9#include "TObject.h"
10#include "TString.h"
11#include "AliCFContainer.h"
12
13class TArrayF;
14class TCollection;
15
16class AliTHn : public AliCFContainer
17{
18 public:
19 AliTHn();
20 AliTHn(const Char_t* name, const Char_t* title,const Int_t nSelStep, const Int_t nVarIn, const Int_t* nBinIn);
21
22 virtual ~AliTHn();
23
24 virtual void Fill(const Double_t *var, Int_t istep, Double_t weight=1.) ;
25 virtual void FillParent();
26
27 TArrayF* GetValues(Int_t step) { return fValues[step]; }
28 TArrayF* GetSumw2(Int_t step) { return fSumw2[step]; }
29
30 void DeleteContainers();
c32a0ca9 31 void ReduceAxis();
85bfac17 32
33 AliTHn(const AliTHn &c);
34 AliTHn& operator=(const AliTHn& corr);
35 virtual void Copy(TObject& c) const;
36
37 virtual Long64_t Merge(TCollection* list);
38
39protected:
40 void Init();
41 Long64_t GetGlobalBinIndex(const Int_t* binIdx);
42
43 Long64_t fNBins; // number of total bins
44 Int_t fNVars; // number of variables
45 Int_t fNSteps; // number of selection steps
46 TArrayF **fValues; //[fNSteps] data container
47 TArrayF **fSumw2; //[fNSteps] data container
eed401dc 48 TAxis** axisCache; //! cache axis pointers (about 50% of the time in Fill is spent in GetAxis otherwise)
85bfac17 49
eed401dc 50 ClassDef(AliTHn, 3) // THn like container
85bfac17 51};
52
53#endif