36 freeze(std::span<const state::ParamInfo> ordinary_parameters)
const;
44 const std::string&
error() const noexcept {
47 std::span<const SampleRegionParameterContractEntry>
entries() const noexcept {
51 return promoted_parameters_;
53 std::span<const state::ParamInfo>
parameters() const noexcept {
71 std::string error_ =
"parameter contract has not been constructed";
72 std::vector<SampleRegionParameterContractEntry> entries_;
73 std::vector<state::ParamInfo> promoted_parameters_;
74 std::vector<state::ParamInfo> parameters_;
97 return store_->get_value(
id);
118 static std::unique_ptr<SampleRegionParameterOwner>
119 create(std::span<const state::ParamInfo> ordinary_parameters,
141 SampleRegionParameterContract contract_;
143 std::unique_ptr<SampleRegionParameterBinding> binding_;
Definition sample_region_parameters.hpp:80
SampleRegionParameterBinding & operator=(SampleRegionParameterBinding &&)=delete
float value(state::ParamID id) const noexcept
Definition sample_region_parameters.hpp:96
SampleRegionParameterBinding(const SampleRegionParameterBinding &)=delete
SampleRegionParameterBinding(SampleRegionParameterBinding &&)=delete
SampleRegionParameterBinding & operator=(const SampleRegionParameterBinding &)=delete
const SampleRegionParameterContract & contract() const noexcept
Definition sample_region_parameters.hpp:87
state::StateStore & store() noexcept
Definition sample_region_parameters.hpp:93
friend class SampleRegionParameterContract
Definition sample_region_parameters.hpp:101
const state::StateStore & store() const noexcept
Definition sample_region_parameters.hpp:90
Definition sample_region_parameters.hpp:28
std::unique_ptr< SampleRegionParameterBinding > bind(state::StateStore &store) const
SampleRegionParameterContract()=default
friend class SampleRegionParameterBinding
Definition sample_region_parameters.hpp:61
const std::string & error() const noexcept
Definition sample_region_parameters.hpp:44
static SampleRegionParameterContract from_regions(std::span< const SampleRegionDefinition > regions)
bool valid() const noexcept
Definition sample_region_parameters.hpp:38
std::span< const SampleRegionParameterContractEntry > entries() const noexcept
Definition sample_region_parameters.hpp:47
bool matches_promoted(const SampleRegionParameterContract &other) const noexcept
SampleRegionParameterContract freeze(std::span< const state::ParamInfo > ordinary_parameters) const
std::span< const state::ParamInfo > promoted_parameters() const noexcept
Definition sample_region_parameters.hpp:50
std::span< const state::ParamInfo > parameters() const noexcept
Definition sample_region_parameters.hpp:53
bool frozen() const noexcept
Definition sample_region_parameters.hpp:41
friend class SampleRegionParameterOwner
Definition sample_region_parameters.hpp:62
Definition sample_region_parameters.hpp:113
const SampleRegionParameterBinding & binding() const noexcept
Definition sample_region_parameters.hpp:125
const state::StateStore & store() const noexcept
Definition sample_region_parameters.hpp:131
state::StateStore & store() noexcept
Definition sample_region_parameters.hpp:128
static std::unique_ptr< SampleRegionParameterOwner > create(std::span< const state::ParamInfo > ordinary_parameters, const SampleRegionParameterContract &promoted_contract) noexcept
SampleRegionParameterOwner(const SampleRegionParameterOwner &)=delete
SampleRegionParameterOwner & operator=(const SampleRegionParameterOwner &)=delete
const SampleRegionParameterContract & contract() const noexcept
Definition sample_region_parameters.hpp:122
Centralized parameter storage with lock-free value access.
Definition store.hpp:164
std::uint32_t NodeId
Definition graph_types.hpp:7
std::uint32_t PortIndex
Definition graph_types.hpp:8
Bounded event contracts shared by host ingress and graph-authored nodes.
Definition anticipation_eligibility.hpp:9
std::uint32_t SampleRegionId
Definition sample_region_proof.hpp:13
uint32_t ParamID
Unique parameter identifier, stable across plugin versions.
Definition parameter.hpp:55
Definition sample_region_parameters.hpp:16
state::ParamInfo info
Definition sample_region_parameters.hpp:21
std::string key
Definition sample_region_parameters.hpp:18
SampleRegionId region_id
Definition sample_region_parameters.hpp:17
NodeId bound_node_id
Definition sample_region_parameters.hpp:19
PortIndex bound_port
Definition sample_region_parameters.hpp:20
Immutable parameter metadata, registered once at plugin initialization.
Definition parameter.hpp:316