// 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 "Materials/MaterialExpressionMaterialCache.h" #include "Materials/MaterialExpression.h" PRAGMA_DISABLE_DEPRECATION_WARNINGS static_assert(!UE_WITH_CONSTINIT_UOBJECT, "This generated code can only be compiled with !UE_WITH_CONSTINIT_OBJECT"); void EmptyLinkFunctionForGeneratedCodeMaterialExpressionMaterialCache() {} // ********** Begin Cross Module References ******************************************************** ENGINE_API UClass* Z_Construct_UClass_UMaterialCacheVirtualTextureTag_NoRegister(); ENGINE_API UClass* Z_Construct_UClass_UMaterialExpressionCustomOutput(); ENGINE_API UClass* Z_Construct_UClass_UMaterialExpressionMaterialCache(); ENGINE_API UClass* Z_Construct_UClass_UMaterialExpressionMaterialCache_NoRegister(); ENGINE_API UScriptStruct* Z_Construct_UScriptStruct_FExpressionInput(); ENGINE_API UScriptStruct* Z_Construct_UScriptStruct_FMaterialExpressionMaterialCacheAttribute(); UPackage* Z_Construct_UPackage__Script_Engine(); // ********** End Cross Module References ********************************************************** // ********** Begin ScriptStruct FMaterialExpressionMaterialCacheAttribute ************************* struct Z_Construct_UScriptStruct_FMaterialExpressionMaterialCacheAttribute_Statics { static inline consteval int32 GetStructSize() { return sizeof(FMaterialExpressionMaterialCacheAttribute); } static inline consteval int16 GetStructAlignment() { return alignof(FMaterialExpressionMaterialCacheAttribute); } #if WITH_METADATA static constexpr UECodeGen_Private::FMetaDataPairParam Struct_MetaDataParams[] = { { "ModuleRelativePath", "Public/Materials/MaterialExpressionMaterialCache.h" }, }; static constexpr UECodeGen_Private::FMetaDataPairParam NewProp_Decoration_MetaData[] = { { "Comment", "/** Decorated name for printing */" }, { "ModuleRelativePath", "Public/Materials/MaterialExpressionMaterialCache.h" }, { "ToolTip", "Decorated name for printing" }, }; static constexpr UECodeGen_Private::FMetaDataPairParam NewProp_ValueType_MetaData[] = { { "Comment", "/** EMaterialValueType, u64 for serialization */" }, { "ModuleRelativePath", "Public/Materials/MaterialExpressionMaterialCache.h" }, { "ToolTip", "EMaterialValueType, u64 for serialization" }, }; static constexpr UECodeGen_Private::FMetaDataPairParam NewProp_Input_MetaData[] = { { "Comment", "/** Bindable input */" }, { "ModuleRelativePath", "Public/Materials/MaterialExpressionMaterialCache.h" }, { "ToolTip", "Bindable input" }, }; #endif // WITH_METADATA // ********** Begin ScriptStruct FMaterialExpressionMaterialCacheAttribute constinit property declarations static const UECodeGen_Private::FStrPropertyParams NewProp_Decoration; static const UECodeGen_Private::FUInt64PropertyParams NewProp_ValueType; static const UECodeGen_Private::FStructPropertyParams NewProp_Input; static const UECodeGen_Private::FPropertyParamsBase* const PropPointers[]; // ********** End ScriptStruct FMaterialExpressionMaterialCacheAttribute constinit property declarations static void* NewStructOps() { return (UScriptStruct::ICppStructOps*)new UScriptStruct::TCppStructOps(); } static const UECodeGen_Private::FStructParams StructParams; }; // struct Z_Construct_UScriptStruct_FMaterialExpressionMaterialCacheAttribute_Statics static FStructRegistrationInfo Z_Registration_Info_UScriptStruct_FMaterialExpressionMaterialCacheAttribute; class UScriptStruct* FMaterialExpressionMaterialCacheAttribute::StaticStruct() { if (!Z_Registration_Info_UScriptStruct_FMaterialExpressionMaterialCacheAttribute.OuterSingleton) { Z_Registration_Info_UScriptStruct_FMaterialExpressionMaterialCacheAttribute.OuterSingleton = GetStaticStruct(Z_Construct_UScriptStruct_FMaterialExpressionMaterialCacheAttribute, (UObject*)Z_Construct_UPackage__Script_Engine(), TEXT("MaterialExpressionMaterialCacheAttribute")); } return Z_Registration_Info_UScriptStruct_FMaterialExpressionMaterialCacheAttribute.OuterSingleton; } // ********** Begin ScriptStruct FMaterialExpressionMaterialCacheAttribute Property Definitions **** const UECodeGen_Private::FStrPropertyParams Z_Construct_UScriptStruct_FMaterialExpressionMaterialCacheAttribute_Statics::NewProp_Decoration = { "Decoration", nullptr, (EPropertyFlags)0x0010000000000000, UECodeGen_Private::EPropertyGenFlags::Str, RF_Public|RF_Transient|RF_MarkAsNative, nullptr, nullptr, 1, STRUCT_OFFSET(FMaterialExpressionMaterialCacheAttribute, Decoration), METADATA_PARAMS(UE_ARRAY_COUNT(NewProp_Decoration_MetaData), NewProp_Decoration_MetaData) }; const UECodeGen_Private::FUInt64PropertyParams Z_Construct_UScriptStruct_FMaterialExpressionMaterialCacheAttribute_Statics::NewProp_ValueType = { "ValueType", nullptr, (EPropertyFlags)0x0010000000000000, UECodeGen_Private::EPropertyGenFlags::UInt64, RF_Public|RF_Transient|RF_MarkAsNative, nullptr, nullptr, 1, STRUCT_OFFSET(FMaterialExpressionMaterialCacheAttribute, ValueType), METADATA_PARAMS(UE_ARRAY_COUNT(NewProp_ValueType_MetaData), NewProp_ValueType_MetaData) }; const UECodeGen_Private::FStructPropertyParams Z_Construct_UScriptStruct_FMaterialExpressionMaterialCacheAttribute_Statics::NewProp_Input = { "Input", nullptr, (EPropertyFlags)0x0010000000000000, UECodeGen_Private::EPropertyGenFlags::Struct, RF_Public|RF_Transient|RF_MarkAsNative, nullptr, nullptr, 1, STRUCT_OFFSET(FMaterialExpressionMaterialCacheAttribute, Input), Z_Construct_UScriptStruct_FExpressionInput, METADATA_PARAMS(UE_ARRAY_COUNT(NewProp_Input_MetaData), NewProp_Input_MetaData) }; const UECodeGen_Private::FPropertyParamsBase* const Z_Construct_UScriptStruct_FMaterialExpressionMaterialCacheAttribute_Statics::PropPointers[] = { (const UECodeGen_Private::FPropertyParamsBase*)&Z_Construct_UScriptStruct_FMaterialExpressionMaterialCacheAttribute_Statics::NewProp_Decoration, (const UECodeGen_Private::FPropertyParamsBase*)&Z_Construct_UScriptStruct_FMaterialExpressionMaterialCacheAttribute_Statics::NewProp_ValueType, (const UECodeGen_Private::FPropertyParamsBase*)&Z_Construct_UScriptStruct_FMaterialExpressionMaterialCacheAttribute_Statics::NewProp_Input, }; static_assert(UE_ARRAY_COUNT(Z_Construct_UScriptStruct_FMaterialExpressionMaterialCacheAttribute_Statics::PropPointers) < 2048); // ********** End ScriptStruct FMaterialExpressionMaterialCacheAttribute Property Definitions ****** const UECodeGen_Private::FStructParams Z_Construct_UScriptStruct_FMaterialExpressionMaterialCacheAttribute_Statics::StructParams = { (UObject* (*)())Z_Construct_UPackage__Script_Engine, nullptr, &NewStructOps, "MaterialExpressionMaterialCacheAttribute", Z_Construct_UScriptStruct_FMaterialExpressionMaterialCacheAttribute_Statics::PropPointers, UE_ARRAY_COUNT(Z_Construct_UScriptStruct_FMaterialExpressionMaterialCacheAttribute_Statics::PropPointers), sizeof(FMaterialExpressionMaterialCacheAttribute), alignof(FMaterialExpressionMaterialCacheAttribute), RF_Public|RF_Transient|RF_MarkAsNative, EStructFlags(0x00000001), METADATA_PARAMS(UE_ARRAY_COUNT(Z_Construct_UScriptStruct_FMaterialExpressionMaterialCacheAttribute_Statics::Struct_MetaDataParams), Z_Construct_UScriptStruct_FMaterialExpressionMaterialCacheAttribute_Statics::Struct_MetaDataParams) }; UScriptStruct* Z_Construct_UScriptStruct_FMaterialExpressionMaterialCacheAttribute() { if (!Z_Registration_Info_UScriptStruct_FMaterialExpressionMaterialCacheAttribute.InnerSingleton) { UECodeGen_Private::ConstructUScriptStruct(Z_Registration_Info_UScriptStruct_FMaterialExpressionMaterialCacheAttribute.InnerSingleton, Z_Construct_UScriptStruct_FMaterialExpressionMaterialCacheAttribute_Statics::StructParams); } return CastChecked(Z_Registration_Info_UScriptStruct_FMaterialExpressionMaterialCacheAttribute.InnerSingleton); } // ********** End ScriptStruct FMaterialExpressionMaterialCacheAttribute *************************** // ********** Begin Class UMaterialExpressionMaterialCache ***************************************** FClassRegistrationInfo Z_Registration_Info_UClass_UMaterialExpressionMaterialCache; UClass* UMaterialExpressionMaterialCache::GetPrivateStaticClass() { using TClass = UMaterialExpressionMaterialCache; if (!Z_Registration_Info_UClass_UMaterialExpressionMaterialCache.InnerSingleton) { GetPrivateStaticClassBody( TClass::StaticPackage(), TEXT("MaterialExpressionMaterialCache"), Z_Registration_Info_UClass_UMaterialExpressionMaterialCache.InnerSingleton, StaticRegisterNativesUMaterialExpressionMaterialCache, sizeof(TClass), alignof(TClass), TClass::StaticClassFlags, TClass::StaticClassCastFlags(), TClass::StaticConfigName(), (UClass::ClassConstructorType)InternalConstructor, (UClass::ClassVTableHelperCtorCallerType)InternalVTableHelperCtorCaller, UOBJECT_CPPCLASS_STATICFUNCTIONS_FORCLASS(TClass), &TClass::Super::StaticClass, &TClass::WithinClass::StaticClass ); } return Z_Registration_Info_UClass_UMaterialExpressionMaterialCache.InnerSingleton; } UClass* Z_Construct_UClass_UMaterialExpressionMaterialCache_NoRegister() { return UMaterialExpressionMaterialCache::GetPrivateStaticClass(); } struct Z_Construct_UClass_UMaterialExpressionMaterialCache_Statics { #if WITH_METADATA static constexpr UECodeGen_Private::FMetaDataPairParam Class_MetaDataParams[] = { { "DisplayName", "MaterialCache" }, { "HideCategories", "Object Object Object" }, { "IncludePath", "Materials/MaterialExpressionMaterialCache.h" }, { "ModuleRelativePath", "Public/Materials/MaterialExpressionMaterialCache.h" }, { "ObjectInitializerConstructorDeclared", "" }, { "Private", "" }, }; static constexpr UECodeGen_Private::FMetaDataPairParam NewProp_bIsSample_MetaData[] = { { "Category", "MaterialAttributes" }, { "Comment", "/**\n\x09 * Is this a material cache sample?\n\x09 * Sample expressions do not output to the cache, and may sample the cache of other primitives\n\x09 **/" }, { "ModuleRelativePath", "Public/Materials/MaterialExpressionMaterialCache.h" }, { "ToolTip", "Is this a material cache sample?\nSample expressions do not output to the cache, and may sample the cache of other primitives" }, }; static constexpr UECodeGen_Private::FMetaDataPairParam NewProp_Tag_MetaData[] = { { "Category", "MaterialAttributes" }, { "Comment", "/** Optional, the tag of the cache to read/write */" }, { "ModuleRelativePath", "Public/Materials/MaterialExpressionMaterialCache.h" }, { "ToolTip", "Optional, the tag of the cache to read/write" }, }; static constexpr UECodeGen_Private::FMetaDataPairParam NewProp_Attributes_MetaData[] = { { "Comment", "/** All attributes of this expression */" }, { "ModuleRelativePath", "Public/Materials/MaterialExpressionMaterialCache.h" }, { "ToolTip", "All attributes of this expression" }, }; static constexpr UECodeGen_Private::FMetaDataPairParam NewProp_Primitive_MetaData[] = { { "Comment", "/** Optional, the primitive whose material cache it to be sampled from */" }, { "ModuleRelativePath", "Public/Materials/MaterialExpressionMaterialCache.h" }, { "RequiredInput", "false" }, { "ToolTip", "Optional, the primitive whose material cache it to be sampled from" }, }; static constexpr UECodeGen_Private::FMetaDataPairParam NewProp_UV_MetaData[] = { { "Comment", "/** Optional, UV coordinate to sample on */" }, { "ModuleRelativePath", "Public/Materials/MaterialExpressionMaterialCache.h" }, { "RequiredInput", "false" }, { "ToolTip", "Optional, UV coordinate to sample on" }, }; #endif // WITH_METADATA // ********** Begin Class UMaterialExpressionMaterialCache constinit property declarations ********* static void NewProp_bIsSample_SetBit(void* Obj); static const UECodeGen_Private::FBoolPropertyParams NewProp_bIsSample; static const UECodeGen_Private::FObjectPropertyParams NewProp_Tag; static const UECodeGen_Private::FStructPropertyParams NewProp_Attributes_Inner; static const UECodeGen_Private::FArrayPropertyParams NewProp_Attributes; static const UECodeGen_Private::FStructPropertyParams NewProp_Primitive; static const UECodeGen_Private::FStructPropertyParams NewProp_UV; static const UECodeGen_Private::FPropertyParamsBase* const PropPointers[]; // ********** End Class UMaterialExpressionMaterialCache constinit property declarations *********** static UObject* (*const DependentSingletons[])(); static constexpr FCppClassTypeInfoStatic StaticCppClassTypeInfo = { TCppClassTypeTraits::IsAbstract, }; static const UECodeGen_Private::FClassParams ClassParams; }; // struct Z_Construct_UClass_UMaterialExpressionMaterialCache_Statics // ********** Begin Class UMaterialExpressionMaterialCache Property Definitions ******************** void Z_Construct_UClass_UMaterialExpressionMaterialCache_Statics::NewProp_bIsSample_SetBit(void* Obj) { ((UMaterialExpressionMaterialCache*)Obj)->bIsSample = 1; } const UECodeGen_Private::FBoolPropertyParams Z_Construct_UClass_UMaterialExpressionMaterialCache_Statics::NewProp_bIsSample = { "bIsSample", nullptr, (EPropertyFlags)0x0010000000000001, UECodeGen_Private::EPropertyGenFlags::Bool | UECodeGen_Private::EPropertyGenFlags::NativeBool, RF_Public|RF_Transient|RF_MarkAsNative, nullptr, nullptr, 1, sizeof(bool), sizeof(UMaterialExpressionMaterialCache), &Z_Construct_UClass_UMaterialExpressionMaterialCache_Statics::NewProp_bIsSample_SetBit, METADATA_PARAMS(UE_ARRAY_COUNT(NewProp_bIsSample_MetaData), NewProp_bIsSample_MetaData) }; const UECodeGen_Private::FObjectPropertyParams Z_Construct_UClass_UMaterialExpressionMaterialCache_Statics::NewProp_Tag = { "Tag", nullptr, (EPropertyFlags)0x0114000000000001, UECodeGen_Private::EPropertyGenFlags::Object | UECodeGen_Private::EPropertyGenFlags::ObjectPtr, RF_Public|RF_Transient|RF_MarkAsNative, nullptr, nullptr, 1, STRUCT_OFFSET(UMaterialExpressionMaterialCache, Tag), Z_Construct_UClass_UMaterialCacheVirtualTextureTag_NoRegister, METADATA_PARAMS(UE_ARRAY_COUNT(NewProp_Tag_MetaData), NewProp_Tag_MetaData) }; const UECodeGen_Private::FStructPropertyParams Z_Construct_UClass_UMaterialExpressionMaterialCache_Statics::NewProp_Attributes_Inner = { "Attributes", nullptr, (EPropertyFlags)0x0000000000000000, UECodeGen_Private::EPropertyGenFlags::Struct, RF_Public|RF_Transient|RF_MarkAsNative, nullptr, nullptr, 1, 0, Z_Construct_UScriptStruct_FMaterialExpressionMaterialCacheAttribute, METADATA_PARAMS(0, nullptr) }; // 184466972 const UECodeGen_Private::FArrayPropertyParams Z_Construct_UClass_UMaterialExpressionMaterialCache_Statics::NewProp_Attributes = { "Attributes", nullptr, (EPropertyFlags)0x0010000000000000, UECodeGen_Private::EPropertyGenFlags::Array, RF_Public|RF_Transient|RF_MarkAsNative, nullptr, nullptr, 1, STRUCT_OFFSET(UMaterialExpressionMaterialCache, Attributes), EArrayPropertyFlags::None, METADATA_PARAMS(UE_ARRAY_COUNT(NewProp_Attributes_MetaData), NewProp_Attributes_MetaData) }; // 184466972 const UECodeGen_Private::FStructPropertyParams Z_Construct_UClass_UMaterialExpressionMaterialCache_Statics::NewProp_Primitive = { "Primitive", nullptr, (EPropertyFlags)0x0010000000000000, UECodeGen_Private::EPropertyGenFlags::Struct, RF_Public|RF_Transient|RF_MarkAsNative, nullptr, nullptr, 1, STRUCT_OFFSET(UMaterialExpressionMaterialCache, Primitive), Z_Construct_UScriptStruct_FExpressionInput, METADATA_PARAMS(UE_ARRAY_COUNT(NewProp_Primitive_MetaData), NewProp_Primitive_MetaData) }; const UECodeGen_Private::FStructPropertyParams Z_Construct_UClass_UMaterialExpressionMaterialCache_Statics::NewProp_UV = { "UV", nullptr, (EPropertyFlags)0x0010000000000000, UECodeGen_Private::EPropertyGenFlags::Struct, RF_Public|RF_Transient|RF_MarkAsNative, nullptr, nullptr, 1, STRUCT_OFFSET(UMaterialExpressionMaterialCache, UV), Z_Construct_UScriptStruct_FExpressionInput, METADATA_PARAMS(UE_ARRAY_COUNT(NewProp_UV_MetaData), NewProp_UV_MetaData) }; const UECodeGen_Private::FPropertyParamsBase* const Z_Construct_UClass_UMaterialExpressionMaterialCache_Statics::PropPointers[] = { (const UECodeGen_Private::FPropertyParamsBase*)&Z_Construct_UClass_UMaterialExpressionMaterialCache_Statics::NewProp_bIsSample, (const UECodeGen_Private::FPropertyParamsBase*)&Z_Construct_UClass_UMaterialExpressionMaterialCache_Statics::NewProp_Tag, (const UECodeGen_Private::FPropertyParamsBase*)&Z_Construct_UClass_UMaterialExpressionMaterialCache_Statics::NewProp_Attributes_Inner, (const UECodeGen_Private::FPropertyParamsBase*)&Z_Construct_UClass_UMaterialExpressionMaterialCache_Statics::NewProp_Attributes, (const UECodeGen_Private::FPropertyParamsBase*)&Z_Construct_UClass_UMaterialExpressionMaterialCache_Statics::NewProp_Primitive, (const UECodeGen_Private::FPropertyParamsBase*)&Z_Construct_UClass_UMaterialExpressionMaterialCache_Statics::NewProp_UV, }; static_assert(UE_ARRAY_COUNT(Z_Construct_UClass_UMaterialExpressionMaterialCache_Statics::PropPointers) < 2048); // ********** End Class UMaterialExpressionMaterialCache Property Definitions ********************** UObject* (*const Z_Construct_UClass_UMaterialExpressionMaterialCache_Statics::DependentSingletons[])() = { (UObject* (*)())Z_Construct_UClass_UMaterialExpressionCustomOutput, (UObject* (*)())Z_Construct_UPackage__Script_Engine, }; static_assert(UE_ARRAY_COUNT(Z_Construct_UClass_UMaterialExpressionMaterialCache_Statics::DependentSingletons) < 16); const UECodeGen_Private::FClassParams Z_Construct_UClass_UMaterialExpressionMaterialCache_Statics::ClassParams = { &UMaterialExpressionMaterialCache::StaticClass, "MaterialExpressions", &StaticCppClassTypeInfo, DependentSingletons, nullptr, Z_Construct_UClass_UMaterialExpressionMaterialCache_Statics::PropPointers, nullptr, UE_ARRAY_COUNT(DependentSingletons), 0, UE_ARRAY_COUNT(Z_Construct_UClass_UMaterialExpressionMaterialCache_Statics::PropPointers), 0, 0x000020B4u, METADATA_PARAMS(UE_ARRAY_COUNT(Z_Construct_UClass_UMaterialExpressionMaterialCache_Statics::Class_MetaDataParams), Z_Construct_UClass_UMaterialExpressionMaterialCache_Statics::Class_MetaDataParams) }; void UMaterialExpressionMaterialCache::StaticRegisterNativesUMaterialExpressionMaterialCache() { } UClass* Z_Construct_UClass_UMaterialExpressionMaterialCache() { if (!Z_Registration_Info_UClass_UMaterialExpressionMaterialCache.OuterSingleton) { UECodeGen_Private::ConstructUClass(Z_Registration_Info_UClass_UMaterialExpressionMaterialCache.OuterSingleton, Z_Construct_UClass_UMaterialExpressionMaterialCache_Statics::ClassParams); } return Z_Registration_Info_UClass_UMaterialExpressionMaterialCache.OuterSingleton; } DEFINE_VTABLE_PTR_HELPER_CTOR_NS(, UMaterialExpressionMaterialCache); UMaterialExpressionMaterialCache::~UMaterialExpressionMaterialCache() {} // ********** End Class UMaterialExpressionMaterialCache ******************************************* // ********** Begin Registration ******************************************************************* struct Z_CompiledInDeferFile_FID_Engine_Source_Runtime_Engine_Public_Materials_MaterialExpressionMaterialCache_h__Script_Engine_Statics { static constexpr FStructRegisterCompiledInInfo ScriptStructInfo[] = { { FMaterialExpressionMaterialCacheAttribute::StaticStruct, Z_Construct_UScriptStruct_FMaterialExpressionMaterialCacheAttribute_Statics::NewStructOps, TEXT("MaterialExpressionMaterialCacheAttribute"),&Z_Registration_Info_UScriptStruct_FMaterialExpressionMaterialCacheAttribute, CONSTRUCT_RELOAD_VERSION_INFO(FStructReloadVersionInfo, sizeof(FMaterialExpressionMaterialCacheAttribute), 184466972U) }, }; static constexpr FClassRegisterCompiledInInfo ClassInfo[] = { { Z_Construct_UClass_UMaterialExpressionMaterialCache, UMaterialExpressionMaterialCache::StaticClass, TEXT("UMaterialExpressionMaterialCache"), &Z_Registration_Info_UClass_UMaterialExpressionMaterialCache, CONSTRUCT_RELOAD_VERSION_INFO(FClassReloadVersionInfo, sizeof(UMaterialExpressionMaterialCache), 712321983U) }, }; }; // Z_CompiledInDeferFile_FID_Engine_Source_Runtime_Engine_Public_Materials_MaterialExpressionMaterialCache_h__Script_Engine_Statics static FRegisterCompiledInInfo Z_CompiledInDeferFile_FID_Engine_Source_Runtime_Engine_Public_Materials_MaterialExpressionMaterialCache_h__Script_Engine_834749356{ TEXT("/Script/Engine"), Z_CompiledInDeferFile_FID_Engine_Source_Runtime_Engine_Public_Materials_MaterialExpressionMaterialCache_h__Script_Engine_Statics::ClassInfo, UE_ARRAY_COUNT(Z_CompiledInDeferFile_FID_Engine_Source_Runtime_Engine_Public_Materials_MaterialExpressionMaterialCache_h__Script_Engine_Statics::ClassInfo), Z_CompiledInDeferFile_FID_Engine_Source_Runtime_Engine_Public_Materials_MaterialExpressionMaterialCache_h__Script_Engine_Statics::ScriptStructInfo, UE_ARRAY_COUNT(Z_CompiledInDeferFile_FID_Engine_Source_Runtime_Engine_Public_Materials_MaterialExpressionMaterialCache_h__Script_Engine_Statics::ScriptStructInfo), nullptr, 0, }; // ********** End Registration ********************************************************************* PRAGMA_ENABLE_DEPRECATION_WARNINGS