Port of new Event Mixing implementation
[u/mrichter/AliRoot.git] / ANALYSIS / EventMixing / AliMixEventPool.h
index f1adbc9bb485e4bd64ab64b59cfa5818e686255e..4caec6cdde2a89adabdc55b0cb19623cfac9f631 100644 (file)
@@ -1,7 +1,7 @@
 //
 // Class AliMixEventPool
 //
-// AliMixEventPool is used to find 
+// AliMixEventPool is used to find
 // similar events
 //
 // author:
 class TEntryList;
 class AliMixEventCutObj;
 class AliVEvent;
-class AliMixEventPool : public TNamed
-{
-  public:
-    AliMixEventPool(const char* name="mixEventPool", const char* title="Mix event pool");
-    AliMixEventPool(const AliMixEventPool& obj);
-    virtual ~AliMixEventPool();
-
-    // prints object info
-    virtual void      Print(const Option_t* option="") const;
-
-    // inits correctly object
-    Int_t       Init();
-    
-    void        CreateEntryListsRecursivly(Int_t index);
-    void        SearchIndexRecursive(Int_t num, Int_t *i, Int_t *d, Int_t &index);
-    TEntryList* AddEntryList();
-    
-    Bool_t      AddEntry(Long64_t entry, AliVEvent* ev);
-    TEntryList *FindEntryList(AliVEvent *ev);
-    
-    void        AddCut(AliMixEventCutObj*cut);
-    
-    Bool_t      NeedInit() { return (fListOfEntryList.GetEntries() == 0); }
-    TObjArray  *GetListOfEntryLists() { return &fListOfEntryList; }   
-    TObjArray  *GetListOfEventCuts() { return &fListOfEventCuts; }
-    
-  private:
-
-    TObjArray   fListOfEntryList;       // list of entry lists
-    TObjArray   fListOfEventCuts;       // list of entry lists
-    
-    Int_t       fBinNumber;             // bin number
-    
-    AliMixEventPool& operator= (const AliMixEventPool&) { return *this; }
-
-    ClassDef(AliMixEventPool, 1)
+class AliMixEventPool : public TNamed {
+public:
+   AliMixEventPool(const char *name = "mixEventPool", const char *title = "Mix event pool");
+   AliMixEventPool(const AliMixEventPool &obj);
+   AliMixEventPool &operator= (const AliMixEventPool& obj);
+   virtual ~AliMixEventPool();
+
+   // prints object info
+   virtual void      Print(const Option_t *option = "") const;
+
+   // inits correctly object
+   Int_t       Init();
+
+   void        CreateEntryListsRecursivly(Int_t index);
+   void        SearchIndexRecursive(Int_t num, Int_t *i, Int_t *d, Int_t &index);
+   TEntryList *AddEntryList();
+
+   Bool_t      AddEntry(Long64_t entry, AliVEvent *ev);
+   TEntryList *FindEntryList(AliVEvent *ev, Int_t &idEntryList);
+
+   void        AddCut(AliMixEventCutObj *cut);
+
+   Bool_t      NeedInit() { return (fListOfEntryList.GetEntries() == 0); }
+   TObjArray  *GetListOfEntryLists() { return &fListOfEntryList; }
+   TObjArray  *GetListOfEventCuts() { return &fListOfEventCuts; }
+
+   void        SetCutValuesFromBinIndex(Int_t index);
+   void        SetBufferSize(Int_t buffer) { fBufferSize = buffer; }
+   void        SetMixNumber(Int_t numMix) { fMixNumber = numMix; }
+   Int_t       GetBufferSize() const { return fBufferSize; }
+   Int_t       GetMixNumber() const { return fMixNumber; }
+
+private:
+
+   TObjArray   fListOfEntryList;       // list of entry lists
+   TObjArray   fListOfEventCuts;       // list of entry lists
+
+   Int_t       fBinNumber;             // bin number
+   Int_t       fBufferSize;            // buffer size
+   Int_t       fMixNumber;             // mixing number
+
+   ClassDef(AliMixEventPool, 1)
 };
 
 #endif