Files
UnrealEngineUWP/Engine/Source/Runtime/AVIWriter/Private/CaptureSource.cpp
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

41 lines
1011 B
C++

// Copyright Epic Games, Inc. All Rights Reserved.
/*=============================================================================
CaptureSource.h: CaptureSource implementation
=============================================================================*/
#include "CaptureSource.h"
#include "CapturePin.h"
#include "HAL/PlatformProcess.h"
#include "HAL/Event.h"
#if PLATFORM_WINDOWS && WITH_UNREAL_DEVELOPER_TOOLS
FCaptureSource::FCaptureSource(const FAVIWriter& Writer)
: CSource(NAME("ViewportCaptureFilter"), nullptr, CLSID_ViewportCaptureSource)
{
HRESULT hr;
new FCapturePin(&hr, this, Writer);
ShutdownEvent = FPlatformProcess::GetSynchEventFromPool();
bShutdownRequested = false;
}
FCaptureSource::~FCaptureSource()
{
FPlatformProcess::ReturnSynchEventToPool(ShutdownEvent);
}
void FCaptureSource::StopCapturing()
{
bShutdownRequested = true;
ShutdownEvent->Wait(~0);
}
void FCaptureSource::OnFinishedCapturing()
{
ShutdownEvent->Trigger();
}
#endif //#if PLATFORM_WINDOWS