Navigation
Unreal Engine C++ API Reference > Runtime > PacketHandler
References
Module | PacketHandler |
Header | /Engine/Source/Runtime/PacketHandlers/PacketHandler/Public/PacketHandler.h |
Include | #include "PacketHandler.h" |
Syntax
class PacketHandler
Remarks
This class maintains an array of all PacketHandler Components and forwards incoming and outgoing packets the each component
Variables
Type | Name | Description | |
---|---|---|---|
![]() |
UE::Handler::Mode | Mode | Mode of the handler, Client or Server |
Constructors
Type | Name | Description | |
---|---|---|---|
![]() |
PacketHandler
(
FDDoSDetection* InDDoS |
Base constructorPacketHandler |
Destructors
Type | Name | Description | |
---|---|---|---|
![]() ![]() |
Functions
Type | Name | Description | |
---|---|---|---|
![]() |
TSharedPtr< HandlerComponent > | AddHandler
(
const FString& ComponentStr, |
As above, but initializes from a string specifying the component module, and (optionally) additional options |
![]() |
void | AddHandler
(
TSharedPtr< HandlerComponent >& NewHandler, |
Adds a HandlerComponent to the pipeline, prior to initialization (none can be added after initialization) |
![]() |
void | BeginHandshaking
(
FPacketHandlerHandshakeComplete InHandshakeDel |
Triggered by the higher level netcode, to begin any required HandlerComponent handshakes |
![]() ![]() ![]() |
void | CountBytes
(
FArchive& Ar |
|
![]() ![]() |
bool | DoesAnyProfileHaveComponent
(
const FString& InComponentName |
Searches the PacketHandler profile configurations to find if a component is listed. |
![]() ![]() |
bool | DoesProfileHaveComponent
(
const FName InNetDriverName, |
Searches the PacketHandler profile configuration for the given netdriver to find if a component is listed. |
![]() ![]() |
FPacketHandlerAddComponentByNameDelegate & | ||
![]() ![]() |
FPacketHandlerAddComponentDelegate & | ||
![]() ![]() |
TSharedPtr< FNetAnalyticsAggregator > | Returns the analytics aggregator | |
![]() ![]() |
TSharedPtr< HandlerComponent > | GetComponentByName
(
FName ComponentName |
Returns a pointer to the first component in the HandlerComponents array with the specified name. |
![]() ![]() |
FDDoSDetection * | GetDDoS () |
Returns a pointer to the DDoS detection handler |
![]() |
TSharedPtr< FEncryptionComponent > | Returns a pointer to the component set as the encryption handler, if any. | |
![]() ![]() |
TSharedPtr< IAnalyticsProvider > | GetProvider () |
Returns the analytics provider |
![]() |
BufferedPacket * | Gets a packet from the buffered connectionless packet queue for sending | |
![]() |
BufferedPacket * | Gets a packet from the buffered packet queue for sending | |
![]() |
BufferedPacket * | Gets a packet from the buffered packet queue for sending (as a raw packet) | |
![]() |
bool | GetRawSend () |
Whether or not raw packet sends are enabled |
![]() |
int32 | Gets the combined reserved packet/protocol bits from all handlers, for reserving space in the parent connections packets | |
![]() |
void | HandlerComponentInitialized
(
HandlerComponent* InComponent |
Triggered when a child HandlerComponent has been initialized |
![]() |
EIncomingResult | Incoming
(
FReceivedPacketView& PacketView |
Processes incoming packets at the PacketHandler level, before any UNetConnection processing takes place on the packet. |
![]() |
EIncomingResult | Incoming_Internal
(
FReceivedPacketView& PacketView |
Internal handling for Incoming/IncomingConnectionless |
![]() |
EIncomingResult | IncomingConnectionless
(
FReceivedPacketView& PacketView |
Processes incoming packets without a UNetConnection, in the same manner as 'Incoming' above IMPORTANT: Net drivers triggering this, should call 'UNetDriver::FlushHandler' shortly afterwards, to minimize packet buffering NOTE: Connectionless packets are unreliable. |
![]() |
void | IncomingHigh
(
FBitReader& Reader |
Processes incoming packets at the UNetConnection level, after uncapping the packet into an FBitReader. |
![]() |
void | InitFaultRecovery
(
UE::Net::FNetConnectionFaultRecoveryBase* InFaultRecovery |
Initializes a reference to the NetConnection fault recovery interface (does not require Engine dependency) |
![]() |
void | Initialize
(
UE::Handler::Mode Mode, |
Handles initialization of manager |
![]() |
void | Triggers initialization of HandlerComponents. | |
![]() |
void | InitializeDelegates
(
FPacketHandlerLowLevelSendTraits InLowLevelSendDel, |
Used for external initialization of delegates |
![]() |
bool | Whether or not the packet handler is fully initialized, post-handshake etc. | |
![]() |
void | NotifyAnalyticsProvider
(
TSharedPtr< IAnalyticsProvider > InProvider, |
Notification that the NetDriver analytics provider has been updated (NOT called on first initialization) NOTE: Can also mean disabled, e.g. during hotfix |
![]() |
const ProcessedPacket | Outgoing
(
uint8* Packet, |
Processes outgoing packets at the PacketHandler level, after all UNetConnection processing. |
![]() |
const ProcessedPacket | Outgoing_Internal
(
uint8* Packet, |
Internal handling for Outgoing/OutgoingConnectionless |
![]() |
const ProcessedPacket | OutgoingConnectionless
(
const TSharedPtr< const FInternetAddr >& Address, |
Processes outgoing packets without a UNetConnection, in the same manner as 'Outgoing' above NOTE: Connectionless packets are unreliable. |
![]() |
void | OutgoingHigh
(
FBitWriter& Writer |
Processes outgoing packets at the UNetConnection level, after game data is written, and just before the packet is capped. |
![]() |
void | QueueHandlerPacketForSending
(
BufferedPacket* PacketToQueue |
Queue's a packet to be sent through 'SendHandlerPacket' |
![]() |
void | QueuePacketForRawSending
(
BufferedPacket* PacketToQueue |
Queue's a packet to be sent when the handler is ticked (as a raw packet, since it's already been processed) |
![]() |
void | SendHandlerPacket
(
HandlerComponent* InComponent, |
Send a packet originating from a HandlerComponent - will process through the HandlerComponents chain, starting after the triggering component. |
![]() |
void | SetRawSend
(
bool bInEnabled |
Sets whether or not outgoing packets should bypass this handler - used when raw packet sends are necessary (such as for the stateless handshake) |
![]() |
void | Tick
(
float DeltaTime |
Deprecated Functions
Type | Name | Description | |
---|---|---|---|
![]() |
const ProcessedPacket | Incoming
(
uint8* Packet, |
Incoming now uses FReceivedPacketView. |
![]() |
const ProcessedPacket | Incoming_Internal
(
uint8* Packet, |
Incoming_Internal now uses FReceivedPacketView |
![]() |
const ProcessedPacket | IncomingConnectionless
(
const TSharedPtr< const FInternetAddr >& Address, |
IncomingConnectionless now uses FReceivedPacketView. |