Files
UnrealEngineUWP/Engine/Source/Runtime/AVIWriter/Private/CaptureSource.h
ryan durand 0f0464a30e Updating copyright for Engine Runtime.
#rnx
#rb none


#ROBOMERGE-OWNER: ryan.durand
#ROBOMERGE-AUTHOR: ryan.durand
#ROBOMERGE-SOURCE: CL 10869210 via CL 10869511 via CL 10869900
#ROBOMERGE-BOT: (v613-10869866)

[CL 10870549 by ryan durand in Main branch]
2019-12-26 14:45:42 -05:00

57 lines
1.9 KiB
C++

// Copyright Epic Games, Inc. All Rights Reserved.
/*=============================================================================
CaptureSource.h: CaptureSource definition
=============================================================================*/
#pragma once
#include "CoreMinimal.h"
#include "HAL/ThreadSafeBool.h"
class FAVIWriter;
#if PLATFORM_WINDOWS && WITH_UNREAL_DEVELOPER_TOOLS
typedef TCHAR* PTCHAR;
#pragma warning(push)
#pragma warning(disable : 4263) // 'function' : member function does not override any base class virtual member function
#pragma warning(disable : 4264) // 'virtual_function' : no override available for virtual member function from base
#if USING_CODE_ANALYSIS
#pragma warning(disable:6509) // Invalid annotation: 'return' cannot be referenced in some contexts
#pragma warning(disable:6101) // Returning uninitialized memory '*lpdwExitCode'. A successful path through the function does not set the named _Out_ parameter.
#pragma warning(disable:28204) // 'Func' has an override at 'file' and only the override is annotated for _Param_(N): when an override is annotated, the base (this function) should be similarly annotated.
#endif
#include "Windows/WindowsHWrapper.h"
#include "Windows/AllowWindowsPlatformTypes.h"
THIRD_PARTY_INCLUDES_START
#include <streams.h>
THIRD_PARTY_INCLUDES_END
#include "Windows/HideWindowsPlatformTypes.h"
#pragma warning(pop)
class FCapturePin;
class FAVIWriter;
// {F817F8A7-DE00-42CF-826A-7A5654602D8E}
DEFINE_GUID(CLSID_ViewportCaptureSource,
0xf817f8a7, 0xde00, 0x42cf, 0x82, 0x6a, 0x7a, 0x56, 0x54, 0x60, 0x2d, 0x8e);
class FCaptureSource : public CSource
{
public:
FCaptureSource(const FAVIWriter& Writer);
~FCaptureSource();
void StopCapturing();
void OnFinishedCapturing();
bool ShouldCapture() const { return !bShutdownRequested; }
private:
FEvent* ShutdownEvent;
FThreadSafeBool bShutdownRequested;
};
#endif //#if PLATFORM_WINDOWS