Pulp 1.88.0
Cross-platform audio plugin framework
Loading...
Searching...
No Matches
rt_safety_contract.hpp File Reference
#include <array>
#include <cstddef>
#include <cstdint>
#include <span>
#include <string_view>

Go to the source code of this file.

Classes

struct  pulp::audio::RtSafetyContract

Namespaces

namespace  pulp
namespace  pulp::audio
namespace  pulp::audio::detail

Enumerations

enum class  pulp::audio::RtSafetyClass : std::uint8_t {
  pulp::audio::AudioCallbackSafe , pulp::audio::AudioCallbackSafeAfterPrepare , pulp::audio::AudioCallbackSafeWithImmutableInputs , pulp::audio::RealtimeTelemetryOnly ,
  pulp::audio::ControlThreadOnly , pulp::audio::BackgroundThreadOnly , pulp::audio::OfflineOnly
}

Functions

constexpr std::string_view pulp::audio::rt_safety_class_name (RtSafetyClass safety_class) noexcept
constexpr bool pulp::audio::rt_safety_class_may_be_called_from_realtime_thread (RtSafetyClass safety_class) noexcept
constexpr bool pulp::audio::rt_safety_class_is_audio_dsp_safe (RtSafetyClass safety_class) noexcept
constexpr RtSafetyContract pulp::audio::detail::make_rt_safety_contract (std::string_view component, std::string_view operation, RtSafetyClass safety_class, bool audio_callback_allowed, bool may_allocate, bool may_lock, bool may_block, bool requires_prepare, std::string_view owner_boundary, std::string_view notes) noexcept
constexpr std::span< const RtSafetyContract > pulp::audio::sampler_looper_rt_safety_contracts () noexcept
constexpr const RtSafetyContract * pulp::audio::find_sampler_looper_rt_safety_contract (std::string_view component, std::string_view operation) noexcept
constexpr std::span< const RtSafetyContract > pulp::audio::core_runtime_rt_safety_contracts () noexcept
constexpr const RtSafetyContract * pulp::audio::find_core_runtime_rt_safety_contract (std::string_view component, std::string_view operation) noexcept

Variables

constexpr std::array pulp::audio::kSamplerLooperRtSafetyContracts
constexpr std::array pulp::audio::kCoreRuntimeRtSafetyContracts