PandaRoot
BSEmcMCHitProducerTask.h
Go to the documentation of this file.
1 #ifndef BSEMCMCHITPRODUCERTASK_HH
2 #define BSEMCMCHITPRODUCERTASK_HH
3 
4 #include "FairLogger.h"
5 
6 #include "PndContainerI.h"
7 #include "PndInputContainer.h"
8 #include "PndOutputContainer.h"
9 #include "PndProcessTask.h"
10 
12 
21 class BSEmcMCHitProducerTask : public PndProcessTask<BSEmcMCHitProductionData> {
22  public:
23  BSEmcMCHitProducerTask(const std::string &t_detectorName = "Barrel", Bool_t t_storeHits = kTRUE);
24  virtual ~BSEmcMCHitProducerTask();
25 
26  void SetPointBranchName(const std::string &t_hitbranchname) { fPointBranchname = t_hitbranchname; }
27  void SetHitBranchName(const std::string &t_hitbranchname) { fHitBranchname = t_hitbranchname; }
28 
29  protected:
30  virtual void PreProcessing(Option_t * /*unused*/) /*override*/;
31  virtual void PostProcessing(Option_t * /*unused*/) /*override*/;
32 
33  virtual void SetupDataArrays() /*override*/;
34 
35  private:
36  PndOutputContainer<BSEmcMCPoint> *fMCPointInput{nullptr};
37  PndInputContainer<PndMCTrack> *fMCTrackInput{nullptr};
38  PndOutputContainer<BSEmcMCHit> *fMCHitOutput{nullptr};
39 
40  std::string fPointBranchname{""};
41  std::string fHitBranchname{""};
42  ClassDef(BSEmcMCHitProducerTask, 1);
43 };
44 
45 #endif /*BSEMCMCHITPRODUCERTASK_HH*/
Task based version of a PndProcessHandler.
"Smart" container that figures out for you what underlying container needs to be fetched from FairRoo...
"Smart" container that figures out for you what underlying container needs to be fetched from FairRoo...
BSEmcMCHitProducerTask(const std::string &t_detectorName="Barrel", Bool_t t_storeHits=kTRUE)
Task to manage all Processes required to transfrom BSEmcMCPoints into BSEmcMCHits.
void SetHitBranchName(const std::string &t_hitbranchname)
virtual void PreProcessing(Option_t *)
Do some task preparation before PndProcesses are run once per event.
virtual void SetupDataArrays()
Define which data containers need to be fetched from the FairRootManager, pass the data container add...
virtual ~BSEmcMCHitProducerTask()
Interface to a datacontainer to be used in PandaROOT.
virtual void PostProcessing(Option_t *)
Do some task post clean up after PndProcesses are run once per event.
void SetPointBranchName(const std::string &t_hitbranchname)