Hedgehog  3.1.0
A library to generate hybrid pipeline workflow systems
Loading...
Searching...
No Matches
default_multi_executes.h
Go to the documentation of this file.
1
2
3#ifndef HEDGEHOG_DEFAULT_MULTI_EXECUTES_H_
4#define HEDGEHOG_DEFAULT_MULTI_EXECUTES_H_
5
6#include "default_execute.h"
7
9namespace hh {
11namespace core {
13namespace implementor {
14
15
18template<class ...Inputs>
19class DefaultMultiExecutes : public DefaultExecute<Inputs>... {
20 public:
21
27 template <class MultiExecute> requires (std::is_base_of_v<behavior::Execute<Inputs>, MultiExecute> && ...)
28 explicit DefaultMultiExecutes(MultiExecute *const multiExecutesNode) : DefaultExecute<Inputs>(multiExecutesNode)... {}
29
31 ~DefaultMultiExecutes() override = default;
32};
33
34}
35}
36}
37#endif //HEDGEHOG_DEFAULT_MULTI_EXECUTES_H_
Hedgehog main namespace.
Default execute implementor, only calls user-defined execute method in behavior::Execute interface.
Default concrete implementation for different typed execution method for tasks.
DefaultMultiExecutes(MultiExecute *const multiExecutesNode)
Constructor using an user-defined node capable of doing computation (inheriting from behavior::Execut...
~DefaultMultiExecutes() override=default
Default destructor.