graphics_cmdlists.hxx 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. // Copyright 2014 Citra Emulator Project
  2. // Licensed under GPLv2
  3. // Refer to the license.txt file included.
  4. #pragma once
  5. #include <QAbstractListModel>
  6. #include <QDockWidget>
  7. #include "video_core/gpu_debugger.h"
  8. #include "video_core/debug_utils/debug_utils.h"
  9. class GPUCommandListModel : public QAbstractListModel
  10. {
  11. Q_OBJECT
  12. public:
  13. GPUCommandListModel(QObject* parent);
  14. int columnCount(const QModelIndex& parent = QModelIndex()) const;
  15. int rowCount(const QModelIndex& parent = QModelIndex()) const override;
  16. QVariant data(const QModelIndex& index, int role = Qt::DisplayRole) const override;
  17. public slots:
  18. void OnPicaTraceFinished(const Pica::DebugUtils::PicaTrace& trace);
  19. private:
  20. Pica::DebugUtils::PicaTrace pica_trace;
  21. };
  22. class GPUCommandListWidget : public QDockWidget
  23. {
  24. Q_OBJECT
  25. public:
  26. GPUCommandListWidget(QWidget* parent = 0);
  27. public slots:
  28. void OnToggleTracing();
  29. signals:
  30. void TracingFinished(const Pica::DebugUtils::PicaTrace&);
  31. private:
  32. std::unique_ptr<Pica::DebugUtils::PicaTrace> pica_trace;
  33. };