25#ifndef LMMS_AUDIO_ENGINE_PROFILER_H
26#define LMMS_AUDIO_ENGINE_PROFILER_H
70 return m_detailLoad[
static_cast<std::size_t
>(
type)].load(std::memory_order_relaxed);
CAdPlugDatabase::CRecord::RecordType type
Definition adplugdb.cpp:93
AudioEngineProfiler & m_profiler
Definition AudioEngineProfiler.h:88
Probe(const Probe &)=delete
const AudioEngineProfiler::DetailType m_type
Definition AudioEngineProfiler.h:89
Probe(AudioEngineProfiler &profiler, AudioEngineProfiler::DetailType type)
Definition AudioEngineProfiler.h:76
Probe & operator=(const Probe &)=delete
~Probe()
Definition AudioEngineProfiler.h:82
std::array< MicroTimer, DetailCount > m_detailTimer
Definition AudioEngineProfiler.h:104
~AudioEngineProfiler()=default
void startPeriod()
Definition AudioEngineProfiler.h:44
std::array< std::atomic< float >, DetailCount > m_detailLoad
Definition AudioEngineProfiler.h:106
void finishPeriod(sample_rate_t sampleRate, f_cnt_t framesPerPeriod)
Definition AudioEngineProfiler.cpp:41
std::array< int, DetailCount > m_detailTime
Definition AudioEngineProfiler.h:105
std::atomic< float > m_cpuLoad
Definition AudioEngineProfiler.h:100
MicroTimer m_periodTimer
Definition AudioEngineProfiler.h:99
QFile m_outputFile
Definition AudioEngineProfiler.h:101
void finishDetail(const DetailType type)
Definition AudioEngineProfiler.h:94
static constexpr auto DetailCount
Definition AudioEngineProfiler.h:66
void setOutputFile(const QString &outputFile)
Definition AudioEngineProfiler.cpp:70
DetailType
Definition AudioEngineProfiler.h:58
@ Effects
Definition AudioEngineProfiler.h:61
@ Mixing
Definition AudioEngineProfiler.h:62
@ NoteSetup
Definition AudioEngineProfiler.h:59
@ Instruments
Definition AudioEngineProfiler.h:60
@ Count
Definition AudioEngineProfiler.h:63
int detailLoad(const DetailType type) const
Definition AudioEngineProfiler.h:68
void startDetail(const DetailType type)
Definition AudioEngineProfiler.h:93
int cpuLoad() const
Definition AudioEngineProfiler.h:51
AudioEngineProfiler()
Definition AudioEngineProfiler.cpp:32
Definition MicroTimer.h:34
Definition AudioAlsa.cpp:35
std::uint32_t sample_rate_t
Definition LmmsTypes.h:42
std::uint64_t f_cnt_t
Definition LmmsTypes.h:43