[UI] Loop thread to main thread WindowedAppContext
This commit is contained in:
@@ -62,7 +62,7 @@ project("xenia-gpu-vulkan-trace-viewer")
|
||||
})
|
||||
files({
|
||||
"vulkan_trace_viewer_main.cc",
|
||||
"../../base/main_"..platform_suffix..".cc",
|
||||
"../../ui/windowed_app_main_"..platform_suffix..".cc",
|
||||
})
|
||||
|
||||
filter("platforms:Linux")
|
||||
@@ -128,7 +128,7 @@ project("xenia-gpu-vulkan-trace-dump")
|
||||
})
|
||||
files({
|
||||
"vulkan_trace_dump_main.cc",
|
||||
"../../base/main_"..platform_suffix..".cc",
|
||||
"../../base/console_app_main_"..platform_suffix..".cc",
|
||||
})
|
||||
|
||||
filter("platforms:Linux")
|
||||
|
||||
@@ -37,7 +37,7 @@ X_STATUS VulkanGraphicsSystem::Setup(cpu::Processor* processor,
|
||||
kernel::KernelState* kernel_state,
|
||||
ui::Window* target_window) {
|
||||
// Must create the provider so we can create contexts.
|
||||
auto provider = xe::ui::vulkan::VulkanProvider::Create(target_window);
|
||||
auto provider = xe::ui::vulkan::VulkanProvider::Create();
|
||||
device_ = provider->device();
|
||||
provider_ = std::move(provider);
|
||||
|
||||
|
||||
@@ -7,8 +7,8 @@
|
||||
******************************************************************************
|
||||
*/
|
||||
|
||||
#include "xenia/base/console_app_main.h"
|
||||
#include "xenia/base/logging.h"
|
||||
#include "xenia/base/main.h"
|
||||
#include "xenia/gpu/trace_dump.h"
|
||||
#include "xenia/gpu/vulkan/vulkan_command_processor.h"
|
||||
#include "xenia/gpu/vulkan/vulkan_graphics_system.h"
|
||||
@@ -55,6 +55,6 @@ int trace_dump_main(const std::vector<std::string>& args) {
|
||||
} // namespace gpu
|
||||
} // namespace xe
|
||||
|
||||
DEFINE_ENTRY_POINT("xenia-gpu-vulkan-trace-dump",
|
||||
xe::gpu::vulkan::trace_dump_main, "some.trace",
|
||||
"target_trace_file");
|
||||
XE_DEFINE_CONSOLE_APP("xenia-gpu-vulkan-trace-dump",
|
||||
xe::gpu::vulkan::trace_dump_main, "some.trace",
|
||||
"target_trace_file");
|
||||
|
||||
@@ -2,13 +2,15 @@
|
||||
******************************************************************************
|
||||
* Xenia : Xbox 360 Emulator Research Project *
|
||||
******************************************************************************
|
||||
* Copyright 2020 Ben Vanik. All rights reserved. *
|
||||
* Copyright 2021 Ben Vanik. All rights reserved. *
|
||||
* Released under the BSD license - see LICENSE in the root for more details. *
|
||||
******************************************************************************
|
||||
*/
|
||||
|
||||
#include <memory>
|
||||
#include <string>
|
||||
|
||||
#include "xenia/base/logging.h"
|
||||
#include "xenia/base/main.h"
|
||||
#include "xenia/gpu/trace_viewer.h"
|
||||
#include "xenia/gpu/vulkan/vulkan_command_processor.h"
|
||||
#include "xenia/gpu/vulkan/vulkan_graphics_system.h"
|
||||
@@ -19,8 +21,13 @@ namespace vulkan {
|
||||
|
||||
using namespace xe::gpu::xenos;
|
||||
|
||||
class VulkanTraceViewer : public TraceViewer {
|
||||
class VulkanTraceViewer final : public TraceViewer {
|
||||
public:
|
||||
static std::unique_ptr<WindowedApp> Create(
|
||||
xe::ui::WindowedAppContext& app_context) {
|
||||
return std::unique_ptr<WindowedApp>(new VulkanTraceViewer(app_context));
|
||||
}
|
||||
|
||||
std::unique_ptr<gpu::GraphicsSystem> CreateGraphicsSystem() override {
|
||||
return std::unique_ptr<gpu::GraphicsSystem>(new VulkanGraphicsSystem());
|
||||
}
|
||||
@@ -60,17 +67,15 @@ class VulkanTraceViewer : public TraceViewer {
|
||||
// return static_cast<uintptr_t>(texture->handle);
|
||||
return 0;
|
||||
}
|
||||
};
|
||||
|
||||
int trace_viewer_main(const std::vector<std::string>& args) {
|
||||
VulkanTraceViewer trace_viewer;
|
||||
return trace_viewer.Main(args);
|
||||
}
|
||||
private:
|
||||
explicit VulkanTraceViewer(xe::ui::WindowedAppContext& app_context)
|
||||
: TraceViewer(app_context, "xenia-gpu-vulkan-trace-viewer") {}
|
||||
};
|
||||
|
||||
} // namespace vulkan
|
||||
} // namespace gpu
|
||||
} // namespace xe
|
||||
|
||||
DEFINE_ENTRY_POINT("xenia-gpu-vulkan-trace-viewer",
|
||||
xe::gpu::vulkan::trace_viewer_main, "some.trace",
|
||||
"target_trace_file");
|
||||
XE_DEFINE_WINDOWED_APP(xenia_gpu_vulkan_trace_viewer,
|
||||
xe::gpu::vulkan::VulkanTraceViewer::Create);
|
||||
|
||||
Reference in New Issue
Block a user