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

Go to the source code of this file.

Namespaces

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

Macros

#define IRIS_DECLARE_COMMON()
 
#define IRIS_ACCESS_BY_VALUE(MemberName, MemberType, MemberIndex)
 
#define IRIS_ACCESS_BY_REFERENCE(MemberName, MemberType, MemberIndex)
 

Macro Definition Documentation

◆ IRIS_ACCESS_BY_REFERENCE

#define IRIS_ACCESS_BY_REFERENCE (   MemberName,
  MemberType,
  MemberIndex 
)
Value:
void Set##MemberName(const MemberType& Value) { if (MemberName != Value) { SetDirty(sReplicationStateChangeMaskDescriptors[MemberIndex]); } MemberName = Value; } \
const MemberType& Get##MemberName() const { return MemberName; } \
bool Is##MemberName##Dirty() const { return IsDirty(sReplicationStateChangeMaskDescriptors[MemberIndex]); }
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
FORCEINLINE T * Get(const FObjectPtr &ObjectPtr)
Definition ObjectPtr.h:426

◆ IRIS_ACCESS_BY_VALUE

#define IRIS_ACCESS_BY_VALUE (   MemberName,
  MemberType,
  MemberIndex 
)
Value:
void Set##MemberName(MemberType Value) { if (MemberName != Value) { SetDirty(sReplicationStateChangeMaskDescriptors[MemberIndex]); } MemberName = Value; } \
MemberType Get##MemberName() const { return MemberName; } \
bool Is##MemberName##Dirty() const { return IsDirty(sReplicationStateChangeMaskDescriptors[MemberIndex]); }

◆ IRIS_DECLARE_COMMON

#define IRIS_DECLARE_COMMON ( )
Value:
private: \
UE::Net::FNetBitArrayView::StorageWordType ChangeMask[UE::Net::Private::CalculateWordCountForChangeMask(sReplicationStateChangeMaskDescriptors)] = { }; \
\
/* helpers, should do special methods for this with no safety at all since this will be generated. Single bitcase should be as fast as possible */ \
bool IsDirty(const UE::Net::FReplicationStateMemberChangeMaskDescriptor& Bits) const { const UE::Net::FNetBitArrayView Mask(const_cast<UE::Net::FNetBitArrayView::StorageWordType*>(&ChangeMask[0]), sReplicationStateDescriptor.ChangeMaskBitCount); return Mask.GetBit(Bits.BitOffset); } \
public: \
static const UE::Net::FReplicationStateDescriptor* GetReplicationStateDescriptor() { return &sReplicationStateDescriptor; }
uint32 StorageWordType
Definition NetBitArray.h:50
Definition NetBitArray.h:337
@ Bits
Definition PacketView.h:34
void MarkDirty(UE::Net::FReplicationStateHeader &InternalState, FNetBitArrayView &MemberChangeMask, const FReplicationStateMemberChangeMaskDescriptor &ChangeMaskInfo)
Definition ReplicationStateUtil.h:76
Definition ReplicationStateDescriptor.h:199
Definition ReplicationStateFwd.h:20
Definition ReplicationStateDescriptor.h:77
Definition ReplicationStateDescriptor.h:112
Definition ReplicationStateDescriptor.h:30
Definition ReplicationStateDescriptor.h:70
Definition ReplicationStateDescriptor.h:101
Definition ReplicationStateDescriptor.h:37
Definition ReplicationStateDescriptor.h:61
Definition ReplicationStateDescriptor.h:56