Files
UnrealEngineUWP/Engine/Source/Programs/CrossCompilerTool/Private/CrossCompilerTool.h
Rolando Caloca 0b5c4df5dc UE4 - hlslcc - Fixes for command lines; always pack uniforms; fix uninitialized variables
#codereview Dmitry.Rekman

[CL 2639009 by Rolando Caloca in Main branch]
2015-07-30 13:31:13 -04:00

52 lines
1001 B
C++

// Copyright 1998-2015 Epic Games, Inc. All Rights Reserved.
#pragma once
#include "Core.h"
#include "hlslcc.h"
namespace CCT
{
class FRunInfo
{
public:
enum EBackend
{
BE_Metal,
BE_OpenGL,
BE_Invalid,
};
EHlslShaderFrequency Frequency;
EHlslCompileTarget Target;
FString Entry;
FString InputFile;
FString OutputFile;
EBackend BackEnd;
bool bValidate;
bool bRunCPP;
bool bUseNew;
bool bList;
bool bPreprocessOnly;
bool bPackIntoUBs;
bool bUseDX11Clip;
bool bFlattenUBs;
bool bFlattenUBStructs;
bool bGroupFlattenUBs;
bool bCSE;
bool bExpandExpressions;
bool bSeparateShaders;
FRunInfo();
bool Setup(const FString& InOptions, const TArray<FString>& InSwitches);
protected:
static EHlslShaderFrequency ParseFrequency(TArray<FString>& InOutSwitches);
static EHlslCompileTarget ParseTarget(TArray<FString>& InOutSwitches, EBackend& OutBackEnd);
};
void PrintUsage();
}
DECLARE_LOG_CATEGORY_EXTERN(LogCrossCompilerTool, Log, All);