X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=ANALYSIS%2FAliAnalysisTask.h;h=f0a320d2147daec2fb3120f9bd4b238f0033a3cd;hb=377b996d051e041059aec86b91a3aade90952826;hp=37f93c65bf0571100cb6a06b1e176525f0d9c12b;hpb=b1310ef55795bf04c55f06f14b11bcfe8c754255;p=u%2Fmrichter%2FAliRoot.git diff --git a/ANALYSIS/AliAnalysisTask.h b/ANALYSIS/AliAnalysisTask.h index 37f93c65bf0..f0a320d2147 100644 --- a/ANALYSIS/AliAnalysisTask.h +++ b/ANALYSIS/AliAnalysisTask.h @@ -21,6 +21,7 @@ #endif class TClass; +class TFile; class AliAnalysisDataSlot; class AliAnalysisDataContainer; @@ -47,7 +48,6 @@ class AliAnalysisTask : public TTask { //=== CALL IN THE CONSTRUCTOR OF DERIVED CLASS TO DEFINE INPUTS/OUTPUTS === void DefineInput(Int_t islot, TClass *type); void DefineOutput(Int_t islot, TClass *type); - //===================================================================== //===================================================================== // === OVERLOAD THIS TO CONNECT TREE BRANCHES AT INPUT SLOTS. YOU @@ -71,7 +71,7 @@ class AliAnalysisTask : public TTask { //===================================================================== // === CALL THIS IN CreateOutputObjects BEFORE CREATING THE OBJECT FOR EACH // OUTPUT IOUT THAT HAS TO BE WRITTEN TO A FILE - void OpenFile(Int_t iout, Option_t *option="RECREATE") const; + TFile *OpenFile(Int_t iout, Option_t *option="RECREATE") const; public: AliAnalysisTask(); @@ -86,8 +86,15 @@ public: virtual void CreateOutputObjects(); // === OVERLOAD THIS IF YOU NEED TO INITIALIZE YOUR CLASS ON THE CLIENT virtual void LocalInit(); - // === OVERLOAD THIS IF YOU NEED TO TREAT INPUT FILE CHANGE + // === OVERLOAD THIS IF YOU NEED TO TREAT INPUT FILE/TREE CHANGE virtual Bool_t Notify(); + // === OVERLOAD THIS IF YOU NEED TO TREAT BIN CHANGE IN EVENT MIXING + virtual Bool_t NotifyBinChange(); + //===================================================================== + // Optional method that will be called in SlaveTerminate phase for each task + // Warning: in PROOF mode this is called before merging so their cleanup is + // not allowed - do output cleanup in class destructor. + virtual void FinishTaskOutput(); // Conect inputs/outputs to data containers (by AliAnalysisModule) Bool_t ConnectInput(Int_t islot, AliAnalysisDataContainer *cont); Bool_t ConnectOutput(Int_t islot, AliAnalysisDataContainer *cont);