diff options
| author | bunnei <bunneidev@gmail.com> | 2018-03-25 16:28:24 -0400 | 
|---|---|---|
| committer | GitHub <noreply@github.com> | 2018-03-25 16:28:24 -0400 | 
| commit | e9315ace9f7f541d251a995ff2d4d3513ddc16c4 (patch) | |
| tree | ba32de7358ed98e1230c1f522a5c7ba35d7ab19e /src/yuzu/debugger/graphics/graphics_breakpoint_observer.h | |
| parent | a0933d92fc8bbb6240fff9a7dc8ed7648be474af (diff) | |
| parent | 0ce52b1da2228f3325d94e52bead7335c8b07d1c (diff) | |
Merge pull request #273 from Subv/textures
GPU: Added code to unswizzle textures and ported the surface viewer from citra
Diffstat (limited to 'src/yuzu/debugger/graphics/graphics_breakpoint_observer.h')
| -rw-r--r-- | src/yuzu/debugger/graphics/graphics_breakpoint_observer.h | 33 | 
1 files changed, 33 insertions, 0 deletions
| diff --git a/src/yuzu/debugger/graphics/graphics_breakpoint_observer.h b/src/yuzu/debugger/graphics/graphics_breakpoint_observer.h new file mode 100644 index 000000000..9d05493cf --- /dev/null +++ b/src/yuzu/debugger/graphics/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 OnMaxwellBreakPointHit and OnMaxwellResume to public slots. + * This is because the Maxwell 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, +                               protected Tegra::DebugContext::BreakPointObserver { +    Q_OBJECT + +public: +    BreakPointObserverDock(std::shared_ptr<Tegra::DebugContext> debug_context, const QString& title, +                           QWidget* parent = nullptr); + +    void OnMaxwellBreakPointHit(Tegra::DebugContext::Event event, void* data) override; +    void OnMaxwellResume() override; + +private slots: +    virtual void OnBreakPointHit(Tegra::DebugContext::Event event, void* data) = 0; +    virtual void OnResumed() = 0; + +signals: +    void Resumed(); +    void BreakPointHit(Tegra::DebugContext::Event event, void* data); +}; | 
