// Copyright Epic Games, Inc. All Rights Reserved.
/*===========================================================================
	Generated code exported from UnrealHeaderTool.
	DO NOT modify this manually! Edit the corresponding .h files instead!
===========================================================================*/

#include "UObject/GeneratedCppIncludes.h"
#include "AGXUnreal/Public/AGX_SceneComponentReference.h"
PRAGMA_DISABLE_DEPRECATION_WARNINGS
void EmptyLinkFunctionForGeneratedCodeAGX_SceneComponentReference() {}
// Cross Module References
	AGXUNREAL_API UScriptStruct* Z_Construct_UScriptStruct_FAGX_SceneComponentReference();
	ENGINE_API UClass* Z_Construct_UClass_AActor_NoRegister();
	UPackage* Z_Construct_UPackage__Script_AGXUnreal();
// End Cross Module References
	static FStructRegistrationInfo Z_Registration_Info_UScriptStruct_AGX_SceneComponentReference;
class UScriptStruct* FAGX_SceneComponentReference::StaticStruct()
{
	if (!Z_Registration_Info_UScriptStruct_AGX_SceneComponentReference.OuterSingleton)
	{
		Z_Registration_Info_UScriptStruct_AGX_SceneComponentReference.OuterSingleton = GetStaticStruct(Z_Construct_UScriptStruct_FAGX_SceneComponentReference, (UObject*)Z_Construct_UPackage__Script_AGXUnreal(), TEXT("AGX_SceneComponentReference"));
	}
	return Z_Registration_Info_UScriptStruct_AGX_SceneComponentReference.OuterSingleton;
}
template<> AGXUNREAL_API UScriptStruct* StaticStruct<FAGX_SceneComponentReference>()
{
	return FAGX_SceneComponentReference::StaticStruct();
}
	struct Z_Construct_UScriptStruct_FAGX_SceneComponentReference_Statics
	{
#if WITH_METADATA
		static const UECodeGen_Private::FMetaDataPairParam Struct_MetaDataParams[];
#endif
		static void* NewStructOps();
#if WITH_METADATA
		static const UECodeGen_Private::FMetaDataPairParam NewProp_OwningActor_MetaData[];
#endif
		static const UECodeGen_Private::FObjectPropertyParams NewProp_OwningActor;
#if WITH_METADATA
		static const UECodeGen_Private::FMetaDataPairParam NewProp_SceneComponentName_MetaData[];
#endif
		static const UECodeGen_Private::FNamePropertyParams NewProp_SceneComponentName;
#if WITH_METADATA
		static const UECodeGen_Private::FMetaDataPairParam NewProp_bSearchChildActors_MetaData[];
#endif
		static void NewProp_bSearchChildActors_SetBit(void* Obj);
		static const UECodeGen_Private::FBoolPropertyParams NewProp_bSearchChildActors;
		static const UECodeGen_Private::FPropertyParamsBase* const PropPointers[];
		static const UECodeGen_Private::FStructParams ReturnStructParams;
	};
