#pragma once

#include "CoreMinimal.h"
#include "Subsystems/GameInstanceSubsystem.h"
#include "QRCodeGenerationParams.h"
#include "QRCodeGeneratorSubsystem.generated.h"

class UTexture2D;

UCLASS(Blueprintable)
class QRCODEGENERATOR_API UQRCodeGeneratorSubsystem : public UGameInstanceSubsystem
{
	GENERATED_BODY()

public:
	UFUNCTION(BlueprintCallable)
	UTexture2D* GenerateQrCode(const FString& stringToEncode, const FQRCodeGenerationParams& params);

public:
	UQRCodeGeneratorSubsystem();
};

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