FairRoot
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
FairTask.h
Go to the documentation of this file.
1 /********************************************************************************
2  * Copyright (C) 2014 GSI Helmholtzzentrum fuer Schwerionenforschung GmbH *
3  * *
4  * This software is distributed under the terms of the *
5  * GNU Lesser General Public Licence (LGPL) version 3, *
6  * copied verbatim in the file "LICENSE" *
7  ********************************************************************************/
8 // -------------------------------------------------------------------------
9 // ----- FairTask header file -----
10 // ----- Created 12/01/04 by M. Al-Turany / D. Bertini -----
11 // -------------------------------------------------------------------------
12 
21 #ifndef FAIRTASK_H
22 #define FAIRTASK_H
23 
24 #include "FairRootManager.h" // for FairRootManager
25 
26 #include <Rtypes.h> // for Int_t, FairTask::Class, etc
27 #include <TString.h> // for TString
28 #include <TTask.h> // for TTask
29 #include <map>
30 
31 class FairLogger;
32 
34 {
38 };
39 
40 class FairTask : public TTask
41 {
42  public:
44  FairTask();
45 
50  FairTask(const char* name, Int_t iVerbose = 1);
51 
53  virtual ~FairTask();
54 
57  void InitTask();
58 
61  void ReInitTask();
62 
65  void SetParTask();
66 
69  virtual void FinishTask();
70 
72  virtual void FinishEvent();
73 
75  void SetVerbose(Int_t iVerbose);
76 
77  void SetInputPersistance(Bool_t val) { fInputPersistance = val; }
78 
79  void CheckInputPersistance(TString branchName)
80  {
82  fInputPersistance = ioman->CheckBranch(branchName);
83  }
84 
85  virtual void ExecuteTask(Option_t* option = "0"); // *MENU*
86 
90  void SetOutputBranchPersistent(TString, Bool_t);
91 
95  Bool_t IsOutputBranchPersistent(TString);
96 
97  void SetStreamProcessing(Bool_t val = kTRUE) { fStreamProcessing = val; }
98 
99  protected:
100  Int_t fVerbose; // Verbosity level
104 
108  virtual InitStatus Init() { return kSUCCESS; };
109 
113  virtual InitStatus ReInit() { return kSUCCESS; };
114 
118  virtual void SetParContainers(){};
119 
123  virtual void Finish(){};
124 
126  void InitTasks();
127 
129  void ReInitTasks();
130 
131  virtual void ExecuteTasks(Option_t* option);
132 
134  void SetParTasks();
135 
137  void FinishTasks();
138 
140  void FinishEvents();
141 
142  private:
143  std::map<TString, Bool_t> fOutputPersistance;
144 
145  FairTask(const FairTask&);
146  FairTask& operator=(const FairTask&);
147 
148  ClassDef(FairTask, 4);
149 };
150 
151 #endif
void InitTasks()
Definition: FairTask.cxx:109
void ReInitTasks()
Definition: FairTask.cxx:200
Bool_t fStreamProcessing
Definition: FairTask.h:103
InitStatus
Definition: FairTask.h:33
virtual void ExecuteTask(Option_t *option="0")
Definition: FairTask.cxx:118
virtual ~FairTask()
Definition: FairTask.cxx:39
Bool_t IsOutputBranchPersistent(TString)
Definition: FairTask.cxx:241
void ReInitTask()
Definition: FairTask.cxx:58
Int_t fInputPersistance
Indicates if input branch is persistant.
Definition: FairTask.h:101
void SetInputPersistance(Bool_t val)
Definition: FairTask.h:77
virtual InitStatus ReInit()
Definition: FairTask.h:113
static FairRootManager * Instance()
void FinishTasks()
Definition: FairTask.cxx:218
virtual void SetParContainers()
Definition: FairTask.h:118
FairTask()
Definition: FairTask.cxx:22
void SetParTasks()
Definition: FairTask.cxx:209
virtual void ExecuteTasks(Option_t *option)
Definition: FairTask.cxx:160
Int_t fVerbose
Definition: FairTask.h:100
void SetOutputBranchPersistent(TString, Bool_t)
Definition: FairTask.cxx:236
void CheckInputPersistance(TString branchName)
Definition: FairTask.h:79
virtual void FinishTask()
Definition: FairTask.cxx:90
void SetVerbose(Int_t iVerbose)
Definition: FairTask.cxx:99
FairLogger * fLogger
Definition: FairTask.h:102
void InitTask()
Definition: FairTask.cxx:41
void FinishEvents()
Definition: FairTask.cxx:227
virtual void Finish()
Definition: FairTask.h:123
virtual InitStatus Init()
Definition: FairTask.h:108
virtual void FinishEvent()
Definition: FairTask.cxx:82
Int_t CheckBranch(const char *BrName)
void SetStreamProcessing(Bool_t val=kTRUE)
Definition: FairTask.h:97
void SetParTask()
Definition: FairTask.cxx:73