aboutsummaryrefslogtreecommitdiff
path: root/demo/DemoApp/NvFlowInteropLoaderGenerated.h
diff options
context:
space:
mode:
authorAndrew Reidmeyer <[email protected]>2017-06-13 20:38:29 -0600
committerAndrew Reidmeyer <[email protected]>2017-06-13 20:38:29 -0600
commit62a1427154131f2387675957c1d2027061f354f0 (patch)
tree4efdcb7d3fe9722d46523a51bc5c90b96f25441e /demo/DemoApp/NvFlowInteropLoaderGenerated.h
parentInitial 1.0.0 binary release (diff)
downloadflow-1.0.1.tar.xz
flow-1.0.1.zip
NvFlow 1.0.1v1.0.1
Diffstat (limited to 'demo/DemoApp/NvFlowInteropLoaderGenerated.h')
-rw-r--r--demo/DemoApp/NvFlowInteropLoaderGenerated.h96
1 files changed, 96 insertions, 0 deletions
diff --git a/demo/DemoApp/NvFlowInteropLoaderGenerated.h b/demo/DemoApp/NvFlowInteropLoaderGenerated.h
new file mode 100644
index 0000000..dad9989
--- /dev/null
+++ b/demo/DemoApp/NvFlowInteropLoaderGenerated.h
@@ -0,0 +1,96 @@
+/*
+* Copyright (c) 2014-2017, NVIDIA CORPORATION. All rights reserved.
+*
+* NVIDIA CORPORATION and its licensors retain all intellectual property
+* and proprietary rights in and to this software, related documentation
+* and any modifications thereto. Any use, reproduction, disclosure or
+* distribution of this software and related documentation without an express
+* license agreement from NVIDIA CORPORATION is strictly prohibited.
+*/
+
+typedef NvFlowContext* (*NvFlowInteropCreateContext_ptr_t)(AppGraphCtx* appctx);
+typedef NvFlowDepthStencilView* (*NvFlowInteropCreateDepthStencilView_ptr_t)(AppGraphCtx* appctx, NvFlowContext* flowctx);
+typedef NvFlowRenderTargetView* (*NvFlowInteropCreateRenderTargetView_ptr_t)(AppGraphCtx* appctx, NvFlowContext* flowctx);
+typedef void (*NvFlowInteropUpdateContext_ptr_t)(NvFlowContext* context, AppGraphCtx* appctx);
+typedef void (*NvFlowInteropUpdateDepthStencilView_ptr_t)(NvFlowDepthStencilView* view, AppGraphCtx* appctx, NvFlowContext* flowctx);
+typedef void (*NvFlowInteropUpdateRenderTargetView_ptr_t)(NvFlowRenderTargetView* view, AppGraphCtx* appctx, NvFlowContext* flowctx);
+
+struct NvFlowInteropLoader
+{
+ void* module = nullptr;
+ const char* suffix = "";
+ char buf[1024u];
+
+ NvFlowInteropCreateContext_ptr_t NvFlowInteropCreateContext_ptr;
+ NvFlowInteropCreateDepthStencilView_ptr_t NvFlowInteropCreateDepthStencilView_ptr;
+ NvFlowInteropCreateRenderTargetView_ptr_t NvFlowInteropCreateRenderTargetView_ptr;
+ NvFlowInteropUpdateContext_ptr_t NvFlowInteropUpdateContext_ptr;
+ NvFlowInteropUpdateDepthStencilView_ptr_t NvFlowInteropUpdateDepthStencilView_ptr;
+ NvFlowInteropUpdateRenderTargetView_ptr_t NvFlowInteropUpdateRenderTargetView_ptr;
+
+}gNvFlowInteropLoader;
+
+NvFlowContext* NvFlowInteropCreateContext(AppGraphCtx* appctx)
+{
+ return gNvFlowInteropLoader.NvFlowInteropCreateContext_ptr(appctx);
+}
+
+NvFlowDepthStencilView* NvFlowInteropCreateDepthStencilView(AppGraphCtx* appctx, NvFlowContext* flowctx)
+{
+ return gNvFlowInteropLoader.NvFlowInteropCreateDepthStencilView_ptr(appctx, flowctx);
+}
+
+NvFlowRenderTargetView* NvFlowInteropCreateRenderTargetView(AppGraphCtx* appctx, NvFlowContext* flowctx)
+{
+ return gNvFlowInteropLoader.NvFlowInteropCreateRenderTargetView_ptr(appctx, flowctx);
+}
+
+void NvFlowInteropUpdateContext(NvFlowContext* context, AppGraphCtx* appctx)
+{
+ return gNvFlowInteropLoader.NvFlowInteropUpdateContext_ptr(context, appctx);
+}
+
+void NvFlowInteropUpdateDepthStencilView(NvFlowDepthStencilView* view, AppGraphCtx* appctx, NvFlowContext* flowctx)
+{
+ return gNvFlowInteropLoader.NvFlowInteropUpdateDepthStencilView_ptr(view, appctx, flowctx);
+}
+
+void NvFlowInteropUpdateRenderTargetView(NvFlowRenderTargetView* view, AppGraphCtx* appctx, NvFlowContext* flowctx)
+{
+ return gNvFlowInteropLoader.NvFlowInteropUpdateRenderTargetView_ptr(view, appctx, flowctx);
+}
+
+void* nvFlowInteropLoaderLoadFunction(NvFlowInteropLoader* inst, const char* name)
+{
+ snprintf(inst->buf, 1024u, "%s%s", name, inst->suffix);
+
+ return SDL_LoadFunction(inst->module, inst->buf);
+}
+
+void loadNvFlowInterop(AppGraphCtxType type)
+{
+ const char* moduleName = demoAppDLLName(type);
+
+ gNvFlowInteropLoader.suffix = demoAppBackendSuffix(type);
+
+ gNvFlowInteropLoader.module = SDL_LoadObject(moduleName);
+
+ gNvFlowInteropLoader.NvFlowInteropCreateContext_ptr = (NvFlowInteropCreateContext_ptr_t)(nvFlowInteropLoaderLoadFunction(&gNvFlowInteropLoader, "NvFlowInteropCreateContext"));
+ gNvFlowInteropLoader.NvFlowInteropCreateDepthStencilView_ptr = (NvFlowInteropCreateDepthStencilView_ptr_t)(nvFlowInteropLoaderLoadFunction(&gNvFlowInteropLoader, "NvFlowInteropCreateDepthStencilView"));
+ gNvFlowInteropLoader.NvFlowInteropCreateRenderTargetView_ptr = (NvFlowInteropCreateRenderTargetView_ptr_t)(nvFlowInteropLoaderLoadFunction(&gNvFlowInteropLoader, "NvFlowInteropCreateRenderTargetView"));
+ gNvFlowInteropLoader.NvFlowInteropUpdateContext_ptr = (NvFlowInteropUpdateContext_ptr_t)(nvFlowInteropLoaderLoadFunction(&gNvFlowInteropLoader, "NvFlowInteropUpdateContext"));
+ gNvFlowInteropLoader.NvFlowInteropUpdateDepthStencilView_ptr = (NvFlowInteropUpdateDepthStencilView_ptr_t)(nvFlowInteropLoaderLoadFunction(&gNvFlowInteropLoader, "NvFlowInteropUpdateDepthStencilView"));
+ gNvFlowInteropLoader.NvFlowInteropUpdateRenderTargetView_ptr = (NvFlowInteropUpdateRenderTargetView_ptr_t)(nvFlowInteropLoaderLoadFunction(&gNvFlowInteropLoader, "NvFlowInteropUpdateRenderTargetView"));
+}
+
+void unloadNvFlowInterop()
+{
+ gNvFlowInteropLoader.NvFlowInteropCreateContext_ptr = nullptr;
+ gNvFlowInteropLoader.NvFlowInteropCreateDepthStencilView_ptr = nullptr;
+ gNvFlowInteropLoader.NvFlowInteropCreateRenderTargetView_ptr = nullptr;
+ gNvFlowInteropLoader.NvFlowInteropUpdateContext_ptr = nullptr;
+ gNvFlowInteropLoader.NvFlowInteropUpdateDepthStencilView_ptr = nullptr;
+ gNvFlowInteropLoader.NvFlowInteropUpdateRenderTargetView_ptr = nullptr;
+
+ SDL_UnloadObject(gNvFlowInteropLoader.module);
+}