blob: 8bf9a973518e41f1ae9fea13839ecae5dfce4996 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
|
/* 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 "NVIDIAGfeSDKPrivatePCH.h"
#include "../Public/INVIDIAGfeSDK.h"
namespace GfeSDK {
class Core;
class Highlights;
}
DECLARE_LOG_CATEGORY_EXTERN(LogGfeSDK, Log, All);
class FNVIDIAGfeSDK : public INVIDIAGfeSDK
{
public:
FNVIDIAGfeSDK(): GFEHandle(nullptr) {}
virtual ~FNVIDIAGfeSDK() {}
virtual void StartupModule() override;
virtual void ShutdownModule() override;
virtual GfeSDK::NVGSDK_RetCode SetFileLogLevel(ELogVerbosity::Type Level);
virtual GfeSDK::NVGSDK_RetCode SetUnrealLogLevel(ELogVerbosity::Type Level);
virtual EGfeSDKReturnCode Create(FGfeSDKCreateInputParams const& InputParams, FGfeSDKCreateResponse& Response);
virtual void Release();
virtual FGfeSDKCore* Core();
virtual FGfeSDKHighlights* Highlights();
private:
void* LibHandle = nullptr;
TUniquePtr<FGfeSDKHighlights> SdkHighlights;
TUniquePtr<FGfeSDKCore> SdkCore;
// SDK handle for C interface
GfeSDK::NVGSDK_HANDLE* GFEHandle;
FGfeSDKCreateResponse SdkResponseRecord;
};
|