Files
UnrealEngineUWP/Engine/Source/Programs/CrossCompilerTool/Private/CrossCompilerTool.h
Rolando Caloca 2c7609d41d UE4 - CCT - Fix some cmd lines (atomic, packed globals into ub)
#codereview Mark.Satterthwaite, Michael.Trepka

[CL 2708321 by Rolando Caloca in Main branch]
2015-09-28 16:09:22 -04:00

53 lines
1021 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 bFixAtomics;
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);