CbmRoot
Loading...
Searching...
No Matches
CbmAlgo.h
Go to the documentation of this file.
1/* Copyright (C) 2019 GSI Helmholtzzentrum fuer Schwerionenforschung, Darmstadt
2 SPDX-License-Identifier: GPL-3.0-only
3 Authors: Florian Uhlig [committer] */
4
5// -----------------------------------------------------------------------------
6// ----- -----
7// ----- CbmAlgo -----
8// ----- -----
9// -----------------------------------------------------------------------------
10
11#ifndef CbmAlgo_H
12#define CbmAlgo_H
13
14#include "Rtypes.h"
15
16#include <vector>
17
18class TList;
19
20template<class Input, class Output>
21class CbmAlgo {
22public:
23 CbmAlgo() = default;
24 virtual ~CbmAlgo() = default;
25 CbmAlgo(const CbmAlgo&) = delete;
26 CbmAlgo& operator=(const CbmAlgo&) = delete;
27
28 virtual Bool_t Init() = 0;
29 virtual void Reset() = 0;
30 virtual void Finish() = 0;
31 virtual Bool_t InitContainers() = 0;
32 virtual Bool_t ReInitContainers() = 0;
33 virtual TList* GetParList() = 0;
34
35 virtual std::vector<Output> ProcessInputData(const std::vector<Input>&) = 0;
36
37protected:
39 TList* fParCList {nullptr};
40
41private:
42};
43
44#endif
TList * fParCList
Parameter management.
Definition CbmAlgo.h:39
CbmAlgo()=default
virtual TList * GetParList()=0
virtual ~CbmAlgo()=default
virtual Bool_t InitContainers()=0
virtual Bool_t ReInitContainers()=0
virtual std::vector< Output > ProcessInputData(const std::vector< Input > &)=0
virtual Bool_t Init()=0
virtual void Finish()=0
CbmAlgo & operator=(const CbmAlgo &)=delete
CbmAlgo(const CbmAlgo &)=delete
virtual void Reset()=0