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

Go to the source code of this file.

Classes

struct  UE::Net::FNetSerializerChangeMaskParam
 
struct  UE::Net::FNetSerializerBaseArgs
 
struct  UE::Net::FNetCollectReferencesArgs
 
struct  UE::Net::FNetSerializeArgs
 
struct  UE::Net::FNetDeserializeArgs
 
struct  UE::Net::FNetSerializeDeltaArgs
 
struct  UE::Net::FNetDeserializeDeltaArgs
 
struct  UE::Net::FNetQuantizeArgs
 
struct  UE::Net::FNetDequantizeArgs
 
struct  UE::Net::FNetIsEqualArgs
 
struct  UE::Net::FNetValidateArgs
 
struct  UE::Net::FNetCloneDynamicStateArgs
 
struct  UE::Net::FNetFreeDynamicStateArgs
 
struct  UE::Net::FNetApplyArgs
 
struct  UE::Net::FNetSerializer
 
class  UE::Net::TNetSerializer< NetSerializerImpl >
 

Namespaces

namespace  UE
 
namespace  UE::Net
 

Macros

#define UE_NET_DECLARE_SERIALIZER(SerializerName, Api)
 
#define UE_NET_IMPLEMENT_SERIALIZER(SerializerName)
 
#define UE_NET_GET_SERIALIZER(SerializerName)   static_cast<const UE::Net::FNetSerializer&>(SerializerName ## NetSerializerInfo::Serializer)
 
#define UE_NET_GET_SERIALIZER_INTERNAL_TYPE_SIZE(SerializerName)   SerializerName ## NetSerializerInfo::GetQuantizedTypeSize()
 
#define UE_NET_GET_SERIALIZER_INTERNAL_TYPE_ALIGNMENT(SerializerName)   SerializerName ## NetSerializerInfo::GetQuantizedTypeAlignment()
 
#define UE_NET_GET_SERIALIZER_DEFAULT_CONFIG(SerializerName)   SerializerName ## NetSerializerInfo::GetDefaultConfig()
 

Typedefs

typedef UPTRINT UE::Net::NetSerializerValuePointer
 
typedef const FNetSerializerConfigUE::Net::NetSerializerConfigParam
 
typedef void(* UE::Net::NetCollectNetReferencesFunction) (FNetSerializationContext &, const FNetCollectReferencesArgs &)
 
typedef void(* UE::Net::NetSerializeFunction) (FNetSerializationContext &, const FNetSerializeArgs &)
 
typedef void(* UE::Net::NetDeserializeFunction) (FNetSerializationContext &, const FNetDeserializeArgs &)
 
typedef void(* UE::Net::NetSerializeDeltaFunction) (FNetSerializationContext &, const FNetSerializeDeltaArgs &)
 
typedef void(* UE::Net::NetDeserializeDeltaFunction) (FNetSerializationContext &, const FNetDeserializeDeltaArgs &)
 
typedef void(* UE::Net::NetQuantizeFunction) (FNetSerializationContext &, const FNetQuantizeArgs &)
 
typedef void(* UE::Net::NetDequantizeFunction) (FNetSerializationContext &, const FNetDequantizeArgs &)
 
typedef bool(* UE::Net::NetIsEqualFunction) (FNetSerializationContext &, const FNetIsEqualArgs &)
 
typedef bool(* UE::Net::NetValidateFunction) (FNetSerializationContext &, const FNetValidateArgs &)
 
typedef void(* UE::Net::NetCloneDynamicStateFunction) (FNetSerializationContext &, const FNetCloneDynamicStateArgs &)
 
typedef void(* UE::Net::NetFreeDynamicStateFunction) (FNetSerializationContext &, const FNetFreeDynamicStateArgs &)
 
typedef void(* UE::Net::NetApplyFunction) (FNetSerializationContext &, const FNetApplyArgs &)
 

Enumerations

enum class  UE::Net::ENetSerializerTraits : uint32 {
  UE::Net::None = 0U , UE::Net::IsForwardingSerializer = 1U << 0U , UE::Net::HasDynamicState = IsForwardingSerializer << 1U , UE::Net::HasConnectionSpecificSerialization = HasDynamicState << 1U ,
  UE::Net::HasCustomNetReference = HasConnectionSpecificSerialization << 1U , UE::Net::UseSerializerIsEqual = HasCustomNetReference << 1U , UE::Net::HasApply = UseSerializerIsEqual << 1U
}
 

Functions

 UE::Net::ENUM_CLASS_FLAGS (ENetSerializerTraits)
 

Macro Definition Documentation

◆ UE_NET_DECLARE_SERIALIZER

#define UE_NET_DECLARE_SERIALIZER (   SerializerName,
  Api 
)
Value:
{ \
static const UE::Net::FNetSerializer Serializer; \
static uint32 GetQuantizedTypeSize(); \
static uint32 GetQuantizedTypeAlignment(); \
static const FNetSerializerConfig* GetDefaultConfig(); \
};
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
uint32_t uint32
Definition binka_ue_file_header.h:6
Definition NetSerializerConfig.h:17
Definition NetSerializer.h:377

Declare a serializer.

◆ UE_NET_GET_SERIALIZER

#define UE_NET_GET_SERIALIZER (   SerializerName)    static_cast<const UE::Net::FNetSerializer&>(SerializerName ## NetSerializerInfo::Serializer)

Retrieve a const reference to a named serializer.

◆ UE_NET_GET_SERIALIZER_DEFAULT_CONFIG

#define UE_NET_GET_SERIALIZER_DEFAULT_CONFIG (   SerializerName)    SerializerName ## NetSerializerInfo::GetDefaultConfig()

Retrieve the default config, if present, for a serializer.

◆ UE_NET_GET_SERIALIZER_INTERNAL_TYPE_ALIGNMENT

#define UE_NET_GET_SERIALIZER_INTERNAL_TYPE_ALIGNMENT (   SerializerName)    SerializerName ## NetSerializerInfo::GetQuantizedTypeAlignment()

Retrieve the quantized state alignment for a serializer.

◆ UE_NET_GET_SERIALIZER_INTERNAL_TYPE_SIZE

#define UE_NET_GET_SERIALIZER_INTERNAL_TYPE_SIZE (   SerializerName)    SerializerName ## NetSerializerInfo::GetQuantizedTypeSize()

Retrieve the quantized state size for a serializer.

◆ UE_NET_IMPLEMENT_SERIALIZER

#define UE_NET_IMPLEMENT_SERIALIZER (   SerializerName)
Value:
uint32 SerializerName ## NetSerializerInfo::GetQuantizedTypeSize() { return UE::Net::TNetSerializerBuilder<SerializerName>::GetQuantizedTypeSize(); }; \
uint32 SerializerName ## NetSerializerInfo::GetQuantizedTypeAlignment() { return UE::Net::TNetSerializerBuilder<SerializerName>::GetQuantizedTypeAlignment(); }; \
const FNetSerializerConfig* SerializerName ## NetSerializerInfo::GetDefaultConfig() { return UE::Net::TNetSerializerBuilder<SerializerName>::GetDefaultConfig(); };
#define TEXT(x)
Definition Platform.h:1272
static const FNetSerializerConfig * GetDefaultConfig()
Definition NetSerializerBuilder.inl:421
static constexpr uint32 GetQuantizedTypeAlignment()
Definition NetSerializerBuilder.inl:449
static constexpr uint32 GetQuantizedTypeSize()
Definition NetSerializerBuilder.inl:440
static constexpr FNetSerializer ConstructNetSerializer(const TCHAR *Name)
Definition NetSerializer.h:413

Implement a serializer using the struct named SerializerName.