aboutsummaryrefslogtreecommitdiff
path: root/Source/NVIDIAGfeSDK/Public/INVIDIAGfeSDK.h
diff options
context:
space:
mode:
authorGrigoriy <[email protected]>2018-03-12 00:30:49 +0300
committerGrigoriy <[email protected]>2018-03-12 00:30:49 +0300
commit2415f5df72265afb368d5189b91cbe6242da4e5f (patch)
treefa8a83d9e74b9d1c276e2f34f5a71fe7d6e91680 /Source/NVIDIAGfeSDK/Public/INVIDIAGfeSDK.h
parentDelete .gitignore (diff)
downloadgfesdk-ue4plugin-2415f5df72265afb368d5189b91cbe6242da4e5f.tar.xz
gfesdk-ue4plugin-2415f5df72265afb368d5189b91cbe6242da4e5f.zip
First commit
Diffstat (limited to 'Source/NVIDIAGfeSDK/Public/INVIDIAGfeSDK.h')
-rw-r--r--Source/NVIDIAGfeSDK/Public/INVIDIAGfeSDK.h49
1 files changed, 49 insertions, 0 deletions
diff --git a/Source/NVIDIAGfeSDK/Public/INVIDIAGfeSDK.h b/Source/NVIDIAGfeSDK/Public/INVIDIAGfeSDK.h
new file mode 100644
index 0000000..73378ea
--- /dev/null
+++ b/Source/NVIDIAGfeSDK/Public/INVIDIAGfeSDK.h
@@ -0,0 +1,49 @@
+/* Copyright (c) 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.
+*/
+
+#pragma once
+
+#include "NVIDIAGfeSDKPublicPCH.h"
+
+class INVIDIAGfeSDK : public IModuleInterface
+{
+public:
+ /**
+ * Singleton-like access to this module's interface. This is just for convenience!
+ * Beware of calling this during the shutdown phase, though. Your module might have been unloaded already.
+ *
+ * @return Returns singleton instance, loading the module on demand if needed
+ */
+ static inline INVIDIAGfeSDK& Get()
+ {
+ return FModuleManager::LoadModuleChecked<INVIDIAGfeSDK>("NVIDIAGfeSDK");
+ }
+
+ /**
+ * Checks to see if this module is loaded and ready. It is only valid to call Get() if IsAvailable() returns true.
+ *
+ * @return True if the module is loaded and ready to use
+ */
+ static inline bool IsAvailable()
+ {
+ return FModuleManager::Get().IsModuleLoaded("NVIDIAGfeSDK");
+ }
+
+ // Controls the log level of GfeSDK's internal logfile
+ virtual GfeSDK::NVGSDK_RetCode SetFileLogLevel(ELogVerbosity::Type Level) = 0;
+ // Controls the log level of logs that GfeSDK sends to the unreal logfile
+ virtual GfeSDK::NVGSDK_RetCode SetUnrealLogLevel(ELogVerbosity::Type Level) = 0;
+
+ virtual EGfeSDKReturnCode Create(FGfeSDKCreateInputParams const& InputParams, FGfeSDKCreateResponse& Response) = 0;
+ virtual void Release() = 0;
+ virtual FGfeSDKCore* Core() = 0;
+ virtual FGfeSDKHighlights* Highlights() = 0;
+
+ FGfeSDKOnPermissionsChanged PermissionsChangedDelegate;
+};