From 8309d0dade37684076ad530bfbca5d4ffc6d1f4d Mon Sep 17 00:00:00 2001 From: Lioncash Date: Wed, 21 Dec 2016 17:19:12 -0500 Subject: citra-qt: Move graphics debugging code into its own folder Keeps all graphics debugging stuff from cluttering up the root debugger folder --- src/citra_qt/debugger/graphics/graphics_cmdlists.h | 61 ++++++++++++++++++++++ 1 file changed, 61 insertions(+) create mode 100644 src/citra_qt/debugger/graphics/graphics_cmdlists.h (limited to 'src/citra_qt/debugger/graphics/graphics_cmdlists.h') diff --git a/src/citra_qt/debugger/graphics/graphics_cmdlists.h b/src/citra_qt/debugger/graphics/graphics_cmdlists.h new file mode 100644 index 000000000..8f40b94c5 --- /dev/null +++ b/src/citra_qt/debugger/graphics/graphics_cmdlists.h @@ -0,0 +1,61 @@ +// Copyright 2014 Citra Emulator Project +// Licensed under GPLv2 or any later version +// Refer to the license.txt file included. + +#pragma once + +#include +#include +#include "video_core/debug_utils/debug_utils.h" +#include "video_core/gpu_debugger.h" + +class QPushButton; +class QTreeView; + +class GPUCommandListModel : public QAbstractListModel { + Q_OBJECT + +public: + enum { + CommandIdRole = Qt::UserRole, + }; + + explicit GPUCommandListModel(QObject* parent); + + int columnCount(const QModelIndex& parent = QModelIndex()) const override; + int rowCount(const QModelIndex& parent = QModelIndex()) const override; + QVariant data(const QModelIndex& index, int role = Qt::DisplayRole) const override; + QVariant headerData(int section, Qt::Orientation orientation, + int role = Qt::DisplayRole) const override; + +public slots: + void OnPicaTraceFinished(const Pica::DebugUtils::PicaTrace& trace); + +private: + Pica::DebugUtils::PicaTrace pica_trace; +}; + +class GPUCommandListWidget : public QDockWidget { + Q_OBJECT + +public: + explicit GPUCommandListWidget(QWidget* parent = nullptr); + +public slots: + void OnToggleTracing(); + void OnCommandDoubleClicked(const QModelIndex&); + + void SetCommandInfo(const QModelIndex&); + + void CopyAllToClipboard(); + +signals: + void TracingFinished(const Pica::DebugUtils::PicaTrace&); + +private: + std::unique_ptr pica_trace; + + QTreeView* list_widget; + QWidget* command_info_widget; + QPushButton* toggle_tracing; +}; -- cgit v1.2.3