#if WITH_METADATA
	const UECodeGen_Private::FMetaDataPairParam Z_Construct_UScriptStruct_FAGX_SceneComponentReference_Statics::Struct_MetaDataParams[] = {
		{ "Comment", "/**\n * A reference to a USceneComponent.\n *\n * The intention is that it should be used much like Actors pointers can, to a SceneComponent\n * instead of an Actor, but limitations in the Unreal Editor forces us to do some tricks and\n * workarounds. There is no built-in Component picker, so the user must first pick an Actor that\n * owns the Component and then select the wanted component by entering its name in a text field.\n * Populating a combo box with the available names is a possible future extension. Except for the\n * cache, there is no actual pointer to the Component stored in the FAGX_SceneComponentReference,\n * only the name, so renaming the Component will break the reference. This is a serious limitation.\n * Also, while building the a Blueprint Actor in the Blueprint editor there is no actual Actor yet,\n * so the Actor picker cannot be used to select the Actor that will be created when the Blueprint is\n * instantiated.  For this reason all Components that include a SceneComponentReference should set\n * OwningActor to GetTypedOuter<AActor>() in PostInitProperties.\n *\n * void UMyComponent::PostInitProperties()\n * {\n *  \x09Super::PostInitProperties();\n *  \x09MySceneComponentReference.OwningActor = GetTypedOuter<AActor>();\n * }\n *\n * This establishes the so-called local scope for the reference. Unless another OwningActor is\n * specified, the reference will search within the Actor that the Component is contained within. The\n * OwningActor set in PostInitProperties will we overwritten by deserialization if the object is\n * created from something else, such as part of a Play-in-Editor session or loaded from disk as part\n * of a cooked build.\n *\n * The SceneComponentReference supports caching of the SceneComponent through the\n * CacheCurrentSceneComponent member function. Only call this once the SceneComponentReference has\n * been fully formed, i.e., the OwningActor property set to the final Actor and the referenced\n * SceneComponent been given its final name. BeginPlay is often a good choice.\n *\n * \\todo The implementation is very similar to FAGX_SceneComponentReference. Find what can be shared\n * and put somewhere.\n */" },
		{ "ModuleRelativePath", "Public/AGX_SceneComponentReference.h" },
		{ "ToolTip", "A reference to a USceneComponent.\n\nThe intention is that it should be used much like Actors pointers can, to a SceneComponent\ninstead of an Actor, but limitations in the Unreal Editor forces us to do some tricks and\nworkarounds. There is no built-in Component picker, so the user must first pick an Actor that\nowns the Component and then select the wanted component by entering its name in a text field.\nPopulating a combo box with the available names is a possible future extension. Except for the\ncache, there is no actual pointer to the Component stored in the FAGX_SceneComponentReference,\nonly the name, so renaming the Component will break the reference. This is a serious limitation.\nAlso, while building the a Blueprint Actor in the Blueprint editor there is no actual Actor yet,\nso the Actor picker cannot be used to select the Actor that will be created when the Blueprint is\ninstantiated.  For this reason all Components that include a SceneComponentReference should set\nOwningActor to GetTypedOuter<AActor>() in PostInitProperties.\n\nvoid UMyComponent::PostInitProperties()\n{\n    Super::PostInitProperties();\n    MySceneComponentReference.OwningActor = GetTypedOuter<AActor>();\n}\n\nThis establishes the so-called local scope for the reference. Unless another OwningActor is\nspecified, the reference will search within the Actor that the Component is contained within. The\nOwningActor set in PostInitProperties will we overwritten by deserialization if the object is\ncreated from something else, such as part of a Play-in-Editor session or loaded from disk as part\nof a cooked build.\n\nThe SceneComponentReference supports caching of the SceneComponent through the\nCacheCurrentSceneComponent member function. Only call this once the SceneComponentReference has\nbeen fully formed, i.e., the OwningActor property set to the final Actor and the referenced\nSceneComponent been given its final name. BeginPlay is often a good choice.\n\n\\todo The implementation is very similar to FAGX_SceneComponentReference. Find what can be shared\nand put somewhere." },
	};
#endif
	void* Z_Construct_UScriptStruct_FAGX_SceneComponentReference_Statics::NewStructOps()
	{
		return (UScriptStruct::ICppStructOps*)new UScriptStruct::TCppStructOps<FAGX_SceneComponentReference>();
	}
#if WITH_METADATA
	const UECodeGen_Private::FMetaDataPairParam Z_Construct_UScriptStruct_FAGX_SceneComponentReference_Statics::NewProp_OwningActor_MetaData[] = {
		{ "Category", "AGX Dynamics" },
		{ "ModuleRelativePath", "Public/AGX_SceneComponentReference.h" },
		{ "Tooltip", "The Actor that owns the SceneComponent" },
	};
#endif
	const UECodeGen_Private::FObjectPropertyParams Z_Construct_UScriptStruct_FAGX_SceneComponentReference_Statics::NewProp_OwningActor = { "OwningActor", nullptr, (EPropertyFlags)0x0010000000000801, UECodeGen_Private::EPropertyGenFlags::Object, RF_Public|RF_Transient|RF_MarkAsNative, nullptr, nullptr, 1, STRUCT_OFFSET(FAGX_SceneComponentReference, OwningActor), Z_Construct_UClass_AActor_NoRegister, METADATA_PARAMS(UE_ARRAY_COUNT(Z_Construct_UScriptStruct_FAGX_SceneComponentReference_Statics::NewProp_OwningActor_MetaData), Z_Construct_UScriptStruct_FAGX_SceneComponentReference_Statics::NewProp_OwningActor_MetaData) };
