| ISocketSubsystem
|
Module |
|
Header |
/Engine/Source/Runtime/Sockets/Public/SocketSubsystem.h |
Include |
#include "SocketSubsystem.h" |
class ISocketSubsystem
This is the base interface to abstract platform specific sockets API differences.
Name | Description | |
---|---|---|
|
~ISocketSubsystem() |
Name | Description | ||
---|---|---|---|
|
void |
AddHostNameToCache ( |
Stores the ip address with the matching host name |
|
int32 |
BindNextPort ( |
Bind to next available port. |
|
TSharedRef< ... |
CreateInternetAddr ( |
Create a FInternetAddr of the desired protocol |
|
TSharedRef< ... |
CreateInternetAddr() |
Create a proper FInternetAddr representation |
|
TUniquePtr< ... |
CreateRecvMulti ( |
Create a platform specific FRecvMulti representation |
|
FResolveInfo... |
CreateResolveInfoCached ( |
Creates a resolve info cached struct to hold the resolved address |
|
FSocket *... |
CreateSocket |
Creates a socket using the given protocol name. |
|
FSocket *... |
CreateSocket |
Creates a socket SocketType type of socket to create (DGram, Stream, etc) |
|
FUniqueSocke... |
CreateUniqueSocket |
Creates a socket using the given protocol name, wrapped in a unique pointer that will call DestroySocket automatically - do not call it explicitly! This SocketSubsystem must also outlive the sockets it creates. |
|
FUniqueSocke... |
CreateUniqueSocket |
Creates a socket wrapped in a unique pointer that will call DestroySocket automatically - do not call it explicitly! This SocketSubsystem must also outlive the sockets it creates. |
|
void |
DestroySocket ( |
Cleans up a socket class |
|
ISocketSubsy... |
Get ( |
Get the singleton socket subsystem for the given named subsystem |
|
TSharedPtr< ... |
GetAddressFromString ( |
Serializes a string that only contains an address. |
|
FAddressInfo... |
GetAddressInfo ( |
Gets the address information of the given hostname and outputs it into an array of resolvable addresses. |
|
void |
GetAddressInfoAsync ( |
Async variant of GetAddressInfo that fetches the data from the above function in an asynchronous task executed on an available background thread. |
|
FResolveInfo... |
GetHostByName ( |
Creates a platform specific async hostname resolution object |
|
bool |
GetHostByNameFromCache ( |
Checks the host name cache for an existing entry (faster than resolving again) |
|
bool |
GetHostName ( |
Determines the name of the local machine |
|
ESocketError... |
GetLastErrorCode() |
Returns the last error that has happened |
|
bool |
GetLocalAdapterAddresses ( |
Gets the list of addresses associated with the adapters on the local computer. |
|
TSharedRef< ... |
GetLocalBindAddr ( |
Get a local IP to bind to. |
|
GetLocalBindAddresses() |
Get bindable addresses that this machine can use as reported by GetAddressInfo with the BindableAddress flag. |
|
|
TSharedRef< ... |
GetLocalHostAddr ( |
Uses the platform specific look up to determine the host address |
|
bool |
GetMultihomeAddress ( |
Returns the multihome address if the flag is present and valid. |
|
ESocketProto... |
GetProtocolFamilyFromName ( |
Conversion functions from the SocketProtocolFamily enum to the new FName system. |
|
GetProtocolNameFromFamily ( |
||
|
const TCHAR ... |
GetSocketAPIName() |
Get the name of the socket subsystem |
|
const TCHAR ... |
GetSocketError ( |
Returns a human readable string from an error code |
|
bool |
HasNetworkDevice() |
|
|
bool |
Init ( |
Does per platform initialization of the sockets library |
|
bool |
IsRecvFromWithPktInfoSupported() |
Returns true if FSocket::RecvFromWithPktInfo is supported by this socket subsystem. |
|
bool |
IsSocketRecvMultiSupported() |
Returns true if FSocket::RecvMulti is supported by this socket subsystem |
|
bool |
IsSocketWaitSupported() |
Returns true if FSocket::Wait is supported by this socket subsystem. |
|
void |
RemoveHostNameFromCache ( |
Removes the host name to ip mapping from the cache |
|
bool |
RequiresChatDataBeSeparate() |
Some platforms require chat data (voice, text, etc.) to be placed into packets in a special way. |
|
bool |
RequiresEncryptedPackets() |
Some platforms require packets be encrypted. |
|
void |
Shutdown() |
Performs platform specific socket clean up |
|
void |
ShutdownAllSystems() |
Shutdown all registered subsystems |
|
ESocketError... |
TranslateErrorCode ( |
Translates the platform error code to a ESocketErrors enum |
|
double |
TranslatePacketTimestamp ( |
Converts a platform packet timestamp, into a local timestamp, or into a time delta etc. |
Name | Description | ||
---|---|---|---|
|
TSharedRef< ... |
CreateInternetAddr ( |
To support different address sizes, use CreateInternetAddr with no arguments and call SetIp/SetRawIp and SetPort on the returned object |
|
FSocket *... |
CreateSocket |
Use the CreateSocket with the FName parameter for support for multiple protocol types. |
|
FAddressInfo... |
GetAddressInfo ( |
Migrate to GetAddressInfo that takes an FName as the protocol specification. |
|
ESocketError... |
GetHostByName ( |
Please use GetAddressInfo to query hostnames |