X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=ANALYSIS%2FAliEventPoolOTF.h;h=9453fddbfc17316b96334563cd59c63ed72d1985;hb=b0e25852769a15330f327ed7af0c652a80fdb908;hp=a464958e41f28835b1e303fed13d43ea96e18144;hpb=a065d8ed4da9dc815d3379065365481184fa9c8a;p=u%2Fmrichter%2FAliRoot.git diff --git a/ANALYSIS/AliEventPoolOTF.h b/ANALYSIS/AliEventPoolOTF.h index a464958e41f..9453fddbfc1 100644 --- a/ANALYSIS/AliEventPoolOTF.h +++ b/ANALYSIS/AliEventPoolOTF.h @@ -17,12 +17,15 @@ class AliLHCTagCuts; class AliDetectorTagCuts; class AliEventTagCuts; class AliTagAnalysis; +class TGridResult; + +typedef enum {kMultiplicity, kZVertex, kEventPlane, kLeadingParticleEta, kUser1, kUser2} EventPoolAxis_t; class AliEventPoolOTF : public AliVEventPool { public: AliEventPoolOTF(); - AliEventPoolOTF(const char* name, const char* title); + AliEventPoolOTF(const char* name, const char* title = "AOD"); virtual ~AliEventPoolOTF() {;} // Interface @@ -31,26 +34,44 @@ class AliEventPoolOTF : public AliVEventPool virtual Int_t GetDimension(); virtual void Init(); virtual void SetMultiplicityBin(Int_t min, Int_t max, Int_t step) - {fMultMin = min; fMultMax = max; fMultStep = step;} + {fValueMin[kMultiplicity] = Float_t(min); fValueMax[kMultiplicity] = Float_t(max); fValueStep[kMultiplicity] = Float_t(step);} + + virtual void SetMultiplicityBinning(Float_t min, Float_t max, Float_t step) + {fValueMin[kMultiplicity] = min; fValueMax[kMultiplicity] = max; fValueStep[kMultiplicity] = step;} + virtual void SetZVertexBinning(Float_t min, Float_t max, Float_t step) + {fValueMin[kZVertex] = min; fValueMax[kZVertex] = max; fValueStep[kZVertex] = step;} + virtual void SetEventPlaneBinning(Float_t min, Float_t max, Float_t step) + {fValueMin[kEventPlane] = min; fValueMax[kEventPlane] = max; fValueStep[kEventPlane] = step;} + virtual void SetLeadingParticleEtaBinning(Float_t min, Float_t max, Float_t step) + {fValueMin[kLeadingParticleEta] = min; fValueMax[kLeadingParticleEta] = max; fValueStep[kLeadingParticleEta] = step;} + // - void SetTagDirectory(char* dirname) {fTagDirectory = dirname;}; - virtual Int_t BinNumber() {return fBinNumber;} + void SetTagDirectory(const char* dirname) {fTagDirectory = dirname;}; + void SetGridResult(TGridResult* gridTag) {fGridTags = gridTag;}; + virtual Int_t BinNumber() const {return fBinNumber;} private: AliEventPoolOTF(const AliEventPoolOTF& obj); AliEventPoolOTF& operator=(const AliEventPoolOTF& other); + void InitArrays(); + protected: - AliTagAnalysis* fTagAnalysis; // Pointer to tag analysis - AliRunTagCuts* fRunCuts; // Run cuts - AliLHCTagCuts* fLHCCuts; // LHC cuts - AliDetectorTagCuts* fDetectorCuts; // Detector cuts - AliEventTagCuts* fEventCuts; // Event cuts - char* fTagDirectory; // Directory with local tag files - Int_t fMultMin; // Minimum multiplicity - Int_t fMultMax; // Maximum multiplicity - Int_t fMultStep; // Multiplicity step-size - Int_t fMultiplicity; // Current multiplicity + AliTagAnalysis* fTagAnalysis; // Pointer to tag analysis + AliRunTagCuts* fRunCuts; // Run cuts + AliLHCTagCuts* fLHCCuts; // LHC cuts + AliDetectorTagCuts* fDetectorCuts; // Detector cuts + AliEventTagCuts* fEventCuts; // Event cuts + TGridResult* fGridTags; // Tags from a grid file collection + const char* fTagDirectory; // Directory with local tag files + // Common pool cuts + // Multiplicity + Float_t fValueMin[6]; // Minimum value + Float_t fValueMax[6]; // Maximum value + Float_t fValueStep[6]; // Step size + Float_t fValue[6]; // Current value + // Int_t fBinNumber; // Current bin number + Bool_t fNoMore; // No more bins ClassDef(AliEventPoolOTF, 0); };