#if WITH_METADATA
	const UECodeGen_Private::FMetaDataPairParam Z_Construct_UScriptStruct_FAGX_SceneComponentReference_Statics::NewProp_SceneComponentName_MetaData[] = {
		{ "Category", "AGX Dynamics" },
		{ "ModuleRelativePath", "Public/AGX_SceneComponentReference.h" },
		{ "Tooltip", "The name of the SceneComponent." },
	};
#endif
	const UECodeGen_Private::FNamePropertyParams Z_Construct_UScriptStruct_FAGX_SceneComponentReference_Statics::NewProp_SceneComponentName = { "SceneComponentName", nullptr, (EPropertyFlags)0x0010000000000001, UECodeGen_Private::EPropertyGenFlags::Name, RF_Public|RF_Transient|RF_MarkAsNative, nullptr, nullptr, 1, STRUCT_OFFSET(FAGX_SceneComponentReference, SceneComponentName), METADATA_PARAMS(UE_ARRAY_COUNT(Z_Construct_UScriptStruct_FAGX_SceneComponentReference_Statics::NewProp_SceneComponentName_MetaData), Z_Construct_UScriptStruct_FAGX_SceneComponentReference_Statics::NewProp_SceneComponentName_MetaData) };
#if WITH_METADATA
	const UECodeGen_Private::FMetaDataPairParam Z_Construct_UScriptStruct_FAGX_SceneComponentReference_Statics::NewProp_bSearchChildActors_MetaData[] = {
		{ "Category", "AGX Dynamics" },
		{ "Comment", "/**\n\x09 * If true, then search not only within OwningActor's Components, but also recursively through\n\x09 * ChildActorComponents as well.\n\x09 */" },
		{ "ModuleRelativePath", "Public/AGX_SceneComponentReference.h" },
		{ "ToolTip", "If true, then search not only within OwningActor's Components, but also recursively through\nChildActorComponents as well." },
	};
