#pragma once

#include "CoreMinimal.h"
#include "EWwisePackagingStrategy.h"
#include "WwisePackagedFile.generated.h"

USTRUCT(BlueprintType)
struct FWwisePackagedFile
{
	GENERATED_BODY()

public:
	UPROPERTY(EditAnywhere, BlueprintReadWrite)
	EWwisePackagingStrategy PackagingStrategy;

	UPROPERTY(EditAnywhere, BlueprintReadWrite)
	FName PathName;

	UPROPERTY(EditAnywhere, BlueprintReadWrite)
	FName ModularGameplayName;

	UPROPERTY(EditAnywhere, BlueprintReadWrite)
	bool bStreaming;

	UPROPERTY(EditAnywhere, BlueprintReadWrite)
	int32 PrefetchSize;

	UPROPERTY(EditAnywhere, BlueprintReadWrite)
	int32 MemoryAlignment;

	UPROPERTY(EditAnywhere, BlueprintReadWrite)
	bool bDeviceMemory;

	UPROPERTY(EditAnywhere)
	uint32 Hash;

public:
	WWISEFILEHANDLER_API FWwisePackagedFile();
};

FORCEINLINE uint32 GetTypeHash(const FWwisePackagedFile) { return 0; }
