PandaRoot
PndMapSorterTask.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 version 3 (LGPL) version 3, *
6  * copied verbatim in the file "LICENSE" *
7  ********************************************************************************/
8 
13 #ifndef PndMapSorterTask_H
14 #define PndMapSorterTask_H
15 
16 #include "FairTask.h" // for FairTask, InitStatus
17 
18 #include "PndMapSorter.h"
19 
20 #include "Rtypes.h" // for Bool_t, Int_t, kTRUE, etc
21 #include "TString.h" // for TString
22 
23 class FairTimeStamp;
24 class TClonesArray;
25 
26 class PndMapSorterTask : public FairTask {
27  public:
30  : FairTask("SorterTask"), fSorter(nullptr), fPersistance(kTRUE), fDigiPixelMCInfo(kFALSE), fInputBranch(), fInputArray(nullptr), fOutputBranch(), fFolder(),
31  fOutputArray(nullptr), fEntryNr(0), fTimeOffset(1000000000)
32  {
33  SetVerbose(0);
34  }
35 
37  PndMapSorterTask(const char *name)
38  : FairTask(name), fSorter(nullptr), fPersistance(kTRUE), fDigiPixelMCInfo(kFALSE), fInputBranch(), fInputArray(nullptr), fOutputBranch(), fFolder(), fOutputArray(nullptr),
39  fEntryNr(0), fTimeOffset(1000000)
40  {
41  SetVerbose(0);
42  }
43 
44  PndMapSorterTask(TString inputBranch, TString outputBranch, TString folderName)
45  : FairTask("Sorter"), fSorter(nullptr), fPersistance(kTRUE), fDigiPixelMCInfo(kFALSE), fInputBranch(inputBranch), fInputArray(nullptr), fOutputBranch(outputBranch),
46  fFolder(folderName), fOutputArray(nullptr), fEntryNr(0), fTimeOffset(1000000)
47  {
48  SetVerbose(0);
49  }
50 
53  {
54  if (fSorter != nullptr) {
55  delete fSorter;
56  }
57  }
58 
60  virtual InitStatus Init();
61  virtual InitStatus ReInit();
62 
64  virtual void Exec(Option_t *opt);
65  virtual void FinishEvent();
66  virtual void FinishTask();
67 
68  virtual void SetParContainers(){};
69 
70  void SetPersistance(Bool_t p = kTRUE) { fPersistance = p; };
71  Bool_t GetPersistance() { return fPersistance; };
72 
73  void SetTimeOffset(Double_t val) { fTimeOffset = val; }
74 
75  virtual void AddNewDataToTClonesArray(FairTimeStamp *data);
76  // virtual FairRingSorter* InitSorter(Int_t numberOfCells, Double_t widthOfCells) const;
77 
78  protected:
81  Bool_t fPersistance;
85  TString fInputBranch;
86  TClonesArray *fInputArray;
88  TString fOutputBranch;
89  TString fFolder;
90  TClonesArray *fOutputArray;
91  Int_t fEntryNr;
92  Double_t fTimeOffset;
95 
97 };
98 
99 #endif
virtual void SetParContainers()
TClonesArray * fInputArray
PndMapSorterTask(TString inputBranch, TString outputBranch, TString folderName)
PndMapSorter * fSorter
virtual void FinishEvent()
virtual void Exec(Option_t *opt)
PndMapSorterTask(const char *name)
void SetPersistance(Bool_t p=kTRUE)
virtual InitStatus ReInit()
virtual InitStatus Init()
virtual void FinishTask()
virtual ~PndMapSorterTask()
virtual void AddNewDataToTClonesArray(FairTimeStamp *data)
TClonesArray * fOutputArray
PndMapSorterTask & operator=(const PndMapSorterTask &)
void SetTimeOffset(Double_t val)
ClassDef(PndMapSorterTask, 2)