UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
ReplicationStateDescriptorImplementationMacros.h File Reference

Go to the source code of this file.

Classes

struct  UE::Net::Private::FInternalTypeInfo
 

Namespaces

namespace  UE
 
namespace  UE::Net
 
namespace  UE::Net::Private
 

Macros

#define IRIS_BEGIN_INTERNAL_TYPE_INFO(StateName)   static const UE::Net::Private::FInternalTypeInfo StateName ## TypeInfoData[] = {
 
#define IRIS_INTERNAL_TYPE_INFO(SerializerName)   { UE_NET_GET_SERIALIZER_INTERNAL_TYPE_SIZE(SerializerName), UE_NET_GET_SERIALIZER_INTERNAL_TYPE_ALIGNMENT(SerializerName) },
 
#define IRIS_END_INTERNAL_TYPE_INFO()   };
 
#define IRIS_BEGIN_SERIALIZER_DESCRIPTOR(StateName)   const UE::Net::FReplicationStateMemberSerializerDescriptor StateName::sReplicationStateDescriptorMemberSerializerDescriptors[] = {
 
#define IRIS_SERIALIZER_DESCRIPTOR(SerializerName, ConfigPointer)   { &UE_NET_GET_SERIALIZER(SerializerName), ConfigPointer ? ConfigPointer : UE_NET_GET_SERIALIZER_DEFAULT_CONFIG(SerializerName)},
 
#define IRIS_END_SERIALIZER_DESCRIPTOR()   };
 
#define IRIS_BEGIN_TRAITS_DESCRIPTOR(StateName)   const UE::Net::FReplicationStateMemberTraitsDescriptor StateName::sReplicationStateDescriptorMemberTraitsDescriptors[] = {
 
#define IRIS_TRAITS_DESCRIPTOR(Traits)   { Traits },
 
#define IRIS_END_TRAITS_DESCRIPTOR()   };
 
#define IRIS_BEGIN_TAG_DESCRIPTOR(StateName)   const UE::Net::FReplicationStateMemberTagDescriptor StateName::sReplicationStateDescriptorMemberTagDescriptors[] = {
 
#define IRIS_TAG_DESCRIPTOR(Tag, MemberIndex)   { Tag, MemberIndex, uint16(~0) },
 
#define IRIS_END_TAG_DESCRIPTOR()   { UE::Net::FRepTag(0) /* UE::Net::GetInvalidRepTag() */, uint16(~0), uint16(~0) } };
 
#define IRIS_BEGIN_FUNCTION_DESCRIPTOR(StateName)   const UE::Net::FReplicationStateMemberFunctionDescriptor StateName::sReplicationStateDescriptorMemberFunctionDescriptors[] = {
 
#define IRIS_FUNCTION_DESCRIPTOR(Function, Descriptor)   { Function, Descriptor },
 
#define IRIS_END_FUNCTION_DESCRIPTOR()   { {} } };
 
#define IRIS_BEGIN_REFERENCE_DESCRIPTOR(StateName)   const UE::Net::FReplicationStateMemberReferenceDescriptor StateName::sReplicationStateDescriptorMemberReferenceDescriptors[] = {
 
#define IRIS_END_REFERENCE_DESCRIPTOR()   { {} } };
 
#define IRIS_BEGIN_MEMBER_DESCRIPTOR(StateName)   const UE::Net::FReplicationStateMemberDescriptor StateName::sReplicationStateDescriptorMemberDescriptors[] = {
 
#define IRIS_MEMBER_DESCRIPTOR(StateName, MemberName, MemberIndex)   { offsetof(StateName, MemberName), UE::Net::Private::GetInternalMemberOffset(sReplicationStateDescriptorMemberDescriptors, StateName ## TypeInfoData, MemberIndex) },
 
#define IRIS_END_MEMBER_DESCRIPTOR()   };
 
#define IRIS_BEGIN_MEMBER_DEBUG_DESCRIPTOR(StateName)   const UE::Net::FReplicationStateMemberDebugDescriptor StateName::sReplicationStateDescriptorMemberDebugDescriptors[] = {
 
#define IRIS_MEMBER_DEBUG_DESCRIPTOR(StateName, MemberDebugName)   { UE::Net::CreatePersistentNetDebugName(TEXT(#MemberDebugName)), },
 
#define IRIS_END_MEMBER_DEBUG_DESCRIPTOR()   };
 
#define IRIS_IMPLEMENT_CONSTRUCT_AND_DESTRUCT(StateName)
 
#define IRIS_IMPLEMENT_REPLICATIONSTATEDESCRIPTOR_WITH_TRAITS(StateName, Traits)
 
#define IRIS_IMPLEMENT_REPLICATIONSTATEDESCRIPTOR(StateName)   IRIS_IMPLEMENT_REPLICATIONSTATEDESCRIPTOR_WITH_TRAITS(StateName, UE::Net::EReplicationStateTraits::None)
 

Functions

constexpr uint32 UE::Net::Private::GetInternalMemberOffset (const FReplicationStateMemberDescriptor *MemberDescriptors, const FInternalTypeInfo *InternalTypeInfo, uint32 MemberIndex)
 
template<typename T >
constexpr uint32 UE::Net::Private::GetInternalStateSize (const T &MemberDescriptors, const FInternalTypeInfo *InternalTypeInfo)
 
