Lumiera
0.pre.03
»edit your freedom«
|
Go to the source code of this file.
Major public Interface to the Session subsystem of Lumiera GUI.
This interface describes the ability of the Session to trigger the execution of pre-defined commands, outfitted with suitable arguments and parameters. Triggering of these commands typically happens in response to some messages being sent over the UI-Bus. Likewise, external entities (e.g. plug-ins) may invoke commands over this interface to alter the session.
For this reason, the operations exposed here are defined in terms matching the structure of binding and invocation messages. This goes so far as to accept the command arguments for binding packaged as Record<GenNode>
. For each command, there needs to be a registration record within the Steam-Layer implementation. The service implementation backing this facade indeed retrieves the corresponding steam::control::Command handles to perform the binding operation and hands them over to the SteamDispatcher for invocation.
Definition in file session-command-facade.h.
#include "lib/depend.hpp"
#include "lib/diff/gen-node.hpp"
#include "lib/symbol.hpp"
#include <string>
#include "common/interface.h"
Classes | |
class | SessionCommand |
Global access point to invoke commands and cause edit operations within the Session. More... | |
Namespaces | |
steam | |
Steam-Layer implementation namespace root. | |
steam::control | |
Steam-Layer dispatcher, controller and administrative facilities. | |