//
// 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 .
//
using Ryujinx.Audio.Renderer.Common;
namespace Ryujinx.Audio.Renderer.Server.Performance
{
///
/// Represents a detailed entry in a performance frame.
///
public interface IPerformanceDetailEntry
{
///
/// Get the start time of this entry event (in microseconds).
///
/// The start time of this entry event (in microseconds).
int GetStartTime();
///
/// Get the start time offset in this structure.
///
/// The start time offset in this structure.
int GetStartTimeOffset();
///
/// Get the processing time of this entry event (in microseconds).
///
/// The processing time of this entry event (in microseconds).
int GetProcessingTime();
///
/// Get the processing time offset in this structure.
///
/// The processing time offset in this structure.
int GetProcessingTimeOffset();
///
/// Set the of this entry.
///
/// The node id of this entry.
void SetNodeId(int nodeId);
///
/// Set the of this entry.
///
/// The type to use.
void SetEntryType(PerformanceEntryType type);
///
/// Set the of this entry.
///
/// The type to use.
void SetDetailType(PerformanceDetailType detailType);
}
}