template<typename T >
constexpr uint16 UE::Net::Private::GetInternalStateAlignment (const T &MemberDescriptors, const FInternalTypeInfo *InternalTypeInfo)
 
template<typename T >
constexpr uint32 UE::Net::Private::GetMemberChangeMaskSize (const T &MemberChangeMaskDescriptors)
 

Macro Definition Documentation

◆ IRIS_BEGIN_FUNCTION_DESCRIPTOR

◆ IRIS_BEGIN_INTERNAL_TYPE_INFO

#define IRIS_BEGIN_INTERNAL_TYPE_INFO (   StateName)    static const UE::Net::Private::FInternalTypeInfo StateName ## TypeInfoData[] = {

◆ IRIS_BEGIN_MEMBER_DEBUG_DESCRIPTOR

◆ IRIS_BEGIN_MEMBER_DESCRIPTOR

◆ IRIS_BEGIN_REFERENCE_DESCRIPTOR

◆ IRIS_BEGIN_SERIALIZER_DESCRIPTOR

◆ IRIS_BEGIN_TAG_DESCRIPTOR

◆ IRIS_BEGIN_TRAITS_DESCRIPTOR

◆ IRIS_END_FUNCTION_DESCRIPTOR

#define IRIS_END_FUNCTION_DESCRIPTOR ( )    { {} } };

◆ IRIS_END_INTERNAL_TYPE_INFO

#define IRIS_END_INTERNAL_TYPE_INFO ( )    };

◆ IRIS_END_MEMBER_DEBUG_DESCRIPTOR

#define IRIS_END_MEMBER_DEBUG_DESCRIPTOR ( )    };

◆ IRIS_END_MEMBER_DESCRIPTOR

#define IRIS_END_MEMBER_DESCRIPTOR ( )    };

◆ IRIS_END_REFERENCE_DESCRIPTOR

#define IRIS_END_REFERENCE_DESCRIPTOR ( )    { {} } };

◆ IRIS_END_SERIALIZER_DESCRIPTOR

#define IRIS_END_SERIALIZER_DESCRIPTOR ( )    };

◆ IRIS_END_TAG_DESCRIPTOR

#define IRIS_END_TAG_DESCRIPTOR ( )    { UE::Net::FRepTag(0) /* UE::Net::GetInvalidRepTag() */, uint16(~0), uint16(~0) } };

◆ IRIS_END_TRAITS_DESCRIPTOR

#define IRIS_END_TRAITS_DESCRIPTOR ( )    };

◆ IRIS_FUNCTION_DESCRIPTOR

#define IRIS_FUNCTION_DESCRIPTOR (   Function,
  Descriptor 
)    { Function, Descriptor },

◆ IRIS_IMPLEMENT_CONSTRUCT_AND_DESTRUCT

#define IRIS_IMPLEMENT_CONSTRUCT_AND_DESTRUCT (   StateName)
Value:
void Construct##StateName(uint8* StateBuffer, const UE::Net::FReplicationStateDescriptor* Descriptor) { new (StateBuffer) StateName(); } \
void Destruct##StateName(uint8* StateBuffer, const UE::Net::FReplicationStateDescriptor* Descriptor) { StateName* State = reinterpret_cast<StateName*>(StateBuffer); State->~StateName(); }
void Construct(const FArguments &InArgs)
uint8_t uint8
Definition binka_ue_file_header.h:8
Definition ReplicationStateDescriptor.h:199

◆ IRIS_IMPLEMENT_REPLICATIONSTATEDESCRIPTOR

#define IRIS_IMPLEMENT_REPLICATIONSTATEDESCRIPTOR (   StateName)    IRIS_IMPLEMENT_REPLICATIONSTATEDESCRIPTOR_WITH_TRAITS(StateName, UE::Net::EReplicationStateTraits::None)

◆ IRIS_IMPLEMENT_REPLICATIONSTATEDESCRIPTOR_WITH_TRAITS

#define IRIS_IMPLEMENT_REPLICATIONSTATEDESCRIPTOR_WITH_TRAITS (   StateName,
  Traits 
)

◆ IRIS_INTERNAL_TYPE_INFO

◆ IRIS_MEMBER_DEBUG_DESCRIPTOR

#define IRIS_MEMBER_DEBUG_DESCRIPTOR (   StateName,
  MemberDebugName 
)    { UE::Net::CreatePersistentNetDebugName(TEXT(#MemberDebugName)), },

◆ IRIS_MEMBER_DESCRIPTOR

#define IRIS_MEMBER_DESCRIPTOR (   StateName,
  MemberName,
  MemberIndex 
)    { offsetof(StateName, MemberName), UE::Net::Private::GetInternalMemberOffset(sReplicationStateDescriptorMemberDescriptors, StateName ## TypeInfoData, MemberIndex) },

◆ IRIS_SERIALIZER_DESCRIPTOR

◆ IRIS_TAG_DESCRIPTOR

#define IRIS_TAG_DESCRIPTOR (   Tag,
  MemberIndex 
)    { Tag, MemberIndex, uint16(~0) },

◆ IRIS_TRAITS_DESCRIPTOR

#define IRIS_TRAITS_DESCRIPTOR (   Traits)    { Traits },