// // Copyright (c) 2019-2021 Ryujinx // // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU Lesser General Public License as published by // the Free Software Foundation, either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU Lesser General Public License for more details. // // You should have received a copy of the GNU Lesser General Public License // along with this program. If not, see . // namespace Ryujinx.Audio.Renderer.Server.Performance { /// /// The header of a performance frame. /// public interface IPerformanceHeader { /// /// Get the entry count offset in this structure. /// /// The entry count offset in this structure. int GetEntryCountOffset(); /// /// Set the DSP running behind flag. /// /// The flag. void SetDspRunningBehind(bool isRunningBehind); /// /// Set the count of voices that were dropped. /// /// The count of voices that were dropped. void SetVoiceDropCount(uint voiceCount); /// /// Set the start ticks of the . (before sending commands) /// /// The start ticks of the . (before sending commands) void SetStartRenderingTicks(ulong startTicks); /// /// Set the header magic. /// /// The header magic. void SetMagic(uint magic); /// /// Set the offset of the next performance header. /// /// The offset of the next performance header. void SetNextOffset(int nextOffset); /// /// Set the total time taken by all the commands profiled. /// /// The total time taken by all the commands profiled. void SetTotalProcessingTime(int totalProcessingTime); /// /// Set the index of this performance frame. /// /// The index of this performance frame. void SetIndex(uint index); /// /// Get the total count of entries in this frame. /// /// The total count of entries in this frame. int GetEntryCount(); /// /// Get the total count of detailed entries in this frame. /// /// The total count of detailed entries in this frame. int GetEntryDetailCount(); /// /// Set the total count of entries in this frame. /// /// The total count of entries in this frame. void SetEntryCount(int entryCount); /// /// Set the total count of detailed entries in this frame. /// /// The total count of detailed entries in this frame. void SetEntryDetailCount(int entryDetailCount); } }