Files
UnrealEngineUWP/Engine/Source/Developer/Datasmith/DatasmithExporterUI/Private/DirectLinkUI.h
emil kirichev 7e2496fad3 There should be a way of resetting cache directory in the revit datasmith connections window
#jira UE-102502
#rb JeanLuc.Corenthin

[CL 17455997 by emil kirichev in ue5-main branch]
2021-09-08 06:00:38 -04:00

37 lines
942 B
C++

// Copyright Epic Games, Inc. All Rights Reserved.
#pragma once
#include "IDirectLinkUI.h"
#include "Containers/UnrealString.h"
#include "HAL/CriticalSection.h"
#include "Templates/SharedPointer.h"
class SWindow;
class FDirectLinkUI : public IDirectLinkUI
{
public:
FDirectLinkUI();
virtual void OpenDirectLinkStreamWindow() override;
virtual const TCHAR* GetDirectLinkCacheDirectory() override;
private:
void OnCacheDirectoryChanged(const FString& InNewCacheDirectory);
FString OnCacheDirectoryReset();
void SaveCacheDirectory( const FString& InCacheDir, bool bInDefaultCacheDir );
// To accessed from the game thread only
TWeakPtr<SWindow> DirectLinkWindow;
FCriticalSection CriticalSectionCacheDirectory;
FString DirectLinkCacheDirectory;
FString DefaultDirectLinkCacheDirectory;
// Used to protect the caller to GetDirectLinkCacheDirectory from a pontential race condition
FString LastReturnedCacheDirectory;
};