Immutable identity-bearing placement of one ClipContent value. More...
#include <clip.hpp>
Public Member Functions | |
| ItemId | id () const noexcept |
| Returns the stable clip identity. | |
| ClipTimeAnchor | time_anchor () const noexcept |
| Returns the clip's authored time domain. | |
| const ClipTimeRange & | time_range () const noexcept |
| Returns the complete authored placement range. | |
| timebase::TickPosition | start () const noexcept |
| Returns musical start; precondition: time_anchor() is Musical. | |
| timebase::TickDuration | duration () const noexcept |
| Returns musical duration; precondition: time_anchor() is Musical. | |
| timebase::TickPosition | end () const noexcept |
| Returns musical exclusive end; precondition: time_anchor() is Musical. | |
| timebase::SamplePosition | absolute_start () const noexcept |
| Returns absolute start; precondition: time_anchor() is Absolute. | |
| std::uint64_t | absolute_duration_samples () const noexcept |
| Returns absolute duration in samples; precondition: anchor is Absolute. | |
| timebase::RationalRate | absolute_sample_rate () const noexcept |
| Returns absolute placement rate; precondition: anchor is Absolute. | |
| timebase::SamplePosition | absolute_end () const noexcept |
| Returns absolute exclusive end; precondition: anchor is Absolute. | |
| const ClipContent & | content () const noexcept |
| Returns the immutable content value. | |
| runtime::Result< Clip, ModelError > | with_time_range (ClipTimeRange range) const |
| Returns a snapshot with validated replacement placement. | |
| runtime::Result< Clip, ModelError > | with_content (ClipContent content) const |
| Returns a snapshot with validated replacement content. | |
| runtime::Result< Clip, ModelError > | with_playback_properties (ClipPlaybackProperties playback) const |
| Returns a snapshot with validated replacement gain and fades. | |
| runtime::Result< Clip, ModelError > | with_time_conform (TimeConform time_conform) const |
| Returns a snapshot with validated time-conform intent. | |
| ClipPlaybackProperties | playback_properties () const noexcept |
| Returns the authored gain and fade controls. | |
| TimeConform | time_conform () const noexcept |
| Returns the authored intent. None preserves legacy behavior. | |
Static Public Member Functions | |
| static runtime::Result< Clip, ModelError > | create (ItemId id, timebase::TickPosition start, timebase::TickDuration duration, ClipContent content, ClipPlaybackProperties playback={}, TimeConform time_conform=TimeConform::None) |
| Creates a musical clip in canonical ticks. | |
| static runtime::Result< Clip, ModelError > | create_absolute (ItemId id, timebase::SamplePosition start, std::uint64_t sample_count, timebase::RationalRate sample_rate, ClipContent content, ClipPlaybackProperties playback={}, TimeConform time_conform=TimeConform::None) |
| Creates an absolute clip in samples at sample_rate. | |
Immutable identity-bearing placement of one ClipContent value.
Mutation helpers return path-copy snapshots and never alter this value.
|
noexcept |
Returns absolute duration in samples; precondition: anchor is Absolute.
|
noexcept |
Returns absolute exclusive end; precondition: anchor is Absolute.
|
noexcept |
Returns absolute placement rate; precondition: anchor is Absolute.
|
noexcept |
Returns absolute start; precondition: time_anchor() is Absolute.
|
noexcept |
Returns the immutable content value.
|
static |
Creates a musical clip in canonical ticks.
Validates identity, positive duration, content, playback controls, and that non-default time-conform intent is attached only to media content.
|
static |
Creates an absolute clip in samples at sample_rate.
Validates identity, positive duration, rate, content, and playback controls. Absolute clips accept only TimeConform::None.
|
noexcept |
Returns musical duration; precondition: time_anchor() is Musical.
|
noexcept |
Returns musical exclusive end; precondition: time_anchor() is Musical.
|
noexcept |
Returns the stable clip identity.
|
noexcept |
Returns the authored gain and fade controls.
|
noexcept |
Returns musical start; precondition: time_anchor() is Musical.
|
noexcept |
Returns the clip's authored time domain.
|
noexcept |
Returns the authored intent. None preserves legacy behavior.
|
noexcept |
Returns the complete authored placement range.
| runtime::Result< Clip, ModelError > pulp::timeline::Clip::with_content | ( | ClipContent | content | ) | const |
Returns a snapshot with validated replacement content.
| runtime::Result< Clip, ModelError > pulp::timeline::Clip::with_playback_properties | ( | ClipPlaybackProperties | playback | ) | const |
Returns a snapshot with validated replacement gain and fades.
| runtime::Result< Clip, ModelError > pulp::timeline::Clip::with_time_conform | ( | TimeConform | time_conform | ) | const |
Returns a snapshot with validated time-conform intent.
Non-default intent requires a musical MediaRef clip.
| runtime::Result< Clip, ModelError > pulp::timeline::Clip::with_time_range | ( | ClipTimeRange | range | ) | const |
Returns a snapshot with validated replacement placement.