Pulp 1.88.0
Cross-platform audio plugin framework
Loading...
Searching...
No Matches
pulp::audio::SampleAssetView Struct Reference

Immutable audio-thread snapshot borrowed from one SampleAsset owner. More...

#include <sample_asset.hpp>

Public Member Functions

bool valid () const noexcept
bool fully_resident () const noexcept
bool preload_contains (std::uint64_t frame) const noexcept
const float * preload_channel_data (std::uint32_t channel) const noexcept

Public Attributes

SampleAssetToken asset {}
SampleStreamSourceToken source {}
const float *const * preload_channels = nullptr
std::uint32_t channels = 0
std::uint64_t total_frames = 0
double sample_rate = 0.0
std::uint64_t preload_frames = 0
bool has_preload_contract = false
SamplePreloadContract preload_contract {}
bool has_stream_source = false
SampleStreamCacheSourceView stream_source {}
SampleAssetRegistrationProof registration {}

Detailed Description

Immutable audio-thread snapshot borrowed from one SampleAsset owner.

The owner and its stream source must outlive every copy of this view.

Member Function Documentation

◆ fully_resident()

bool pulp::audio::SampleAssetView::fully_resident ( ) const
inlinenoexcept

◆ preload_channel_data()

const float * pulp::audio::SampleAssetView::preload_channel_data ( std::uint32_t channel) const
inlinenoexcept

◆ preload_contains()

bool pulp::audio::SampleAssetView::preload_contains ( std::uint64_t frame) const
inlinenoexcept

◆ valid()

bool pulp::audio::SampleAssetView::valid ( ) const
inlinenoexcept

Member Data Documentation

◆ asset

SampleAssetToken pulp::audio::SampleAssetView::asset {}

◆ channels

std::uint32_t pulp::audio::SampleAssetView::channels = 0

◆ has_preload_contract

bool pulp::audio::SampleAssetView::has_preload_contract = false

◆ has_stream_source

bool pulp::audio::SampleAssetView::has_stream_source = false

◆ preload_channels

const float* const* pulp::audio::SampleAssetView::preload_channels = nullptr

◆ preload_contract

SamplePreloadContract pulp::audio::SampleAssetView::preload_contract {}

◆ preload_frames

std::uint64_t pulp::audio::SampleAssetView::preload_frames = 0

◆ registration

SampleAssetRegistrationProof pulp::audio::SampleAssetView::registration {}

◆ sample_rate

double pulp::audio::SampleAssetView::sample_rate = 0.0

◆ source

SampleStreamSourceToken pulp::audio::SampleAssetView::source {}

◆ stream_source

SampleStreamCacheSourceView pulp::audio::SampleAssetView::stream_source {}

◆ total_frames

std::uint64_t pulp::audio::SampleAssetView::total_frames = 0

The documentation for this struct was generated from the following file: