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 */
6 //#############################################################
8 //# Class AliDielectronHFhelper #
9 //# Dielectron Histogram Framework helper #
12 //# Julian Book, Uni Ffm / Julian.Book@cern.ch #
14 //#############################################################
21 #include "AliDielectronVarManager.h"
23 class AliDielectronHFhelper : public TNamed {
25 enum ECollectType { kSE=0, kME, kMEOS, kROT, kAll };
28 //AliDielectronHFhelper();
29 AliDielectronHFhelper(const char* filename, const char* container);
31 virtual ~AliDielectronHFhelper();
32 void SetHFArray(const char* filename, const char* container);
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);
36 void UnsetRangeUser(const char* varname, Bool_t leg=kFALSE);
37 void UnsetRangeUser(AliDielectronVarManager::ValueTypes type, Bool_t leg=kFALSE);
40 Int_t GetNSteps() const {return fMainArr->GetEntries(); }
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);
52 TObject* GetObject(const char *step, TObjArray *histArr=0x0);
53 TObject* FindObjects(TObjArray *histos);
54 TObject* Merge(TObjArray *arr);
56 void CheckCuts(TObjArray *arr);
57 virtual void Print(const Option_t* option ="") const ;
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
66 AliDielectronHFhelper(const AliDielectronHFhelper &c);
67 AliDielectronHFhelper &operator=(const AliDielectronHFhelper &c);
69 ClassDef(AliDielectronHFhelper,1) // HF helper class