Pandora
Pandora source code navigator
Loading...
Searching...
No Matches
Algorithm.h
Go to the documentation of this file.
1
8#ifndef PANDORA_ALGORITHM_H
9#define PANDORA_ALGORITHM_H 1
10
11#include "Pandora/Process.h"
12
13namespace pandora
14{
15
20class Algorithm : public Process
21{
22protected:
26 virtual StatusCode Run() = 0;
27
28 friend class AlgorithmManager;
30};
31
32//------------------------------------------------------------------------------------------------------------------------------------------
33//------------------------------------------------------------------------------------------------------------------------------------------
34
39{
40public:
46 virtual Algorithm *CreateAlgorithm() const = 0;
47
51 virtual ~AlgorithmFactory();
52};
53
54//------------------------------------------------------------------------------------------------------------------------------------------
55
59
60} // namespace pandora
61
62#endif // #ifndef PANDORA_ALGORITHM_H
Header file for the process class.
Factory class for instantiating algorithms.
Definition Algorithm.h:39
virtual ~AlgorithmFactory()
Destructor.
Definition Algorithm.h:56
virtual Algorithm * CreateAlgorithm() const =0
Create an instance of an algorithm.
Algorithm class. Algorithm addresses are held only by the algorithm manager. They have a fully define...
Definition Algorithm.h:21
virtual StatusCode Run()=0
Run the algorithm.
AlgorithmManager class.
PandoraContentApiImpl class.
Process class.
Definition Process.h:27
StatusCode
The StatusCode enum.