A processor's declared channels. More...
#include <value_channel_set.hpp>
Public Types | |
| enum class | DeclareError { ok , empty_name , duplicate_name , reserved_character } |
| Why a declaration was refused. More... | |
Public Member Functions | |
| ValueChannelSet ()=default | |
| ValueChannelSet (const ValueChannelSet &)=delete | |
| ValueChannelSet (ValueChannelSet &&)=delete | |
| ValueChannelSet & | operator= (const ValueChannelSet &)=delete |
| ValueChannelSet & | operator= (ValueChannelSet &&)=delete |
| std::uint64_t | generation_identity () const noexcept |
| Process-local identity assigned with the first declaration in this exact set lifetime. | |
| ScalarSource * | declare_scalar (std::string name, std::string unit={}, float neutral=0.0f, DeclareError *error=nullptr) |
| Declare a scalar channel. | |
| MeterSource * | declare_meter (std::string name, std::string unit={}, float neutral=0.0f, DeclareError *error=nullptr) |
| Declare a multi-channel meter. | |
| VectorSource * | declare_vector (std::string name, std::string unit={}, float neutral=0.0f, DeclareError *error=nullptr) |
| Declare a block channel for a scope-style display. | |
| EventSource * | declare_events (std::string name, std::string unit={}, DeclareError *error=nullptr) |
| Declare occurrences carrying frame offsets and values. | |
| ScalarSource * | scalar (std::string_view name) const |
| Look up a declared channel by its exact name. | |
| MeterSource * | meter (std::string_view name) const |
| VectorSource * | vector (std::string_view name) const |
| EventSource * | events (std::string_view name) const |
| const std::vector< ValueChannelInfo > & | infos () const noexcept |
| Every declared channel, in declaration order. | |
| ValueChannelTelemetryAttachment | attach_telemetry () const |
| Claim the transport-free telemetry sidecars. | |
| bool | empty () const noexcept |
| std::size_t | size () const noexcept |
Static Public Member Functions | |
| static const char * | describe (DeclareError e) noexcept |
| Human-readable reason, for diagnostics and test failure messages. | |
A processor's declared channels.
Construct and declare on the host thread, before audio runs; the name set is fixed thereafter so a binding resolved once stays valid and discovery cannot race a declaration. Declaring returns a reference the processor keeps and publishes through.
|
strong |
|
delete |
|
delete |
Claim the transport-free telemetry sidecars.
The claim is exclusive; callers receive an invalid attachment while another reader owns them. Creating and destroying the attachment happens off the audio thread.
| EventSource * pulp::dataplane::ValueChannelSet::declare_events | ( | std::string | name, |
| std::string | unit = {}, | ||
| DeclareError * | error = nullptr ) |
Declare occurrences carrying frame offsets and values.
| MeterSource * pulp::dataplane::ValueChannelSet::declare_meter | ( | std::string | name, |
| std::string | unit = {}, | ||
| float | neutral = 0.0f, | ||
| DeclareError * | error = nullptr ) |
Declare a multi-channel meter.
| ScalarSource * pulp::dataplane::ValueChannelSet::declare_scalar | ( | std::string | name, |
| std::string | unit = {}, | ||
| float | neutral = 0.0f, | ||
| DeclareError * | error = nullptr ) |
Declare a scalar channel.
Returns nullptr on refusal; error receives the reason when non-null.
| VectorSource * pulp::dataplane::ValueChannelSet::declare_vector | ( | std::string | name, |
| std::string | unit = {}, | ||
| float | neutral = 0.0f, | ||
| DeclareError * | error = nullptr ) |
Declare a block channel for a scope-style display.
|
staticnoexcept |
Human-readable reason, for diagnostics and test failure messages.
|
inlinenoexcept |
| EventSource * pulp::dataplane::ValueChannelSet::events | ( | std::string_view | name | ) | const |
|
noexcept |
Process-local identity assigned with the first declaration in this exact set lifetime.
Unlike its address, this does not repeat when allocator storage is reused after a hot swap. Empty sets report zero.
|
inlinenoexcept |
Every declared channel, in declaration order.
This is what discovery and a UI lint read.
| MeterSource * pulp::dataplane::ValueChannelSet::meter | ( | std::string_view | name | ) | const |
|
delete |
|
delete |
| ScalarSource * pulp::dataplane::ValueChannelSet::scalar | ( | std::string_view | name | ) | const |
Look up a declared channel by its exact name.
Returns nullptr when the name is absent OR was declared with a different shape — never creates. Call from the reader (UI) thread.
|
inlinenoexcept |
| VectorSource * pulp::dataplane::ValueChannelSet::vector | ( | std::string_view | name | ) | const |