Merge branch 'master', remote branch 'origin' into TPCdev
[u/mrichter/AliRoot.git] / ANALYSIS / AliAnalysisSelector.h
CommitLineData
c52c2132 1#ifndef ALIANALYSISSELECTOR_H
2#define ALIANALYSISSELECTOR_H
3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6// Author: Andrei Gheata, 31/05/2006
7
8//==============================================================================
9// AliAnalysisSelector - Transparent selector class instantiated by an
10// analysis manager object.
11//==============================================================================
12
13#ifndef ROOT_TSelector
14#include "TSelector.h"
15#endif
16
17class AliAnalysisManager;
18
19class AliAnalysisSelector : public TSelector {
20
21protected:
22 Bool_t fInitialized; // Flag that initialization was done
23 AliAnalysisManager *fAnalysis; // Analysis manager to be processed
24
25private:
26 AliAnalysisSelector(const AliAnalysisSelector&); // not implemented
27 AliAnalysisSelector& operator=(const AliAnalysisSelector&); // not implemented
28 void RestoreAnalysisManager();
29
30public:
1f87e9fb 31 AliAnalysisSelector();
c52c2132 32 AliAnalysisSelector(AliAnalysisManager *mgr);
33 virtual ~AliAnalysisSelector();
34
36e82a52 35 virtual int Version() const {return 2;}
c52c2132 36 virtual void Init(TTree *tree);
37 virtual void Begin(TTree *);
38 virtual void SlaveBegin(TTree *tree);
36e82a52 39 virtual Bool_t Notify();
c52c2132 40 virtual Bool_t Process(Long64_t entry);
41 virtual void SlaveTerminate();
42 virtual void Terminate();
43
44 ClassDef(AliAnalysisSelector,0) //A class for processing jobs using AliAnalysisManager
45};
46
47#endif