desktop_view_debug.h 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. #pragma once
  2. #include <stdint.h>
  3. #include <gui/view.h>
  4. #include "desktop_events.h"
  5. typedef struct DesktopDebugView DesktopDebugView;
  6. typedef void (*DesktopDebugViewCallback)(DesktopEvent event, void* context);
  7. // Debug info
  8. typedef enum {
  9. DesktopViewStatsFw,
  10. DesktopViewStatsBoot,
  11. DesktopViewStatsMeta,
  12. DesktopViewStatsTotalCount,
  13. } DesktopViewStatsScreens;
  14. struct DesktopDebugView {
  15. View* view;
  16. DesktopDebugViewCallback callback;
  17. void* context;
  18. };
  19. typedef struct {
  20. uint32_t icounter;
  21. uint32_t butthurt;
  22. uint64_t timestamp;
  23. DesktopViewStatsScreens screen;
  24. } DesktopDebugViewModel;
  25. void desktop_debug_set_callback(
  26. DesktopDebugView* debug_view,
  27. DesktopDebugViewCallback callback,
  28. void* context);
  29. View* desktop_debug_get_view(DesktopDebugView* debug_view);
  30. DesktopDebugView* desktop_debug_alloc();
  31. void desktop_debug_free(DesktopDebugView* debug_view);
  32. void desktop_debug_get_dolphin_data(DesktopDebugView* debug_view);
  33. void desktop_debug_reset_screen_idx(DesktopDebugView* debug_view);