Pulp 1.88.0
Cross-platform audio plugin framework
Loading...
Searching...
No Matches
voice_identity.hpp
Go to the documentation of this file.
1#pragma once
2
3// Value-only authored identity for graph voice-bank slots. Runtime node
4// handles, allocator indexes, epochs, and note generations are deliberately
5// absent from this type and can never affect its encoding.
6
7#include <cstdint>
8#include <string>
9#include <vector>
10
11namespace pulp::host {
12
13enum class VoicePortDirection : std::uint8_t { Input = 0, Output = 1 };
14enum class VoicePortKind : std::uint8_t { Audio = 0, Event = 1, Control = 2 };
15
21
27 std::string template_namespace;
28 std::string template_name;
29 std::uint32_t template_revision = 0;
30 std::uint32_t bank_schema_version = 1;
31 std::uint32_t slot_ordinal = 0;
32 std::vector<std::string> path;
33 bool has_port = false;
35 bool has_parameter = false;
36 std::string parameter;
37};
38
40 bool valid = false;
41 std::vector<std::uint8_t> encoding;
42 std::string sha256;
43 std::string error;
44};
45
51
52} // namespace pulp::host
Bounded event contracts shared by host ingress and graph-authored nodes.
Definition anticipation_eligibility.hpp:9
@ Event
Definition sample_region_proof.hpp:18
VoicePortDirection
Definition voice_identity.hpp:13
@ Output
Definition voice_identity.hpp:13
@ Input
Definition voice_identity.hpp:13
@ Control
Definition signal_graph_node.hpp:34
@ Audio
Definition signal_graph_node.hpp:34
VoicePortKind
Definition voice_identity.hpp:14
@ Audio
Definition voice_identity.hpp:14
VoiceIdentityResult canonical_voice_identity(const VoiceIdentityKey &key)
Encode and hash an authored identity using the G-4 v1 tagged, length-delimited wire form.
Canonical authored identity for one template/bank/slot/path target.
Definition voice_identity.hpp:26
std::vector< std::string > path
Definition voice_identity.hpp:32
std::string template_name
Definition voice_identity.hpp:28
std::uint32_t template_revision
Definition voice_identity.hpp:29
std::string template_namespace
Definition voice_identity.hpp:27
VoicePortKey port
Definition voice_identity.hpp:34
bool has_port
Definition voice_identity.hpp:33
std::string parameter
Definition voice_identity.hpp:36
std::uint32_t bank_schema_version
Definition voice_identity.hpp:30
bool has_parameter
Definition voice_identity.hpp:35
std::uint32_t slot_ordinal
Definition voice_identity.hpp:31
Definition voice_identity.hpp:39
std::string error
Definition voice_identity.hpp:43
std::vector< std::uint8_t > encoding
Definition voice_identity.hpp:41
std::string sha256
Definition voice_identity.hpp:42
bool valid
Definition voice_identity.hpp:40
Definition voice_identity.hpp:16
std::uint32_t ordinal
Definition voice_identity.hpp:19
VoicePortDirection direction
Definition voice_identity.hpp:17
VoicePortKind kind
Definition voice_identity.hpp:18