RealtimeStyleTransferRuntime/Source/LyraEditor/Commandlets/ContentValidationCommandlet.h

36 lines
1.6 KiB
C++

// Copyright Epic Games, Inc. All Rights Reserved.
#pragma once
#include "CoreMinimal.h"
#include "UObject/ObjectMacros.h"
#include "Commandlets/Commandlet.h"
#include "ContentValidationCommandlet.generated.h"
class IAssetRegistry;
UCLASS()
class UContentValidationCommandlet : public UCommandlet
{
GENERATED_UCLASS_BODY()
public:
// Begin UCommandlet Interface
virtual int32 Main(const FString& Params) override;
// End UCommandlet Interface
private:
/** Validate steps */
bool AutoExportMCPTemplates(const TArray<FString>& ChangedPackageNames, const TArray<FString>& DeletedPackageNames, const TArray<FString>& ChangedCode, const TArray<FString>& ChangedOtherFiles, const FString& SyncedCL, const FString& Robomerge, bool& bOutDidExport);
bool AutoExportDadContent(const FString& BuildCL, const FString& AccessToken);
bool AutoPersistDadContent(const FString& AccessToken);
private:
/** Helper functions */
bool GetAllChangedFiles(IAssetRegistry& AssetRegistry, const FString& P4CmdString, TArray<FString>& OutChangedPackageNames, TArray<FString>& DeletedPackageNames, TArray<FString>& OutChangedCode, TArray<FString>& OutChangedOtherFiles) const;
void GetAllPackagesInPath(IAssetRegistry& AssetRegistry, const FString& InPathString, TArray<FString>& OutPackageNames) const;
void GetAllPackagesOfType(const FString& OfTypeString, TArray<FString>& OutPackageNames) const;
bool LaunchP4(const FString& Args, TArray<FString>& Output, int32& OutReturnCode) const;
FString GetLocalPathFromDepotPath(const FString& DepotPathName) const;
};