Pulp 1.88.0
Cross-platform audio plugin framework
Loading...
Searching...
No Matches
control_motion_executor.hpp
Go to the documentation of this file.
1#pragma once
2
5
6#include <functional>
7#include <memory>
8#include <optional>
9#include <string>
10
11namespace pulp::inspect {
12
13class MotionInspector;
14class MotionScrubber;
15
21 std::string session_id;
22 std::string instance_id;
23 std::string publication_id;
25 std::function<bool()> authority_live;
26 std::function<std::shared_ptr<void>(std::function<void()>)> subscribe_authority_end;
29};
30
32 std::function<std::optional<ControlMotionTarget>(const ControlAdmissionPlan&)>;
33
38
43 public:
44 static std::unique_ptr<ControlMotionExecutor> create(ControlMotionExecutorConfig config);
45
48
50
51 private:
53 ControlMainThreadExecutor main_thread_;
54};
55
56} // namespace pulp::inspect
Adapts typed control execution onto the completion-carrying Inspector main thread RPC without creatin...
Definition control_main_thread_executor.hpp:12
ControlMotionExecutor(const ControlMotionExecutor &)=delete
static std::unique_ptr< ControlMotionExecutor > create(ControlMotionExecutorConfig config)
ControlOperationExecutor executor() const
ControlMotionExecutor & operator=(const ControlMotionExecutor &)=delete
Definition motion_inspector.hpp:54
Definition motion_scrubber.hpp:35
Definition agent_context.hpp:7
ControlHostTier
Definition control_identity.hpp:100
@ Standalone
Definition control_identity.hpp:102
std::function< std::optional< ControlMotionTarget >(const ControlAdmissionPlan &)> ControlMotionTargetResolver
Definition control_motion_executor.hpp:31
std::function< ControlExecutionOutcome( const ControlAdmissionPlan &, const ControlRequestEnvelope &, const ControlExecutionContext &)> ControlOperationExecutor
Trusted in-process adapter contract.
Definition control_execution.hpp:56
Immutable authority snapshot minted by ControlBroker after all seven permission terms pass.
Definition control_admission.hpp:58
Definition control_motion_executor.hpp:34
std::shared_ptr< InspectorMainThreadRpc > main_thread_rpc
Definition control_motion_executor.hpp:35
ControlMotionTargetResolver resolve_target
Definition control_motion_executor.hpp:36
Exact T1 host state resolved after canonical admission.
Definition control_motion_executor.hpp:18
std::string instance_generation
Definition control_motion_executor.hpp:24
std::string session_id
Definition control_motion_executor.hpp:21
MotionInspector * inspector
Definition control_motion_executor.hpp:27
MotionScrubber * scrubber
Definition control_motion_executor.hpp:28
ControlRegistrationId registration_id
Definition control_motion_executor.hpp:19
ControlHostTier host_tier
Definition control_motion_executor.hpp:20
std::function< std::shared_ptr< void >(std::function< void()>)> subscribe_authority_end
Definition control_motion_executor.hpp:26
std::string publication_id
Definition control_motion_executor.hpp:23
std::string instance_id
Definition control_motion_executor.hpp:22
std::function< bool()> authority_live
Definition control_motion_executor.hpp:25
Definition control_identity.hpp:36