#endif
	void Z_Construct_UScriptStruct_FAGX_SceneComponentReference_Statics::NewProp_bSearchChildActors_SetBit(void* Obj)
	{
		((FAGX_SceneComponentReference*)Obj)->bSearchChildActors = 1;
	}
	const UECodeGen_Private::FBoolPropertyParams Z_Construct_UScriptStruct_FAGX_SceneComponentReference_Statics::NewProp_bSearchChildActors = { "bSearchChildActors", nullptr, (EPropertyFlags)0x0010000000000001, UECodeGen_Private::EPropertyGenFlags::Bool , RF_Public|RF_Transient|RF_MarkAsNative, nullptr, nullptr, 1, sizeof(uint8), sizeof(FAGX_SceneComponentReference), &Z_Construct_UScriptStruct_FAGX_SceneComponentReference_Statics::NewProp_bSearchChildActors_SetBit, METADATA_PARAMS(UE_ARRAY_COUNT(Z_Construct_UScriptStruct_FAGX_SceneComponentReference_Statics::NewProp_bSearchChildActors_MetaData), Z_Construct_UScriptStruct_FAGX_SceneComponentReference_Statics::NewProp_bSearchChildActors_MetaData) };
	const UECodeGen_Private::FPropertyParamsBase* const Z_Construct_UScriptStruct_FAGX_SceneComponentReference_Statics::PropPointers[] = {
		(const UECodeGen_Private::FPropertyParamsBase*)&Z_Construct_UScriptStruct_FAGX_SceneComponentReference_Statics::NewProp_OwningActor,
		(const UECodeGen_Private::FPropertyParamsBase*)&Z_Construct_UScriptStruct_FAGX_SceneComponentReference_Statics::NewProp_SceneComponentName,
		(const UECodeGen_Private::FPropertyParamsBase*)&Z_Construct_UScriptStruct_FAGX_SceneComponentReference_Statics::NewProp_bSearchChildActors,
	};
	const UECodeGen_Private::FStructParams Z_Construct_UScriptStruct_FAGX_SceneComponentReference_Statics::ReturnStructParams = {
		(UObject* (*)())Z_Construct_UPackage__Script_AGXUnreal,
		nullptr,
		&NewStructOps,
		"AGX_SceneComponentReference",
		Z_Construct_UScriptStruct_FAGX_SceneComponentReference_Statics::PropPointers,
		UE_ARRAY_COUNT(Z_Construct_UScriptStruct_FAGX_SceneComponentReference_Statics::PropPointers),
		sizeof(FAGX_SceneComponentReference),
		alignof(FAGX_SceneComponentReference),
		RF_Public|RF_Transient|RF_MarkAsNative,
		EStructFlags(0x00000201),
		METADATA_PARAMS(UE_ARRAY_COUNT(Z_Construct_UScriptStruct_FAGX_SceneComponentReference_Statics::Struct_MetaDataParams), Z_Construct_UScriptStruct_FAGX_SceneComponentReference_Statics::Struct_MetaDataParams)
	};
	static_assert(UE_ARRAY_COUNT(Z_Construct_UScriptStruct_FAGX_SceneComponentReference_Statics::PropPointers) < 2048);
	UScriptStruct* Z_Construct_UScriptStruct_FAGX_SceneComponentReference()
	{
		if (!Z_Registration_Info_UScriptStruct_AGX_SceneComponentReference.InnerSingleton)
		{
			UECodeGen_Private::ConstructUScriptStruct(Z_Registration_Info_UScriptStruct_AGX_SceneComponentReference.InnerSingleton, Z_Construct_UScriptStruct_FAGX_SceneComponentReference_Statics::ReturnStructParams);
		}
		return Z_Registration_Info_UScriptStruct_AGX_SceneComponentReference.InnerSingleton;
	}
	struct Z_CompiledInDeferFile_FID_GitLab_Runner_builds_9YzzThLq_0_algoryx_unreal_agxunreal_staging_selfhosted_build_AGXUnreal_HostProject_Plugins_AGXUnreal_Source_AGXUnreal_Public_AGX_SceneComponentReference_h_Statics
	{
		static const FStructRegisterCompiledInInfo ScriptStructInfo[];
	};
	const FStructRegisterCompiledInInfo Z_CompiledInDeferFile_FID_GitLab_Runner_builds_9YzzThLq_0_algoryx_unreal_agxunreal_staging_selfhosted_build_AGXUnreal_HostProject_Plugins_AGXUnreal_Source_AGXUnreal_Public_AGX_SceneComponentReference_h_Statics::ScriptStructInfo[] = {
		{ FAGX_SceneComponentReference::StaticStruct, Z_Construct_UScriptStruct_FAGX_SceneComponentReference_Statics::NewStructOps, TEXT("AGX_SceneComponentReference"), &Z_Registration_Info_UScriptStruct_AGX_SceneComponentReference, CONSTRUCT_RELOAD_VERSION_INFO(FStructReloadVersionInfo, sizeof(FAGX_SceneComponentReference), 2114450808U) },
	};
	static FRegisterCompiledInInfo Z_CompiledInDeferFile_FID_GitLab_Runner_builds_9YzzThLq_0_algoryx_unreal_agxunreal_staging_selfhosted_build_AGXUnreal_HostProject_Plugins_AGXUnreal_Source_AGXUnreal_Public_AGX_SceneComponentReference_h_1640723322(TEXT("/Script/AGXUnreal"),
		nullptr, 0,
		Z_CompiledInDeferFile_FID_GitLab_Runner_builds_9YzzThLq_0_algoryx_unreal_agxunreal_staging_selfhosted_build_AGXUnreal_HostProject_Plugins_AGXUnreal_Source_AGXUnreal_Public_AGX_SceneComponentReference_h_Statics::ScriptStructInfo, UE_ARRAY_COUNT(Z_CompiledInDeferFile_FID_GitLab_Runner_builds_9YzzThLq_0_algoryx_unreal_agxunreal_staging_selfhosted_build_AGXUnreal_HostProject_Plugins_AGXUnreal_Source_AGXUnreal_Public_AGX_SceneComponentReference_h_Statics::ScriptStructInfo),
		nullptr, 0);
PRAGMA_ENABLE_DEPRECATION_WARNINGS
