Result<T, E> — either holds a T or an E, never both.
Definition result.hpp:76
Immutable root of a Timeline document and its monotonic identity domain.
Definition model.hpp:1079
Immutable, shareable registry of Timeline schema contracts.
Definition schema_registry.hpp:189
runtime::Result< SerializedSnapshot, PersistenceError > serialize_project_for_release(const Project &project, const SchemaRegistry ®istry, const SchemaReleaseMap &release, const SerializeOptions &options={})
Serializes a project using the schema versions pinned by a release map.
runtime::Result< ProjectSnapshotSummary, PersistenceError > peek_project_summary(std::string_view json, const SchemaRegistry ®istry, const DecodeLimits &limits={})
Scans project metadata and structural counts without constructing Project.
runtime::Result< std::vector< Command >, PersistenceError > deserialize_commands(std::string_view json, const SchemaRegistry ®istry, const DecodeLimits &limits={})
Decodes a JSON command array through the supplied schema registry.
runtime::Result< SerializedSnapshot, PersistenceError > serialize_project(const Project &project, const SchemaRegistry ®istry, const SerializeOptions &options={})
Serializes a model-valid project as canonical UTF-8 JSON.
runtime::Result< Project, PersistenceError > deserialize_project(std::string_view json, const SchemaRegistry ®istry, const DecodeLimits &limits={})
Decodes canonical Timeline JSON into a validated Project.
@ PersistenceError
Definition file_journal.hpp:26
Definition program_compiler.hpp:18
Result<T, E> — success / failure union for fallible operations.
Parser, migration, opaque-payload, and Timeline structure quotas.
Definition schema_json.hpp:78
Nonzero monotonic identity for a Timeline-owned object.
Definition item_id.hpp:19
Structural item counts extracted from a serialized project.
Definition serialize.hpp:39
std::size_t sequences
Number of sequences.
Definition serialize.hpp:43
std::size_t midi_lane_points
Number of controller points across all lanes.
Definition serialize.hpp:85
std::size_t midi_lanes
Number of controller/expression lanes across MIDI-content clips.
Definition serialize.hpp:83
std::size_t notes
Number of note events across note-content clips.
Definition serialize.hpp:49
std::size_t tracks
Number of tracks across all sequences.
Definition serialize.hpp:45
std::size_t clips
Number of clips across all tracks.
Definition serialize.hpp:47
std::size_t regions
Number of sequence regions.
Definition serialize.hpp:71
std::size_t automation_lanes
Number of automation lanes across all tracks.
Definition serialize.hpp:53
std::size_t modulation_routes
Number of modulation routes across all tracks.
Definition serialize.hpp:61
std::size_t modulators
Number of modulators across all tracks.
Definition serialize.hpp:57
std::size_t dynamics_events
Number of dynamics context events.
Definition serialize.hpp:79
std::size_t device_placements
Number of device placements across all tracks.
Definition serialize.hpp:51
std::size_t take_comp_segments
Number of selected comp segments across all take lanes.
Definition serialize.hpp:67
std::size_t assets
Number of media assets.
Definition serialize.hpp:41
std::size_t macro_controls
Number of macro controls across all tracks.
Definition serialize.hpp:59
std::size_t scenes
Number of launch scenes.
Definition serialize.hpp:73
std::size_t markers
Number of sequence markers.
Definition serialize.hpp:69
std::size_t groove_steps
Number of groove-template steps.
Definition serialize.hpp:81
std::size_t take_lanes
Number of take lanes across all tracks.
Definition serialize.hpp:63
std::size_t automation_points
Number of automation points across all lanes.
Definition serialize.hpp:55
std::size_t takes
Number of takes across all take lanes.
Definition serialize.hpp:65
std::size_t slots
Number of launch slots across all scenes.
Definition serialize.hpp:75
std::size_t chord_scale_events
Number of chord/scale context events.
Definition serialize.hpp:77
Allocation-light metadata view for project browsers and admission checks.
Definition serialize.hpp:92
std::uint64_t next_item_id
Next never-used project ItemId value.
Definition serialize.hpp:100
ProjectSnapshotCounts counts
Structurally counted item totals.
Definition serialize.hpp:104
ItemId root_sequence_id
Root arrangement sequence identity.
Definition serialize.hpp:102
ItemId project_id
Project identity.
Definition serialize.hpp:96
std::string name
Authored project name.
Definition serialize.hpp:98
std::uint32_t schema_version
Version of the outer project schema envelope.
Definition serialize.hpp:94
Immutable set of schema-version targets identified by a release label.
Definition schema_release.hpp:25
Output quota for project serialization.
Definition serialize.hpp:21
std::size_t max_output_bytes
Maximum bytes accepted in the returned JSON document.
Definition serialize.hpp:23
Canonical serialized project plus extension-preservation status.
Definition serialize.hpp:31
bool has_opaque_objects
Whether at least one OpaqueContent envelope was emitted.
Definition serialize.hpp:35
std::string json
Complete serialized project document.
Definition serialize.hpp:33