Pulp 1.88.0
Cross-platform audio plugin framework
Loading...
Searching...
No Matches
load_measurer.hpp File Reference

Real-time CPU load measurement for audio callbacks. More...

#include <chrono>
#include <algorithm>
#include <atomic>
#include <cmath>
#include <cstdint>
#include <limits>
#include <numeric>
#include <mach/mach_time.h>

Go to the source code of this file.

Classes

struct  pulp::audio::AudioProcessLoadSnapshot
 Snapshot published by AudioProcessLoadMeasurer. More...
struct  pulp::audio::AudioRuntimeOverloadPolicy
struct  pulp::audio::AudioRuntimeOverloadReport
struct  pulp::audio::LoadClockRatio
 Converts a span of monotonic clock ticks to nanoseconds. More...
class  pulp::audio::AudioProcessLoadMeasurer
 Measures the CPU load of an audio processing callback. More...

Namespaces

namespace  pulp
namespace  pulp::audio

Enumerations

enum class  pulp::audio::AudioRuntimeOverloadSeverity : uint8_t { pulp::audio::Nominal = 0 , pulp::audio::Watch , pulp::audio::Overloaded , pulp::audio::Critical }

Functions

const char * pulp::audio::to_string (AudioRuntimeOverloadSeverity severity) noexcept
AudioRuntimeOverloadReport pulp::audio::evaluate_audio_runtime_overload (const AudioProcessLoadSnapshot &load, std::uint64_t xrun_count, const AudioRuntimeOverloadPolicy &policy={}) noexcept

Detailed Description

Real-time CPU load measurement for audio callbacks.