ifw-slm 0.1.2
 
Loading...
Searching...
No Matches
loopCompletionHandler.hpp
Go to the documentation of this file.
1
10#ifndef IFWSLM_LOOP_COMPLETION_HANDLER_HPP
11#define IFWSLM_LOOP_COMPLETION_HANDLER_HPP
12
13#include <string>
14#include <memory>
15
16#include <rad/application.hpp>
17
18namespace ifw::slm {
19
33public:
34 virtual ~LoopCompletionHandler() = default;
35
36protected:
43
44public:
53 virtual void SignalSuccess(int loop_index) = 0;
54
64 virtual void SignalError(int loop_index, const std::string& error_message = "") = 0;
65
68};
69
76std::unique_ptr<LoopCompletionHandler> CreateLoopCompletionHandler(rad::Application& appl);
77
78} // namespace ifw::slm
79
80#endif // IFWSLM_LOOP_COMPLETION_HANDLER_HPP
virtual void SignalSuccess(int loop_index)=0
Signal successful loop cycle completion.
virtual void SignalError(int loop_index, const std::string &error_message="")=0
Signal loop cycle error.
LoopCompletionHandler & operator=(const LoopCompletionHandler &)=delete
LoopCompletionHandler()=default
Protected constructor for interface.
LoopCompletionHandler(const LoopCompletionHandler &)=delete
virtual ~LoopCompletionHandler()=default
Definition actionMgr.cpp:29
std::unique_ptr< LoopCompletionHandler > CreateLoopCompletionHandler(rad::Application &appl)
Factory function to create LoopCompletionHandler instances.
Definition loopCompletionHandler.cpp:106