Add platform Switch defines.

This commit is contained in:
Kevin McCullough
2020-05-19 13:04:37 -07:00
committed by Baldur Karlsson
parent aa17b1e282
commit 6a2415f334
6 changed files with 54 additions and 3 deletions
+2 -1
View File
@@ -77,7 +77,8 @@
#define RENDERDOC_CC __cdecl
#elif defined(RENDERDOC_PLATFORM_LINUX) || defined(RENDERDOC_PLATFORM_APPLE) || \
defined(RENDERDOC_PLATFORM_ANDROID) || defined(RENDERDOC_PLATFORM_GGP)
defined(RENDERDOC_PLATFORM_ANDROID) || defined(RENDERDOC_PLATFORM_GGP) || \
defined(RENDERDOC_PLATFORM_SWITCH)
#define RENDERDOC_EXPORT_API __attribute__((visibility("default")))
#define RENDERDOC_IMPORT_API
+5
View File
@@ -42,7 +42,12 @@
#include <signal.h>
#define __PRETTY_FUNCTION_SIGNATURE__ __PRETTY_FUNCTION__
#if ENABLED(RDOC_SWITCH)
#include <stdlib.h>
#define OS_DEBUG_BREAK() abort()
#else
#define OS_DEBUG_BREAK() raise(SIGTRAP)
#endif
#if defined(__clang__)
+15
View File
@@ -67,6 +67,7 @@
#define RDOC_APPLE OPTION_OFF
#define RDOC_POSIX OPTION_OFF
#define RDOC_GGP OPTION_OFF
#define RDOC_SWITCH OPTION_OFF
#elif defined(RENDERDOC_PLATFORM_ANDROID)
@@ -76,6 +77,7 @@
#define RDOC_APPLE OPTION_OFF
#define RDOC_POSIX OPTION_ON
#define RDOC_GGP OPTION_OFF
#define RDOC_SWITCH OPTION_OFF
#elif defined(RENDERDOC_PLATFORM_LINUX)
@@ -85,6 +87,7 @@
#define RDOC_APPLE OPTION_OFF
#define RDOC_POSIX OPTION_ON
#define RDOC_GGP OPTION_OFF
#define RDOC_SWITCH OPTION_OFF
#elif defined(RENDERDOC_PLATFORM_APPLE)
@@ -94,6 +97,7 @@
#define RDOC_APPLE OPTION_ON
#define RDOC_POSIX OPTION_ON
#define RDOC_GGP OPTION_OFF
#define RDOC_SWITCH OPTION_OFF
#elif defined(RENDERDOC_PLATFORM_GGP)
@@ -103,6 +107,17 @@
#define RDOC_APPLE OPTION_OFF
#define RDOC_POSIX OPTION_ON
#define RDOC_GGP OPTION_ON
#define RDOC_SWITCH OPTION_OFF
#elif defined(RENDERDOC_PLATFORM_SWITCH)
#define RDOC_WIN32 OPTION_OFF
#define RDOC_ANDROID OPTION_OFF
#define RDOC_LINUX OPTION_OFF
#define RDOC_APPLE OPTION_OFF
#define RDOC_POSIX OPTION_ON
#define RDOC_GGP OPTION_OFF
#define RDOC_SWITCH OPTION_ON
#else
+30
View File
@@ -256,6 +256,36 @@ struct GLWindowingData
EGLConfig egl_cfg;
};
#elif ENABLED(RDOC_SWITCH)
// force include the eglplatform.h
#include "official/eglplatform.h"
#include "official/egl.h"
#include "official/eglext.h"
struct GLWindowingData
{
GLWindowingData()
{
egl_ctx = NULL;
egl_dpy = NULL;
wnd = NULL;
egl_wnd = NULL;
egl_cfg = NULL;
}
union
{
void *ctx;
EGLContext egl_ctx;
};
EGLSurface egl_wnd;
void *wnd;
EGLDisplay egl_dpy;
EGLConfig egl_cfg;
};
#else
#error "Unknown platform"
#endif
+1 -1
View File
@@ -986,7 +986,7 @@ void SetDriverForHooks(WrappedOpenGL *driver);
// best we can do.
// On apple we suppress hooks while entering any CGL function so we don't record internal work that
// can mess up the replay
#if ENABLED(RDOC_WIN32) || ENABLED(RDOC_APPLE)
#if ENABLED(RDOC_WIN32) || ENABLED(RDOC_APPLE) || ENABLED(RDOC_SWITCH)
void EnableGLHooks();
void DisableGLHooks();
#else
+1 -1
View File
@@ -107,7 +107,7 @@ void SetDriverForHooks(WrappedOpenGL *driver)
glhook.driver = driver;
}
#if ENABLED(RDOC_WIN32) || ENABLED(RDOC_APPLE)
#if ENABLED(RDOC_WIN32) || ENABLED(RDOC_APPLE) || ENABLED(RDOC_SWITCH)
void EnableGLHooks()
{
glhook.enabled = true;