summaryrefslogtreecommitdiffstats
path: root/src/audio_core/renderer/performance/performance_frame_header.h
blob: b1848284e334625b7311681c63b4f10dfa19278d (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
// SPDX-FileCopyrightText: Copyright 2022 yuzu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later

#pragma once

#include "common/common_types.h"

namespace AudioCore::AudioRenderer {

struct PerformanceFrameHeaderVersion1 {
    /* 0x00 */ u32 magic; // "PERF"
    /* 0x04 */ u32 entry_count;
    /* 0x08 */ u32 detail_count;
    /* 0x0C */ u32 next_offset;
    /* 0x10 */ u32 total_processing_time;
    /* 0x14 */ u32 frame_index;
};
static_assert(sizeof(PerformanceFrameHeaderVersion1) == 0x18,
              "PerformanceFrameHeaderVersion1 has the wrong size!");

struct PerformanceFrameHeaderVersion2 {
    /* 0x00 */ u32 magic; // "PERF"
    /* 0x04 */ u32 entry_count;
    /* 0x08 */ u32 detail_count;
    /* 0x0C */ u32 next_offset;
    /* 0x10 */ u32 total_processing_time;
    /* 0x14 */ u32 voices_dropped;
    /* 0x18 */ u64 start_time;
    /* 0x20 */ u32 frame_index;
    /* 0x24 */ bool render_time_exceeded;
    /* 0x25 */ char unk25[0xB];
};
static_assert(sizeof(PerformanceFrameHeaderVersion2) == 0x30,
              "PerformanceFrameHeaderVersion2 has the wrong size!");

} // namespace AudioCore::AudioRenderer