Files
UnrealEngineUWP/Engine/Source/Developer/ScreenShotComparisonTools/Public/Interfaces/IScreenShotData.h
kevin hamilton 6b46dd0ced Merging //depot/Partners/Zombie/UE4-iOS/...to //depot/UE4/...
Automation: Milestone 3 and fixes for milestone 2

 -Added new EditorShot command to take editor screenshots
 -Made the ExterialTool options use the dierctory picker
 -Fixed a bug with the StaticMeshEditor test if the tutorial pops up
 -StaticMeshUV test now uses async package loading
 -Added a display every Nth screenshot to the screenshot compre tab
 -Added support to disable screenshots or request full size ones
 -Changed the screenshots so they save to the game directory even if you run the frontend by itself
 -Added screenshot support for the load all maps tests

[CL 2071712 by kevin hamilton in Main branch]
2014-05-13 12:08:56 -04:00

97 lines
2.1 KiB
C++

// Copyright 1998-2014 Epic Games, Inc. All Rights Reserved.
/*=============================================================================
IScreenShotData.h: Declares the IScreenShotData interface.
=============================================================================*/
#pragma once
/** Flags for specifying the screen shot data type */
namespace EScreenShotDataType
{
enum Type
{
SSDT_Base,
SSDT_Platform,
SSDT_ScreenView,
};
};
/**
* Type definition for shared pointers to instances of IScreenShotData.
*/
typedef TSharedPtr<class IScreenShotData> IScreenShotDataPtr;
/**
* Type definition for shared references to instances of IScreenShotData.
*/
typedef TSharedRef<class IScreenShotData> IScreenShotDataRef;
/**
* Interface for Screen shot data.
*/
class IScreenShotData
{
public:
virtual ~IScreenShotData(){ }
/**
* Add screen shot data to the tree
*
* @param InScreenDataItem - the screen shot data
*/
virtual void AddScreenShotData( const FScreenShotDataItem& InScreenDataItem ) = 0;
/**
* Get the screen shot asset name. This will be a dynamic brush at some point
*
* @return The asset name
*/
virtual const FString& GetAssetName() const = 0;
/**
* Get children
*
* @return The child list
*/
virtual TArray<IScreenShotDataPtr>& GetChildren() = 0;
/**
* Get the filtered child list
*
* @return The filtered child list
*/
virtual TArray<IScreenShotDataPtr>& GetFilteredChildren() = 0;
/**
* Get the node type - used in filtering
*
* @return The node type
*/
virtual EScreenShotDataType::Type GetScreenNodeType() = 0;
/**
* Get the screen shot data name e.g. change list number
*
* @return The screen shot data name
*/
virtual const FString& GetName() const = 0;
/**
* Set the platform filter
*
* @param ScreenFilter - the screen name to filter
* @return True if passes the filter
*/
virtual bool SetFilter( TSharedPtr< ScreenShotFilterCollection > ScreenFilter ) = 0;
/**
* Tells the node that we should only display every Nth screenshot
*
* @param NewDisplayEveryNth - The new N.
*/
virtual void SetDisplayEveryNthScreenshot( int32 NewDisplayEveryNth ) = 0;
};