62 lines
2.0 KiB
C++
62 lines
2.0 KiB
C++
// Copyright Epic Games, Inc. All Rights Reserved.
|
|
|
|
#pragma once
|
|
|
|
|
|
class FArrayProperty;
|
|
class FBoolProperty;
|
|
class FDelegateHandle;
|
|
class FProperty;
|
|
class FStructProperty;
|
|
|
|
enum class EHotReloadedClassFlags;
|
|
|
|
class FVariantManagerUtils
|
|
{
|
|
public:
|
|
// Invalidate our cached pointers whenever a hot reload happens, as the
|
|
// classes that own those UPropertys might be reinstanced
|
|
static void RegisterForHotReload();
|
|
static void UnregisterForHotReload();
|
|
|
|
// Returns true if Property is a FStructProperty with a Struct
|
|
// of type FVector, FColor, FRotator, FQuat, etc
|
|
static bool IsBuiltInStructProperty(const FProperty* Property);
|
|
|
|
// Returns true if Property is a FStructProperty with a Struct
|
|
// that the Variant Manager is allowed to capture specific properties from
|
|
static bool IsWalkableStructProperty(const FProperty* Property);
|
|
|
|
// Returns the OverrideMaterials property of the UMeshComponent class
|
|
static FArrayProperty* GetOverrideMaterialsProperty();
|
|
|
|
// Returns the RelativeLocation property of the USceneComponent class
|
|
static FStructProperty* GetRelativeLocationProperty();
|
|
|
|
// Returns the RelativeRotation property of the USceneComponent class
|
|
static FStructProperty* GetRelativeRotationProperty();
|
|
|
|
// Returns the RelativeScale3D property of the USceneComponent class
|
|
static FStructProperty* GetRelativeScale3DProperty();
|
|
|
|
// Returns the bVisible property of the USceneComponent class
|
|
static FBoolProperty* GetVisibilityProperty();
|
|
|
|
// Returns the LightColor property of the ULightComponent class
|
|
static FStructProperty* GetLightColorProperty();
|
|
|
|
private:
|
|
// Invalidates all of our cached FProperty pointers
|
|
static void InvalidateCache();
|
|
|
|
static FArrayProperty* OverrideMaterialsProperty;
|
|
static FStructProperty* RelativeLocationProperty;
|
|
static FStructProperty* RelativeRotationProperty;
|
|
static FStructProperty* RelativeScale3DProperty;
|
|
static FBoolProperty* VisiblityProperty;
|
|
static FStructProperty* LightColorProperty;
|
|
static FStructProperty* DefaultLightColorProperty;
|
|
|
|
static FDelegateHandle OnHotReloadHandle;
|
|
};
|