Files
UnrealEngineUWP/Engine/Source/Runtime/ImageWrapper/Public/Interfaces/IImageWrapperModule.h
Ben Marsh 20bf0eb6a1 Updating copyright notices to 2017 (copying from //Tasks/UE4/Dev-Copyright-2017).
#rb none
#lockdown Nick.Penwarden

[CL 3226823 by Ben Marsh in Main branch]
2016-12-08 08:52:44 -05:00

42 lines
1.1 KiB
C++

// Copyright 1998-2017 Epic Games, Inc. All Rights Reserved.
#pragma once
#include "CoreMinimal.h"
#include "Modules/ModuleInterface.h"
#include "Interfaces/IImageWrapper.h"
/**
* Interface for image wrapper modules.
*/
class IImageWrapperModule
: public IModuleInterface
{
public:
/**
* Create a helper of a specific type
*
* @param InFormat - The type of image we want to deal with
* @return The helper base class to manage the data
*/
virtual IImageWrapperPtr CreateImageWrapper( const EImageFormat::Type InFormat ) = 0;
/**
* Detect image format by looking at the first few bytes of the compressed image data.
* You can call this method as soon as you have 8-16 bytes of compressed file content available.
*
* @param InCompressedData - The raw image header.
* @param InCompressedSize - The size of InCompressedData.
* @return the detected format or EImageFormat::Invalid if the method could not detect the image format.
*/
virtual EImageFormat::Type DetectImageFormat( const void* InCompressedData, int32 InCompressedSize) = 0;
public:
/**
* Virtual destructor.
*/
virtual ~IImageWrapperModule( ) { }
};