FairRoot
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
FairTestDetectorMQRecoTask.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 #ifndef FAIRTESTDETECTORMQRECOTASK_H
9 #define FAIRTESTDETECTORMQRECOTASK_H
10 
11 #include "FairMQProcessorTask.h"
12 #include "FairRootManager.h"
13 #include "FairTestDetectorDigi.h"
14 #include "FairTestDetectorHit.h"
17 
18 #include <FairMQLogger.h>
19 #include <FairMQMessage.h>
20 #include <TClonesArray.h>
21 
22 template<typename TIn, typename TOut, typename TPayloadIn, typename TPayloadOut>
24 {
25  public:
27  : fRecoTask()
28  {}
29 
30  FairTestDetectorMQRecoTask(Int_t /*verbose*/)
31  : fRecoTask()
32  {}
33 
36 
38  {
39  if (fRecoTask.fDigiArray) {
40  fRecoTask.fDigiArray->Delete();
41  delete fRecoTask.fDigiArray;
42  }
43  if (fRecoTask.fHitArray) {
44  fRecoTask.fHitArray->Delete();
45  delete fRecoTask.fHitArray;
46  }
47  }
48 
49  virtual InitStatus Init()
50  {
51  fRecoTask.SetStreamProcessing(kTRUE);
52  fRecoTask.fDigiArray = new TClonesArray("FairTestDetectorDigi");
53  fRecoTask.fHitArray = new TClonesArray("FairTestDetectorHit");
54 
55  return kSUCCESS;
56  }
57 
58  virtual void Exec(Option_t* opt = "0");
59 
60  private:
61  FairTestDetectorRecoTask fRecoTask;
62 };
63 
64 // Template implementation of exec in FairTestDetectorMQRecoTask.tpl :
65 #include "FairTestDetectorMQRecoTaskBin.tpl"
66 #include "FairTestDetectorMQRecoTaskBoost.tpl"
67 #include "FairTestDetectorMQRecoTaskFlatBuffers.tpl"
68 #include "FairTestDetectorMQRecoTaskMsgpack.tpl"
69 #include "FairTestDetectorMQRecoTaskProtobuf.tpl"
70 #include "FairTestDetectorMQRecoTaskTMessage.tpl"
71 
72 #endif /* FAIRTESTDETECTORMQRECOTASK_H */
InitStatus
Definition: FairTask.h:33
FairTestDetectorMQRecoTask operator=(const FairTestDetectorMQRecoTask &)=delete
virtual void Exec(Option_t *opt="0")
void SetStreamProcessing(Bool_t val=kTRUE)
Definition: FairTask.h:97