ROOT logo
#ifndef ALIANALYSISTASKMIXINFO_H
#define ALIANALYSISTASKMIXINFO_H

//
// Class AliAnalysisTaskMixInfo
//
// AliAnalysisTaskMixInfo is task
// for mixing info
//
// authors:
//          Martin Vala (martin.vala@cern.ch)
//

#include "AliLog.h"

#include "AliAnalysisTaskSE.h"

class AliMixInputEventHandler;
class TList;
class AliMixInfo;
class AliAnalysisTaskMixInfo : public AliAnalysisTaskSE {
public:
   AliAnalysisTaskMixInfo(const char *name = "<default name>");
   virtual ~AliAnalysisTaskMixInfo();

   virtual void    UserCreateOutputObjects();
   virtual void    UserExec(Option_t *option);
   virtual void    Terminate(Option_t *);
   virtual void    UserExecMix(Option_t *option = "");
   virtual void    FinishTaskOutput();

   void            InitInputHandlers();
   void            InitMixInfo();
   // sets log type to list of classes
   void            SetLogType(AliLog::EType_t type, TString allClasses = "");
   // sets correctly debug level to AliLog for all classes listed in fLogClassesString
   void            SetDebugForAllClasses();

   void            PrintEventInfo();

private:

   AliMultiInputEventHandler  *fInputEHMain;       //! input multi handler
   AliMixInputEventHandler    *fInputEHMix;        //! mix input handler

   TList                      *fOutputList;        //! output list
   AliMixInfo                 *fMixInfo;           //! mix info

   Long64_t                    fCurrentEntryTmp;   //! temporary current entry number

   AliLog::EType_t             fLogType;           // log type
   TString                     fLogClassesString;  // all classes string divided with ":"

   AliAnalysisTaskMixInfo(const AliAnalysisTaskMixInfo &); // not implemented
   AliAnalysisTaskMixInfo &operator=(const AliAnalysisTaskMixInfo &); // not implemented

   ClassDef(AliAnalysisTaskMixInfo, 1); // example of analysis
};

#endif
 AliAnalysisTaskMixInfo.h:1
 AliAnalysisTaskMixInfo.h:2
 AliAnalysisTaskMixInfo.h:3
 AliAnalysisTaskMixInfo.h:4
 AliAnalysisTaskMixInfo.h:5
 AliAnalysisTaskMixInfo.h:6
 AliAnalysisTaskMixInfo.h:7
 AliAnalysisTaskMixInfo.h:8
 AliAnalysisTaskMixInfo.h:9
 AliAnalysisTaskMixInfo.h:10
 AliAnalysisTaskMixInfo.h:11
 AliAnalysisTaskMixInfo.h:12
 AliAnalysisTaskMixInfo.h:13
 AliAnalysisTaskMixInfo.h:14
 AliAnalysisTaskMixInfo.h:15
 AliAnalysisTaskMixInfo.h:16
 AliAnalysisTaskMixInfo.h:17
 AliAnalysisTaskMixInfo.h:18
 AliAnalysisTaskMixInfo.h:19
 AliAnalysisTaskMixInfo.h:20
 AliAnalysisTaskMixInfo.h:21
 AliAnalysisTaskMixInfo.h:22
 AliAnalysisTaskMixInfo.h:23
 AliAnalysisTaskMixInfo.h:24
 AliAnalysisTaskMixInfo.h:25
 AliAnalysisTaskMixInfo.h:26
 AliAnalysisTaskMixInfo.h:27
 AliAnalysisTaskMixInfo.h:28
 AliAnalysisTaskMixInfo.h:29
 AliAnalysisTaskMixInfo.h:30
 AliAnalysisTaskMixInfo.h:31
 AliAnalysisTaskMixInfo.h:32
 AliAnalysisTaskMixInfo.h:33
 AliAnalysisTaskMixInfo.h:34
 AliAnalysisTaskMixInfo.h:35
 AliAnalysisTaskMixInfo.h:36
 AliAnalysisTaskMixInfo.h:37
 AliAnalysisTaskMixInfo.h:38
 AliAnalysisTaskMixInfo.h:39
 AliAnalysisTaskMixInfo.h:40
 AliAnalysisTaskMixInfo.h:41
 AliAnalysisTaskMixInfo.h:42
 AliAnalysisTaskMixInfo.h:43
 AliAnalysisTaskMixInfo.h:44
 AliAnalysisTaskMixInfo.h:45
 AliAnalysisTaskMixInfo.h:46
 AliAnalysisTaskMixInfo.h:47
 AliAnalysisTaskMixInfo.h:48
 AliAnalysisTaskMixInfo.h:49
 AliAnalysisTaskMixInfo.h:50
 AliAnalysisTaskMixInfo.h:51
 AliAnalysisTaskMixInfo.h:52
 AliAnalysisTaskMixInfo.h:53
 AliAnalysisTaskMixInfo.h:54
 AliAnalysisTaskMixInfo.h:55
 AliAnalysisTaskMixInfo.h:56
 AliAnalysisTaskMixInfo.h:57
 AliAnalysisTaskMixInfo.h:58
 AliAnalysisTaskMixInfo.h:59
 AliAnalysisTaskMixInfo.h:60