ifw-sup 5.1.0
 
Loading...
Searching...
No Matches
iSubsys.hpp
Go to the documentation of this file.
1
7
8#ifndef SUP_SYSSUP_COMMON_ISUBSYS_HPP
9#define SUP_SYSSUP_COMMON_ISUBSYS_HPP
10
11#include <any>
12
13#include "ifw/sup/syssup/common/events.rad.hpp"
14#include <rad/getPayload.hpp>
15
16
18
19 class ISubsysConfig;
27 class ISubsys {
28
29 public:
30
36 virtual bool IsNotReady() const = 0;
42 virtual bool IsReady() const = 0;
43
49 virtual bool IsOperational() const = 0;
50
56 virtual void CheckSubsysFailure() const = 0;
57
63 virtual bool IsDisabling() const = 0;
64
65 virtual std::optional<elt::mal::future<void>> Connect() = 0;
66
67 virtual void Close() = 0;
68
69 virtual void StartSubscription() = 0;
70
71 virtual void StopSubscription() = 0;
77 virtual elt::mal::future<std::string> Init() = 0;
78
84 virtual elt::mal::future<std::string> Enable() = 0;
85
91 virtual elt::mal::future<std::string> Disable() = 0;
92
98 virtual elt::mal::future<std::string> Stop() = 0;
99
100 virtual elt::mal::future<std::string> GetState() = 0;
101
102 virtual elt::mal::future<std::string> GetStatus() = 0;
103
104 virtual elt::mal::future<std::string> GetVersion() = 0;
110 virtual elt::mal::future<std::string> Reset() = 0;
111
112
117 virtual void Status(const std::string& payload, std::string& buffer) = 0;
118
119
127 virtual void Ignore(rad::AnyEvent const& last_event) = 0;
128
136 virtual void StopIgn(rad::AnyEvent const& last_event) = 0;
137
145 virtual void SubsysReset(rad::AnyEvent const& last_event) = 0;
146
154 virtual void SubsysInit(rad::AnyEvent const& last_event) = 0;
155
163 virtual void SubsysEnable(rad::AnyEvent const& last_event) = 0;
164
172 virtual void SubsysDisable(rad::AnyEvent const& last_event) = 0;
173
174
182 virtual void Setup(const std::any& payload) = 0;
183
188 virtual void UpdateConfig() = 0;
193 virtual std::string GetName() const = 0;
194 };
195
196}
197
198
199#endif //SUP_SYSSUP_COMMON_ISUBSYS_HPP
Definition iSubsys.hpp:27
virtual elt::mal::future< std::string > GetStatus()=0
virtual std::string GetName() const =0
Get subsys name.
virtual void UpdateConfig()=0
Update subsystem configuration.
virtual bool IsNotReady() const =0
Check if subsys is Standby/NotReady.
virtual bool IsReady() const =0
Check if subsys is Standby/Ready.
virtual elt::mal::future< std::string > Disable()=0
Executes a Disable command.
virtual void Status(const std::string &payload, std::string &buffer)=0
Obtain the status of the subsys.
virtual void Ignore(rad::AnyEvent const &last_event)=0
Executes a Ignore.
virtual void SubsysReset(rad::AnyEvent const &last_event)=0
Executes a hardware reset command.
virtual void CheckSubsysFailure() const =0
Check if subsys is in failure state.
virtual void SubsysInit(rad::AnyEvent const &last_event)=0
Executes a hardware init command.
virtual void Setup(const std::any &payload)=0
Executes a run time configuration.
virtual std::optional< elt::mal::future< void > > Connect()=0
virtual elt::mal::future< std::string > GetState()=0
virtual elt::mal::future< std::string > Stop()=0
Executes a Stop command.
virtual elt::mal::future< std::string > Reset()=0
Executes a Reset command.
virtual elt::mal::future< std::string > Init()=0
Executes a Init command.
virtual void SubsysEnable(rad::AnyEvent const &last_event)=0
Executes a hardware enable command.
virtual bool IsDisabling() const =0
Check if subsys is disablig.
virtual void SubsysDisable(rad::AnyEvent const &last_event)=0
Executes a hardware disable command.
virtual elt::mal::future< std::string > Enable()=0
Executes a Enable command.
virtual bool IsOperational() const =0
Check if subsys is Operational.
virtual elt::mal::future< std::string > GetVersion()=0
virtual void StopIgn(rad::AnyEvent const &last_event)=0
Executes a StopIgn.
ActionMgr class source file.
Definition actionMgr.cpp:30