Files
UnrealEngineUWP/Engine/Source/Programs/Enterprise/Datasmith/DatasmithMaxExporter/Public/DatasmithMaxLogger.h
Ryan Durand 9ef3748747 Updating copyrights for Engine Programs.
#rnx
#rb none
#jira none

#ROBOMERGE-OWNER: ryan.durand
#ROBOMERGE-AUTHOR: ryan.durand
#ROBOMERGE-SOURCE: CL 10869242 in //Fortnite/Release-12.00/... via CL 10869536
#ROBOMERGE-BOT: FORTNITE (Main -> Dev-EngineMerge) (v613-10869866)

[CL 10870955 by Ryan Durand in Main branch]
2019-12-26 23:01:54 -05:00

61 lines
1.5 KiB
C++

// Copyright Epic Games, Inc. All Rights Reserved.
#pragma once
#include "CoreMinimal.h"
#include "Resources/Windows/resource.h"
#include "DatasmithMaxClassIDs.h"
#include "DatasmithLogger.h"
#include "Templates/SharedPointer.h"
#include "Windows/AllowWindowsPlatformTypes.h"
class INode;
class Mtl;
class Texmap;
class DatasmithMaxLogger :public FDatasmithLogger, public TSharedFromThis<DatasmithMaxLogger>
{
public:
static DatasmithMaxLogger& Get();
void Purge();
void AddPartialSupportedMat(Mtl* Mat);
void AddUnsupportedMat(Mtl* Mat);
void AddPartialSupportedMap(Texmap* Map);
void AddUnsupportedMap(Texmap* Map);
void AddOtherMapWarning(FString Warning);
void AddUnsupportedLight(INode* Light);
void AddUnsupportedUV(INode* Node);
void AddInvalidObj(INode* Node);
TArray<INode*>GetInvalidObjects() const;
void AddInvalidTransform(INode* Node);
bool HasWarnings();
void Show(HWND hDlg);
bool CopyToClipBoard();
private:
void AddItem(const TCHAR* Msg, HWND Handle, FString& FullMsg);
void AddObjectList(TArray< INode* > ObjectList, HWND Handle, const TCHAR* Header, const TCHAR* Description = nullptr);
TArray<Mtl*> PartialSupportedMats;
TArray<Mtl*> UnsupportedMats;
TArray<Texmap*> PartialSupportedMaps;
TArray<Texmap*> UnsupportedMaps;
TArray<INode*> UnsupportedLight;
TArray<INode*> FailUVs;
TArray<INode*> FailObjs;
TArray<INode*> InvalidTransforms;
FString ShowMessage;
};
INT_PTR CALLBACK MsgListDlgProc(HWND hDlg, UINT iMsg, WPARAM wParam, LPARAM lParam);
#include "Windows/HideWindowsPlatformTypes.h"