diff options
author | Tony Wasserka <neobrainx@gmail.com> | 2015-02-11 22:17:46 +0100 |
---|---|---|
committer | Tony Wasserka <neobrainx@gmail.com> | 2015-02-11 22:17:46 +0100 |
commit | f990728ad44246e5eca0e5ace32ea47f68e280c3 (patch) | |
tree | 40b3e6837a25b8d7b8e269776df9553ad6e3bf41 /src/citra_qt/debugger/graphics_breakpoint_observer.h | |
parent | Merge pull request #558 from kevinhartman/gsp-writereg-mask (diff) | |
parent | citra-qt: Add a vertex shader debugger. (diff) | |
download | yuzu-f990728ad44246e5eca0e5ace32ea47f68e280c3.tar yuzu-f990728ad44246e5eca0e5ace32ea47f68e280c3.tar.gz yuzu-f990728ad44246e5eca0e5ace32ea47f68e280c3.tar.bz2 yuzu-f990728ad44246e5eca0e5ace32ea47f68e280c3.tar.lz yuzu-f990728ad44246e5eca0e5ace32ea47f68e280c3.tar.xz yuzu-f990728ad44246e5eca0e5ace32ea47f68e280c3.tar.zst yuzu-f990728ad44246e5eca0e5ace32ea47f68e280c3.zip |
Diffstat (limited to 'src/citra_qt/debugger/graphics_breakpoint_observer.h')
-rw-r--r-- | src/citra_qt/debugger/graphics_breakpoint_observer.h | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/src/citra_qt/debugger/graphics_breakpoint_observer.h b/src/citra_qt/debugger/graphics_breakpoint_observer.h new file mode 100644 index 000000000..f0d3361f8 --- /dev/null +++ b/src/citra_qt/debugger/graphics_breakpoint_observer.h @@ -0,0 +1,33 @@ +// Copyright 2014 Citra Emulator Project +// Licensed under GPLv2 or any later version +// Refer to the license.txt file included. + +#pragma once + +#include <QDockWidget> + +#include "video_core/debug_utils/debug_utils.h" + +/** + * Utility class which forwards calls to OnPicaBreakPointHit and OnPicaResume to public slots. + * This is because the Pica breakpoint callbacks are called from a non-GUI thread, while + * the widget usually wants to perform reactions in the GUI thread. + */ +class BreakPointObserverDock : public QDockWidget, private Pica::DebugContext::BreakPointObserver { + Q_OBJECT + +public: + BreakPointObserverDock(std::shared_ptr<Pica::DebugContext> debug_context, const QString& title, + QWidget* parent = nullptr); + + void OnPicaBreakPointHit(Pica::DebugContext::Event event, void* data) override; + void OnPicaResume() override; + +private slots: + virtual void OnBreakPointHit(Pica::DebugContext::Event event, void* data) = 0; + virtual void OnResumed() = 0; + +signals: + void Resumed(); + void BreakPointHit(Pica::DebugContext::Event event, void* data); +}; |