From 7e0747e3bd32ebbf5758a3d02fd79097efa605f2 Mon Sep 17 00:00:00 2001 From: baldurk Date: Sat, 14 May 2016 15:22:34 +0200 Subject: [PATCH] Make dummy android version of linux GL files (not implemented atm) --- renderdoc/driver/gl/CMakeLists.txt | 6 +- renderdoc/driver/gl/gl_hooks_android.cpp | 96 +++++++++++++++++++++++ renderdoc/driver/gl/gl_replay_android.cpp | 71 +++++++++++++++++ 3 files changed, 172 insertions(+), 1 deletion(-) create mode 100644 renderdoc/driver/gl/gl_hooks_android.cpp create mode 100644 renderdoc/driver/gl/gl_replay_android.cpp diff --git a/renderdoc/driver/gl/CMakeLists.txt b/renderdoc/driver/gl/CMakeLists.txt index 0fe62e714..584731f96 100644 --- a/renderdoc/driver/gl/CMakeLists.txt +++ b/renderdoc/driver/gl/CMakeLists.txt @@ -35,7 +35,11 @@ set(sources wrappers/gl_texture_funcs.cpp wrappers/gl_uniform_funcs.cpp) -if(UNIX) +if(ANDROID) + list(APPEND sources + gl_replay_android.cpp + gl_hooks_android.cpp) +elseif(UNIX) list(APPEND sources gl_replay_linux.cpp gl_hooks_linux.cpp) diff --git a/renderdoc/driver/gl/gl_hooks_android.cpp b/renderdoc/driver/gl/gl_hooks_android.cpp new file mode 100644 index 000000000..dcfc6412a --- /dev/null +++ b/renderdoc/driver/gl/gl_hooks_android.cpp @@ -0,0 +1,96 @@ +/****************************************************************************** + * The MIT License (MIT) + * + * Copyright (c) 2016 Baldur Karlsson + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + ******************************************************************************/ + +#include +#include + +#include "hooks/hooks.h" + +#include "driver/gl/gl_common.h" +#include "driver/gl/gl_hookset.h" +#include "driver/gl/gl_driver.h" + +#include "driver/gl/gl_hookset_defs.h" + +class OpenGLHook : LibraryHook +{ + public: + OpenGLHook() + { + } + ~OpenGLHook() + { + } + + bool CreateHooks(const char *libName) + { + return false; + } + + void EnableHooks(const char *libName, bool enable) + { + } + + void OptionsUpdated(const char *libName) {} +}; + +const GLHookSet &GetRealGLFunctions() +{ + static GLHookSet dummyHookset = {}; + RDCUNIMPLEMENTED("GetRealGLFunctions"); + return dummyHookset; +} + +void MakeContextCurrent(GLWindowingData data) +{ + RDCUNIMPLEMENTED("MakeContextCurrent"); +} + +GLWindowingData MakeContext(GLWindowingData share) +{ + RDCUNIMPLEMENTED("MakeContext"); + return GLWindowingData(); +} + +void DeleteContext(GLWindowingData context) +{ + RDCUNIMPLEMENTED("DeleteContext"); +} + +bool immediateBegin(GLenum mode, float width, float height) +{ + RDCUNIMPLEMENTED("immediateBegin"); + return false; +} + +void immediateVert(float x, float y, float u, float v) +{ + RDCUNIMPLEMENTED("immediateVert"); +} + +void immediateEnd() +{ + RDCUNIMPLEMENTED("immediateEnd"); +} + diff --git a/renderdoc/driver/gl/gl_replay_android.cpp b/renderdoc/driver/gl/gl_replay_android.cpp new file mode 100644 index 000000000..0933d2f6b --- /dev/null +++ b/renderdoc/driver/gl/gl_replay_android.cpp @@ -0,0 +1,71 @@ +/****************************************************************************** + * The MIT License (MIT) + * + * Copyright (c) 2016 Baldur Karlsson + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + ******************************************************************************/ + + +#include "gl_replay.h" +#include "gl_driver.h" +#include "gl_resources.h" + +void GLReplay::MakeCurrentReplayContext(GLWindowingData *ctx) +{ + RDCUNIMPLEMENTED("GLReplay::MakeCurrentReplayContext"); +} + +void GLReplay::SwapBuffers(GLWindowingData *ctx) +{ + RDCUNIMPLEMENTED("GLReplay::SwapBuffers"); +} + +void GLReplay::CloseReplayContext() +{ + RDCUNIMPLEMENTED("GLReplay::CloseReplayContext"); +} + +uint64_t GLReplay::MakeOutputWindow(void *wn, bool depth) +{ + RDCUNIMPLEMENTED("GLReplay::MakeOutputWindow"); + return 0; +} + +void GLReplay::DestroyOutputWindow(uint64_t id) +{ + RDCUNIMPLEMENTED("GLReplay::DestroyOutputWindow"); +} + +void GLReplay::GetOutputWindowDimensions(uint64_t id, int32_t &w, int32_t &h) +{ + RDCUNIMPLEMENTED("GLReplay::GetOutputWindowDimensions"); +} + +bool GLReplay::IsOutputWindowVisible(uint64_t id) +{ + RDCUNIMPLEMENTED("GLReplay::IsOutputWindowVisible"); + return false; +} + +ReplayCreateStatus GL_CreateReplayDevice(const char *logfile, IReplayDriver **driver) +{ + RDCUNIMPLEMENTED("GL_CreateReplayDevice"); + return eReplayCreate_APIHardwareUnsupported; +}