45#ifndef STEAM_CONTROL_PROC_DISPATCHER_H
46#define STEAM_CONTROL_PROC_DISPATCHER_H
59 using std::unique_ptr;
Access point to singletons and other kinds of dependencies designated by type.
Facility for monitor object based locking.
Dependencies and lifecycle of a partially independent Subsystem of the Application.
function< void(string *)> SigTerm
Guard to manage processing commands to operate on the session.
bool start(Subsys::SigTerm)
starting the SteamDispatcher means to start the session subsystem.
unique_ptr< DispatcherLoop > runningLoop_
bool isRunning()
whether the »session subsystem« is operational.
static lib::Depend< SteamDispatcher > instance
storage for Singleton access
void activate()
activate processing of enqueued session commands.
void deactivate()
halt further processing of session commands
void awaitDeactivation()
block until the dispatcher has actually reached disabled state.
void endRunningLoopState()
void clear()
discard any commands waiting in the dispatcher queue
void requestStop() noexcept
signal to the loop thread that it needs to terminate.
Singleton services and Dependency Injection.
Implementation namespace for support and library code.
Steam-Layer implementation namespace root.
Describing dependencies and lifecycle of the application's primary parts.
Object Monitor based synchronisation.