From ebd19dec99d9809a669f63294745d7c8facc6d31 Mon Sep 17 00:00:00 2001 From: Kelebek1 Date: Thu, 31 Aug 2023 15:09:15 +0100 Subject: Rework ADSP into a wrapper for apps --- .../renderer/command/performance/performance.cpp | 20 ++++++++++---------- .../renderer/command/performance/performance.h | 13 +++++++------ 2 files changed, 17 insertions(+), 16 deletions(-) (limited to 'src/audio_core/renderer/command/performance') diff --git a/src/audio_core/renderer/command/performance/performance.cpp b/src/audio_core/renderer/command/performance/performance.cpp index 4a881547f..f0cfcc9fd 100644 --- a/src/audio_core/renderer/command/performance/performance.cpp +++ b/src/audio_core/renderer/command/performance/performance.cpp @@ -1,25 +1,25 @@ // SPDX-FileCopyrightText: Copyright 2022 yuzu Emulator Project // SPDX-License-Identifier: GPL-2.0-or-later -#include "audio_core/renderer/adsp/command_list_processor.h" +#include "audio_core/adsp/apps/audio_renderer/command_list_processor.h" #include "audio_core/renderer/command/performance/performance.h" #include "core/core.h" #include "core/core_timing.h" -namespace AudioCore::AudioRenderer { +namespace AudioCore::Renderer { -void PerformanceCommand::Dump([[maybe_unused]] const ADSP::CommandListProcessor& processor, +void PerformanceCommand::Dump([[maybe_unused]] const AudioRenderer::CommandListProcessor& processor, std::string& string) { string += fmt::format("PerformanceCommand\n\tstate {}\n", static_cast(state)); } -void PerformanceCommand::Process(const ADSP::CommandListProcessor& processor) { +void PerformanceCommand::Process(const AudioRenderer::CommandListProcessor& processor) { auto base{entry_address.translated_address}; if (state == PerformanceState::Start) { auto start_time_ptr{reinterpret_cast(base + entry_address.entry_start_time_offset)}; *start_time_ptr = - static_cast(processor.system->CoreTiming().GetClockTicks() - processor.start_time - - processor.current_processing_time); + static_cast(processor.system->CoreTiming().GetGlobalTimeUs().count() - + processor.start_time - processor.current_processing_time); } else if (state == PerformanceState::Stop) { auto processed_time_ptr{ reinterpret_cast(base + entry_address.entry_processed_time_offset)}; @@ -27,14 +27,14 @@ void PerformanceCommand::Process(const ADSP::CommandListProcessor& processor) { reinterpret_cast(base + entry_address.header_entry_count_offset)}; *processed_time_ptr = - static_cast(processor.system->CoreTiming().GetClockTicks() - processor.start_time - - processor.current_processing_time); + static_cast(processor.system->CoreTiming().GetGlobalTimeUs().count() - + processor.start_time - processor.current_processing_time); (*entry_count_ptr)++; } } -bool PerformanceCommand::Verify(const ADSP::CommandListProcessor& processor) { +bool PerformanceCommand::Verify(const AudioRenderer::CommandListProcessor& processor) { return true; } -} // namespace AudioCore::AudioRenderer +} // namespace AudioCore::Renderer diff --git a/src/audio_core/renderer/command/performance/performance.h b/src/audio_core/renderer/command/performance/performance.h index 11a7d6c08..522e51e34 100644 --- a/src/audio_core/renderer/command/performance/performance.h +++ b/src/audio_core/renderer/command/performance/performance.h @@ -10,11 +10,12 @@ #include "audio_core/renderer/performance/performance_manager.h" #include "common/common_types.h" -namespace AudioCore::AudioRenderer { -namespace ADSP { +namespace AudioCore::ADSP::AudioRenderer { class CommandListProcessor; } +namespace AudioCore::Renderer { + /** * AudioRenderer command for writing AudioRenderer performance metrics back to the sysmodule. */ @@ -25,14 +26,14 @@ struct PerformanceCommand : ICommand { * @param processor - The CommandListProcessor processing this command. * @param string - The string to print into. */ - void Dump(const ADSP::CommandListProcessor& processor, std::string& string) override; + void Dump(const AudioRenderer::CommandListProcessor& processor, std::string& string) override; /** * Process this command. * * @param processor - The CommandListProcessor processing this command. */ - void Process(const ADSP::CommandListProcessor& processor) override; + void Process(const AudioRenderer::CommandListProcessor& processor) override; /** * Verify this command's data is valid. @@ -40,7 +41,7 @@ struct PerformanceCommand : ICommand { * @param processor - The CommandListProcessor processing this command. * @return True if the command is valid, otherwise false. */ - bool Verify(const ADSP::CommandListProcessor& processor) override; + bool Verify(const AudioRenderer::CommandListProcessor& processor) override; /// State of the performance PerformanceState state; @@ -48,4 +49,4 @@ struct PerformanceCommand : ICommand { PerformanceEntryAddresses entry_address; }; -} // namespace AudioCore::AudioRenderer +} // namespace AudioCore::Renderer -- cgit v1.2.3