]>
Commit | Line | Data |
---|---|---|
5e2cf960 | 1 | #ifndef ALIDIELECTRONHFHELPER_H |
2 | #define ALIDIELECTRONHFHELPER_H | |
3 | /* Copyright(c) 1998-2009, ALICE Experiment at CERN, All rights reserved. * | |
4 | * See cxx source for full Copyright notice */ | |
5 | ||
6 | //############################################################# | |
7 | //# # | |
c081415a | 8 | //# Class AliDielectronHFhelper # |
9 | //# Dielectron Histogram Framework helper # | |
5e2cf960 | 10 | //# # |
11 | //# Authors: # | |
12 | //# Julian Book, Uni Ffm / Julian.Book@cern.ch # | |
13 | //# # | |
14 | //############################################################# | |
15 | ||
16 | ||
17 | ||
18 | #include <TNamed.h> | |
19 | #include <TVectorD.h> | |
20 | ||
21 | #include "AliDielectronVarManager.h" | |
22 | ||
23 | class AliDielectronHFhelper : public TNamed { | |
24 | public: | |
25 | enum ECollectType { kSE=0, kME, kMEOS, kROT, kAll }; | |
187de573 | 26 | enum { kMaxCuts=20 }; |
27 | ||
5e2cf960 | 28 | //AliDielectronHFhelper(); |
e0f6eeb2 | 29 | AliDielectronHFhelper(const char* filename, const char* container); |
187de573 | 30 | |
5e2cf960 | 31 | virtual ~AliDielectronHFhelper(); |
e0f6eeb2 | 32 | void SetHFArray(const char* filename, const char* container); |
5e2cf960 | 33 | |
34 | void SetRangeUser(const char *varname, Double_t min, Double_t max, Bool_t leg=kFALSE); | |
35 | void SetRangeUser(AliDielectronVarManager::ValueTypes type, Double_t min, Double_t max, Bool_t leg=kFALSE); | |
4d7704c5 | 36 | void UnsetRangeUser(const char* varname, Bool_t leg=kFALSE); |
37 | void UnsetRangeUser(AliDielectronVarManager::ValueTypes type, Bool_t leg=kFALSE); | |
443a091c | 38 | |
2d00c7d3 | 39 | // getter functions |
40 | Int_t GetNSteps() const {return fMainArr->GetEntries(); } | |
41 | ||
c081415a | 42 | TObjArray* CollectHistos(AliDielectronVarManager::ValueTypes varx, |
43 | AliDielectronVarManager::ValueTypes vary=AliDielectronVarManager::kNMaxValues, | |
44 | AliDielectronVarManager::ValueTypes varz=AliDielectronVarManager::kNMaxValues) | |
45 | { return CollectProfiles("hist",varx,vary,varz); } | |
46 | TObjArray* CollectProfiles(TString option, | |
47 | AliDielectronVarManager::ValueTypes varx, | |
48 | AliDielectronVarManager::ValueTypes vary=AliDielectronVarManager::kNMaxValues, | |
49 | AliDielectronVarManager::ValueTypes varz=AliDielectronVarManager::kNMaxValues, | |
50 | AliDielectronVarManager::ValueTypes vart=AliDielectronVarManager::kNMaxValues); | |
187de573 | 51 | |
c081415a | 52 | TObject* GetObject(const char *step, TObjArray *histArr=0x0); |
53 | TObject* FindObjects(TObjArray *histos); | |
54 | TObject* Merge(TObjArray *arr); | |
5e2cf960 | 55 | |
56 | void CheckCuts(TObjArray *arr); | |
443a091c | 57 | virtual void Print(const Option_t* option ="") const ; |
5e2cf960 | 58 | void PrintCuts(); |
59 | ||
60 | private: | |
c081415a | 61 | TObjArray *fMainArr; // main array of pair types or sources |
62 | TObjArray *fCutVars; // array for cut variables | |
63 | TVectorD fCutLowLimits; // vector to store the lower cut limits | |
64 | TVectorD fCutUpLimits; // vector to store the upper cut limits | |
187de573 | 65 | |
5e2cf960 | 66 | AliDielectronHFhelper(const AliDielectronHFhelper &c); |
67 | AliDielectronHFhelper &operator=(const AliDielectronHFhelper &c); | |
187de573 | 68 | |
c081415a | 69 | ClassDef(AliDielectronHFhelper,1) // HF helper class |
5e2cf960 | 70 | }; |
71 | ||
72 | // | |
73 | // Inline functions | |
74 | // | |
75 | #endif | |
76 |