ifw-sup 5.0.0
Loading...
Searching...
No Matches
iSubsys.hpp
Go to the documentation of this file.
1
9#ifndef SUP_SYSSUP_COMMON_ISUBSYS_HPP
10#define SUP_SYSSUP_COMMON_ISUBSYS_HPP
11
12#include <any>
13
14#include "ifw/sup/syssup/common/events.rad.hpp"
15#include <rad/getPayload.hpp>
16
17
19
20 class ISubsysConfig;
28 class ISubsys {
29
30 public:
31
37 virtual bool IsNotReady() const = 0;
43 virtual bool IsReady() const = 0;
44
50 virtual bool IsOperational() const = 0;
51
57 virtual void CheckSubsysFailure() const = 0;
58
64 virtual bool IsDisabling() const = 0;
65
66 virtual std::optional<elt::mal::future<void>> Connect() = 0;
67
68 virtual void Close() = 0;
69
70 virtual void StartSubscription() = 0;
71
72 virtual void StopSubscription() = 0;
78 virtual elt::mal::future<std::string> Init() = 0;
79
85 virtual elt::mal::future<std::string> Enable() = 0;
86
92 virtual elt::mal::future<std::string> Disable() = 0;
93
99 virtual elt::mal::future<std::string> Stop() = 0;
100
101 virtual elt::mal::future<std::string> GetState() = 0;
102
103 virtual elt::mal::future<std::string> GetStatus() = 0;
104
105 virtual elt::mal::future<std::string> GetVersion() = 0;
111 virtual elt::mal::future<std::string> Reset() = 0;
112
113
118 virtual void Status(const std::string& payload, std::string& buffer) = 0;
119
120
128 virtual void Ignore(rad::AnyEvent const& last_event) = 0;
129
137 virtual void StopIgn(rad::AnyEvent const& last_event) = 0;
138
146 virtual void SubsysReset(rad::AnyEvent const& last_event) = 0;
147
155 virtual void SubsysInit(rad::AnyEvent const& last_event) = 0;
156
164 virtual void SubsysEnable(rad::AnyEvent const& last_event) = 0;
165
173 virtual void SubsysDisable(rad::AnyEvent const& last_event) = 0;
174
175
183 virtual void Setup(const std::any& payload) = 0;
184
189 virtual void UpdateConfig() = 0;
194 virtual std::string GetName() const = 0;
195 };
196
197}
198
199
200#endif //SUP_SYSSUP_COMMON_ISUBSYS_HPP
Definition iSubsys.hpp:28
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.
ActionsInit class source file.
Definition actionMgr.cpp:32