Navigation
| Name | NetCore |
| Type | Runtime |
| Location | /Engine/Source/Runtime/Net/Core/ |
| Module Build Rules | NetCore.Build.cs |
Classes
| Name | Remarks |
|---|---|
| FBinnedMovingValueBase | Base class for moving values, implementing non-templatized data-structure/methods. |
| FConnectionHandle | The handle is unique per netdriver. |
| FDDoSDetection | The main DDoS detection tracking class, for counting packets and applying restrictions. |
| FEscalationManager | Manages initialization/application of escalation states, and tracking various counters/timers used to calculate state change quotas/thresholds. |
| FGlobalDirtyNetObjectTracker | |
| FGuidReferences | References to Objects (including Actors, Components, etc.) are replicated as NetGUIDs, since the literal memory pointers will be different across game instances. |
| FNetAnalyticsAggregator | Central object (usually within NetDriver) which handles registration/retrieval/type-checking of net analytics data holders. |
| FNetBitArray | Simple bit array with internal storage. |
| FNetBitArrayBase | |
| FNetBitArrayHelper | FNetBitArrayHelper Implementation helper |
| FNetBitArrayPrinter | FNetBitArrayPrinter utility class Collection of helper functions that can describe any given BitArray into a string for logging or debugging purposes |
| FNetBitArrayRangedForConstIterator | FNetBitArrayRangedForConstIterator. |
| FNetBitArrayView | Simple bit array view. |
| FNetConditionGroupManager | Manage the membership of subobject's replicated with a COND_NetGroup condition. |
| FNetConnectionFaultRecoveryBase | Implements the base/public interface for FNetConnectionFaultRecovery - defined here, to eliminate the need for Engine dependencies. |
| FNetConnectionFaultRecoveryBaseFixLayout | Hacky base class to avoid 8 bytes of padding after the vtable. |
| FNetContext | Stateless class that provides misc network context information |
| FNetFastTArrayBaseState | Custom INetDeltaBaseState used by Fast Array Serialization |
| FNetHandle | FNetHandle can be used to uniquely identify a replicated object for the lifetime of the application. |
| FNetHandleDestroyer | This class restricts access to DestroyNetHandle functionality as early destruction prevents further dirty state tracking. |
| FNetHandleManager | Manages the association between a UObject and a FNetHandle, which can be used to uniquely identify a replicated object for the lifetime of the application. |
| FNetPropertyConditionManager | |
| FNetResultHandler | Net Result Handler |
| FNetResultManager | Net Result Manager |
| FNetTimer | |
| FNetToken | |
| FNetTokenExportContext | Contains necessary context to export NetTokens. |
| FNetTokenExportScope | Simple scope to make sure we set the correct ExportContext and restore the old one when we exit the scope. |
| FNetTokenResolveContext | Contains necessary context to resolve NetTokens. |
| FPacketAudit | FPacketAudit |
| FPropertyConditionDelegates | |
| FRepChangedPropertyTracker | This class is used to store meta data about properties that is shared between connections, including whether or not a given property is Conditional, Active, and any external data that may be needed for Replays. |
| FRPCDoSAnalyticsSender | Class which is responsible for sending the actual analytics events (for implementation outside of NetCore, to avoid Analytics dependency) |
| FRPCDoSDetection | RPC DoS detection |
| FSampleMinMaxAvg | Base class for tracking the minimum, maximum and average of the passed in measurement values. |
| FScopedNetContextRPC | Used by friendly class to set the right network context |
| FUsingNetStatsUtils | Class level 'using namespace UE::Net', for NetStatsUtils.h types. Inherit as protected. |
| TBinnedDeltaMovingValue | Version of TBinnedMovingValue which takes permanently incrementing values (e.g. frame count), and uses the delta since the previous value as the measurement (this means the very first value is not measured). |
| TBinnedMovingValue | Tracks/stores a moving average or moving sum over a period of time, binning the accumulated values into different time periods, for smoothing and balancing the memory/accuracy cost of dropping old values as they fall out of the measured time period. |
| TEscalationManager | Manages initialization/application of escalation states for the specified escalation state type, and allocation/tracking of the specified counters/timers used to calculate state change quotas/thresholds. |
| TFastArrayTypeHelper | ===================== Fast TArray Replication ===================== |
| TResizableCircularQueue | Simple ResizableCircularQueue. |
| TSampleMinMaxAvg | Writable subclass of FSampleMinMaxAvg. |
| TSampleProducer | Inherited class for a sample producer, which outputs samples to a consumer of the specified class. |
| UEscalationManagerConfig | Base class for defining escalation state configuration. |
| UNetAnalyticsAggregatorConfig | Configuration for FNetAnalyticsAggregator - loaded PerObjectConfig, for each NetDriverName |
| UStatePerObjectConfig | Base class for loading and initializing state configuration |
Structs
| Name | Remarks |
|---|---|
| FActiveRPCTrackingInfo | Stores a reference to active/valid FRPCTrackingInfo entries, for occasional cleanup. |
| FDDoSPacketCounters | Struct containing the per-second packet counters |
| FDDoSState | Stores the DDoS detection state (either settings from the config file, or the active DDoS detection state) |
| FDDoSStateConfig | DDoS detection state, with functions for applying the state to active DDoS detection |
| FEscalationCounter | Struct containing escalation counters covering any time period (e.g. frame/second/arbitrary-period) |
| FEscalationState | Base struct which defines an escalation state, which is subclassed to implement custom state variables and (de-)escalation quota's. |
| FFastArrayDeltaSerializeParams | |
| FFastArraySerializer | Base struct for wrapping the array used in Fast TArray Replication |
| FFastArraySerializer_FastArrayDeltaSerialize_FIdxIDPair | Struct used only in FFastArraySerializer::FastArrayDeltaSerialize, however, declaring it within the templated function causes crashes on some clang compilers |
| FFastArraySerializerGuidReferences | Struct for holding guid references |
| FFastArraySerializerItem | Base struct for items using Fast TArray Replication |
| FHasHitAnyQuotaParms | Parameters for FEscalationState.HasHitAnyQuota |
| FLocalNetAnalyticsStruct | For use with TThreadedNetAnalyticsData - this struct is subclassed, and used to define/hold the analytics variables, that will be tracked/aggregated. |
| FMaxRPCDoSEscalation | Per-player tracking of the maximum RPC DoS escalation state |
| FNetAnalyticsData | Subclassed struct which holds net analytics data which is aggregated or to-be-aggregated, and dispatched upon SendAnalytics |
| FNetAnalyticsDataConfig | Configuration for FNetAnalyticsData - enabling/disabling analytics data, based on DataName |
| FNetAnalyticsDataDeleter | Custom deleter for FNetAnalyticsData shared pointers |
| FNetDebugName | |
| FNetFaultState | Generic escalation state definition used to implement attempted recovery from faults/errors in the NetConnection level netcode. |
| FNetResult | Base/non-templatized implementation for TNetResult |
| FReplicatedComponentInfo | Keep track of replicated components and their subobject list |
| FRPCAnalytics | Per-RPC analytics for any RPC Tracking that is active within the RPC DoS Detection instance. |
| FRPCDoSAnalyticsData | RPC DoS Detection implementation for basic aggregated net analytics data |
| FRPCDoSAnalyticsVars | Container class for separating analytics variables and processing, from the main RPC DoS Detection code |
| FRPCDoSCounters | Struct containing RPC counters covering any time period (e.g. frame/second/arbitrary-period) |
| FRPCDoSState | Stores the RPC DoS detection state (either settings from the config file, or the active DDoS detection state) |
| FRPCDoSStateConfig | Configuration for RPC DoS Detection states |
| FRPCTrackingInfo | Live tracking information for individual RPC's, for timing of RPC's, analytics, and handling blocking |
| FStateConfigParms | Parameters for creating/getting and initializing a new UStatePerObjectConfig instance |
| FStateStruct | Base struct used for states, which is subclassed to define/implement custom states. |
| FSubObjectRegistry | Stores the SubObjects to replicate and the network condition dictating to which connection they can replicate to. |
| TBasicNetAnalyticsData | Basic single-threaded-only (i.e. good for NetConnection level code) analytics data holder, which just wraps around a simple struct, which defines the analytics variables and implements their aggregation. |
| TEscalationStateStatics | Static interface which FEscalateState subclasses must implement (called during construction, so virtuals won't do) |
| TNetResult | Generic result struct for Network Results (e.g. Close and failures) - partially adapted from FOnlineError/FResult. |
Typedefs
| Name | Type | Remarks | Include Path |
|---|---|---|---|
| FDDoSSeverityEscalation | TBaseDelegate_OneParam< void, FString > | Delegate for allowing analytics to receive notification of detected DDoS attacks | Net/Core/Misc/DDoSDetection.h |
| FGetRPCDoSAddress | TUniqueFunction< FString()> | Callback usually passed in by the NetConnection, for getting the address of the owning connection | Net/Core/Connection/RPCDoSDetection.h |
| FGetRPCDoSPlayerUID | TUniqueFunction< FString()> | Callback usually passed in by the NetConnection, for getting the unique id of the owning player/connection | Net/Core/Connection/RPCDoSDetection.h |
| FGuidReferencesMap | TMap< int32, FGuidReferences > | Net/Core/Misc/GuidReferences.h | |
| FModifyRPCDoSAnalytics | TMulticastDelegate_TwoParams< void, UObject *, TArray< FAnalyticsEventAttribute > & > | Multicast delegate for modifying/adding-to RPC DoS analytics events. | Net/Core/Analytics/RPCDoSDetectionAnalytics.h |
| FRPCDoSKickPlayer | TUniqueFunction< void()> | Callback usually passed in by the NetConection, for kicking the player after exceeding RPC DoS kick thresholds | Net/Core/Connection/RPCDoSDetection.h |
| TNetAnalyticsDataPtr | TSharedPtr< T, NetAnalyticsThreadSafety > | Net/Core/Analytics/NetAnalytics.h | |
| TNetAnalyticsDataRef | TSharedRef< T, NetAnalyticsThreadSafety > | Typedefs. | Net/Core/Analytics/NetAnalytics.h |
| TNetAnalyticsDataWeakPtr | TWeakPtr< T, NetAnalyticsThreadSafety > | Net/Core/Analytics/NetAnalytics.h |
Enums
Public
| Name | Remarks |
|---|---|
| EFastArraySerializerDeltaFlags | |
| EInitStateDefaultsResult | State Structs |
| ENetCloseResult | Network Close results (can occur before NetDriver/NetConnection creation, and can be success or error) |
| ENetTraceVerbosity::Type | |
| ENetworkFailure::Type | Types of network failures broadcast from the engine |
| EPostSequentialRPCType | The type of a call to PostSequentialRPC |
| EQuotaType | The type of state change quota/thresholds to check |
| EReplicationSystem | |
| ERPCBlockState | The status of blocking for an individual RPC |
| ERPCDoSEscalateReason | The reason for an RPC DoS severity update |
| ERPCDoSSeverityUpdate | RPC DoS escalation severity update types |
| ERPCNotifyResult | Result of NotifyReceivedRPC, for specifying whether the RPC should execute or should be blocked |
| ESecurityEvent::Type | (DEPRECATED) Security event types used for UE_SECURITY_LOG |
Variables
Public
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| GModifyRPCDoSAnalytics | FModifyRPCDoSAnalytics | Globally accessible multicast delegate, for modifying/adding-to the RPC DoS analytics event | Net/Core/Analytics/RPCDoSDetectionAnalytics.h | |
| GModifyRPCDoSEscalationAnalytics | FModifyRPCDoSAnalytics | Globally accessible multicast delegate, for modifying/adding-to the RPC DoS escalation analytics event | Net/Core/Analytics/RPCDoSDetectionAnalytics.h | |
| GNetAnalyticsCounter | TAtomic< uint8 > | Counter used to detect when a new FNetAnalyticsAggregator (i.e. new NetDriver) has been created - to trigger cleanup of TLS data | Net/Core/Analytics/NetAnalytics.h | |
| GPacketAuditor | FPacketAudit * | The handler for managing packet auditing |
Globals | Net/Core/Misc/PacketAudit.h | |
| GUseDetailedScopeCounters | bool | Net/Core/NetCoreModule.h | ||
| NetAnalyticsThreadSafety | const ESPMode | Net/Core/Analytics/NetAnalytics.h | ||
| NetTraceInvalidGameInstanceId | const uint32 | Net/Core/Trace/NetTraceConfig.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
DECLARE_NETRESULT_ENUM
(
ENetCloseResult |
Net/Core/Connection/NetCloseResult.h | ||
const TCHAR * ENetworkFailure::ToString
(
ENetworkFailure::Type FailureType |
Net/Core/Connection/NetEnums.h | ||
const TCHAR * ESecurityEvent::ToString
(
const ESecurityEvent::Type EnumVal |
Net/Core/Connection/NetEnums.h | ||
ENetCloseResult FromNetworkFailure
(
ENetworkFailure::Type Val |
Converts from ENetworkFailure to ENetCloseResult | Net/Core/Connection/NetCloseResult.h | |
ENetCloseResult FromSecurityEvent
(
ESecurityEvent::Type Val |
Converts from ESecurityEvent to ENetCloseResult | Net/Core/Connection/NetCloseResult.h | |
const TCHAR * LexToString
(
ENetCloseResult Enum |
Net/Core/Connection/NetCloseResult.h | ||
bool operator!
(
EFastArraySerializerDeltaFlags E |
Net/Serialization/FastArraySerializer.h | ||
EFastArraySerializerDeltaFlags operator&
(
EFastArraySerializerDeltaFlags Lhs, |
Net/Serialization/FastArraySerializer.h | ||
EFastArraySerializerDeltaFlags & operator&=
(
EFastArraySerializerDeltaFlags& Lhs, |
Net/Serialization/FastArraySerializer.h | ||
EFastArraySerializerDeltaFlags operator^
(
EFastArraySerializerDeltaFlags Lhs, |
Net/Serialization/FastArraySerializer.h | ||
EFastArraySerializerDeltaFlags & operator^=
(
EFastArraySerializerDeltaFlags& Lhs, |
Net/Serialization/FastArraySerializer.h | ||
EFastArraySerializerDeltaFlags operator|
(
EFastArraySerializerDeltaFlags Lhs, |
Net/Serialization/FastArraySerializer.h | ||
EFastArraySerializerDeltaFlags & operator|=
(
EFastArraySerializerDeltaFlags& Lhs, |
Net/Serialization/FastArraySerializer.h | ||
EFastArraySerializerDeltaFlags operator~
(
EFastArraySerializerDeltaFlags E |
Net/Serialization/FastArraySerializer.h | ||
const TCHAR * ToCStr
(
const UE::Net::FNetDebugName* DebugName |
Net/Core/Trace/NetDebugName.h | ||
ENetworkFailure::Type ToNetworkFailure
(
ENetCloseResult Val |
Converts from ENetCloseResult to ENetworkFailure | Net/Core/Connection/NetCloseResult.h |
Static
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
static int32 TBinParms::NumBins
(
int32 InNumBins |
Net/Core/Analytics/NetStatsUtils.h | ||
static double TBinParms::TimePerBin
(
double InBinSize |
Net/Core/Analytics/NetStatsUtils.h | ||
static int32 TSampleParms::TimeSeconds
(
int32 InTimeSeconds |
Net/Core/Analytics/NetStatsUtils.h |