ブループリントで作ったGame State の変数を Pawn C++ クラス から読み込む

始めまして。こちらで質問をさせて頂きます。

現在、私はブループリントで制作した
ゲームステートに ステータス等の情報を設定し、

それを外部のC++のPawn C++クラスから呼び出そうと考えています。

Game State (以後、“Status”) には、“Switch_A” と言うBoolean が含まれています。変数はPublic です。

最終的に、C++側で"Status"から読み込んだ"Switch_A" を使い、条件分岐等を行う予定です。
しかし、C++側でどのようなコードを書けば、「ゲームステートのブループリントのデータ」を呼び出せるかが分かりません。

どなたかUE4でのC++に詳しい人がいましたら、少し教えて貰う事は出来ませんでしょうか?
よろしくお願いします。

C++ で GameState を取得するのは以下のコードで取得出来ます。

auto state = GetWorld()->GetGameState<AGameState>();
// プロパティの取得
state->hoge;

しかし、Blueprint で作成したクラスを取得するのはわからない(というよりあまり推奨されない?)のですが、下記のように C++ でベースのクラスを作成して Blueprint でそのクラスを継承して、GameMode から指定することで、いかのようにしてプロパティを取得することが可能です。

ベースの TestGameState

UCLASS()
class UE4LAB_API ATestGameState : public AGameState
{
	GENERATED_BODY()
public:
	UPROPERTY(EditAnywhere)
  int32 hoge;
};

Pawn にて取得する際のコード

void ATestPawn::BeginPlay()
{
	Super::BeginPlay();

	auto state = GetWorld()->GetGameState<ATestGameState>();

	GLog->Log(FString::FromInt(state->hoge));
}

この方法を試してみたら何とかできそうです。
丁寧にコードまで載せてくれてありがとうございました。