#pragma once

#include <cstdint>

#include "application/contracts/diagnostics/RuntimeDiagnosticsTypes.h"

namespace ta::application::diagnostics
{
    void reset_application_loop() noexcept;
    void record_application_update_duration(std::uint64_t nanoseconds) noexcept;
    void record_gameworld_update_duration(std::uint64_t nanoseconds) noexcept;
    [[nodiscard]] ApplicationLoopDiagnosticsSnapshot application_loop_snapshot() noexcept;
}
