Immutable alternate recording lane owned by a Track. More...
#include <recording.hpp>
Public Member Functions | |
| runtime::Result< TakeLane, ModelError > | insert_take (Take take) const |
| Returns a snapshot with take inserted, or a duplicate/invalid error. | |
| runtime::Result< TakeLane, ModelError > | erase_take (ItemId id) const |
| Returns a snapshot without id. | |
| runtime::Result< TakeLane, ModelError > | with_comp_segments (std::vector< TakeCompSegment > comp) const |
| Returns a snapshot with a validated, canonical replacement comp. | |
| ItemId | id () const noexcept |
| Returns the lane's stable document identity. | |
| const std::string & | name () const noexcept |
| Returns the authored lane name. | |
| std::span< const Take > | takes () const noexcept |
| Returns takes in canonical identity order. | |
| std::span< const TakeCompSegment > | comp_segments () const noexcept |
| Returns comp segments ordered by timeline start then take identity. | |
| const Take * | find_take (ItemId id) const noexcept |
| Finds a take by identity, or returns nullptr when absent. | |
Static Public Member Functions | |
| static runtime::Result< TakeLane, ModelError > | create (ItemId id, std::string name, std::vector< Take > takes, std::vector< TakeCompSegment > comp={}) |
| Validates and creates a lane with its takes and optional comp. | |
Immutable alternate recording lane owned by a Track.
Takes are canonical by identity. Comp segments are sample-exact, non-overlapping document intent; edits return new snapshots.
|
noexcept |
Returns comp segments ordered by timeline start then take identity.
|
static |
Validates and creates a lane with its takes and optional comp.
| runtime::Result< TakeLane, ModelError > pulp::timeline::TakeLane::erase_take | ( | ItemId | id | ) | const |
Returns a snapshot without id.
Removal fails when the take is absent or still referenced by the comp.
Finds a take by identity, or returns nullptr when absent.
|
noexcept |
Returns the lane's stable document identity.
| runtime::Result< TakeLane, ModelError > pulp::timeline::TakeLane::insert_take | ( | Take | take | ) | const |
Returns a snapshot with take inserted, or a duplicate/invalid error.
|
noexcept |
Returns the authored lane name.
|
noexcept |
Returns takes in canonical identity order.
| runtime::Result< TakeLane, ModelError > pulp::timeline::TakeLane::with_comp_segments | ( | std::vector< TakeCompSegment > | comp | ) | const |
Returns a snapshot with a validated, canonical replacement comp.