winss
|
Orchestrates control. More...
#include <control.hpp>
Public Member Functions | |
Control (winss::NotOwningPtr< winss::WaitMultiplexer > multiplexer, DWORD timeout=INFINITE, int timeout_exit_code=1, bool finish_all=true) | |
Control constructor. More... | |
Control (const Control &)=delete | |
No copy. More... | |
Control (Control &&)=delete | |
No move. More... | |
bool | IsStarted () const |
Gets if control has started. More... | |
void | Add (winss::NotOwningPtr< ControlItem > item) |
Add a control item. More... | |
void | Ready (std::string name) |
Mark a control item as ready. More... | |
void | Remove (std::string name) |
Remove a control item. More... | |
int | Start () |
Starts the orchestration. More... | |
Control & | operator= (const Control &)=delete |
No copy. More... | |
Control & | operator= (Control &&)=delete |
No move. More... | |
Orchestrates control.
Control is used for the supervisor and svscan. This is to reuse the orchestration logic.
|
explicit |
Control constructor.
multiplexer | The shared multiplexer. |
timeout | Orchestration timeout. |
timeout_exit_code | exit code for timeout. |
finish_all | If all control items must finish. \ |
References winss::WaitMultiplexer::AddInitCallback(), winss::WaitMultiplexer::AddStopCallback(), winss::WaitMultiplexer::AddTimeoutCallback(), winss::WaitMultiplexer::RemoveTimeoutCallback(), and winss::WaitMultiplexer::Stop().
|
delete |
No copy.
|
delete |
No move.
void winss::Control::Add | ( | winss::NotOwningPtr< ControlItem > | item | ) |
Add a control item.
[in] | item | The item to add to control. |
References winss::WaitMultiplexer::AddInitCallback(), winss::ControlItem::GetName(), and winss::ControlItem::Init().
Referenced by winss::OutboundControlItem::OutboundControlItem().
bool winss::Control::IsStarted | ( | ) | const |
Gets if control has started.
void winss::Control::Ready | ( | std::string | name | ) |
Mark a control item as ready.
[in] | name | The name of the control item. |
void winss::Control::Remove | ( | std::string | name | ) |
Remove a control item.
[in] | name | The name of the control item. |
References winss::WaitMultiplexer::Stop().
int winss::Control::Start | ( | ) |
Starts the orchestration.
References winss::WaitMultiplexer::Start().