steam_gns.types

Transcription of steamnetworkingtypes.h to D.

Translated by hand, based on v1.3.0 6be41e3

Members

Aliases

FSteamNetworkingSocketsDebugOutput
alias FSteamNetworkingSocketsDebugOutput = void function(ESteamNetworkingSocketsDebugOutputType nType, const char* pszMsg)

Setup callback for debug output, and the desired verbosity you want.

FnSteamNetAuthenticationStatusChanged
alias FnSteamNetAuthenticationStatusChanged = void function(SteamNetAuthenticationStatus_t*)
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.
FnSteamNetConnectionStatusChanged
alias FnSteamNetConnectionStatusChanged = void function(SteamNetConnectionStatusChangedCallback_t*)
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.
FnSteamNetworkingFakeIPResult
alias FnSteamNetworkingFakeIPResult = void function(SteamNetworkingFakeIPResult_t*)
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.
FnSteamNetworkingMessagesSessionFailed
alias FnSteamNetworkingMessagesSessionFailed = void function(SteamNetworkingMessagesSessionFailed_t*)
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.
FnSteamNetworkingMessagesSessionRequest
alias FnSteamNetworkingMessagesSessionRequest = void function(SteamNetworkingMessagesSessionRequest_t*)
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.
FnSteamRelayNetworkStatusChanged
alias FnSteamRelayNetworkStatusChanged = void function(SteamRelayNetworkStatus_t*)
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.
HSteamListenSocket
alias HSteamListenSocket = uint

Handle used to identify a "listen socket". Unlike traditional Berkeley sockets, a listen socket and a connection are two different abstractions.

HSteamNetConnection
alias HSteamNetConnection = uint

Handle used to identify a connection to a remote host.

HSteamNetPollGroup
alias HSteamNetPollGroup = uint

Handle used to identify a poll group, used to query many connections at once efficiently.

SteamNetworkingErrMsg
alias SteamNetworkingErrMsg = char[k_cchMaxSteamNetworkingErrMsg]

Used to return English-language diagnostic error messages to caller. (For debugging or spewing to a console, etc. Not intended for UI.)

SteamNetworkingMicroseconds
alias SteamNetworkingMicroseconds = long

A local timestamp. You can subtract two timestamps to get the number of elapsed microseconds. This is guaranteed to increase over time during the lifetime of a process, but not globally across runs. You don't need to worry about the value wrapping around. Note that the underlying clock might not actually have microsecond resolution.

SteamNetworkingPOPID
alias SteamNetworkingPOPID = uint

Identifier used for a network location point of presence. (E.g. a Valve data center.) Typically you won't need to directly manipulate these.

Enums

ESteamNetConnectionEnd
enum ESteamNetConnectionEnd

Enumerate various causes of connection termination. These are designed to work similar to HTTP error codes: the numeric range gives you a rough classification as to the source of the problem.

ESteamNetworkingAvailability
enum ESteamNetworkingAvailability

Describe the status of a particular network resource

ESteamNetworkingConfigDataType
enum ESteamNetworkingConfigDataType
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.
ESteamNetworkingConfigScope
enum ESteamNetworkingConfigScope

Configuration values can be applied to different types of objects.

ESteamNetworkingConfigValue
enum ESteamNetworkingConfigValue

Configuration options

ESteamNetworkingConnectionState
enum ESteamNetworkingConnectionState

High level connection status

ESteamNetworkingFakeIPType
enum ESteamNetworkingFakeIPType

"Fake IPs" are assigned to hosts, to make it easier to interface with older code that assumed all hosts will have an IPv4 address

ESteamNetworkingGetConfigValueResult
enum ESteamNetworkingGetConfigValueResult

Return value of ISteamNetworkintgUtils::GetConfigValue

ESteamNetworkingIdentityType
enum ESteamNetworkingIdentityType

Different methods of describing the identity of a network host

ESteamNetworkingSocketsDebugOutputType
enum ESteamNetworkingSocketsDebugOutputType

Detail level for diagnostic output callback. See ISteamNetworkingUtils::SetDebugOutputFunction

Functions

CalculateSteamNetworkingPOPIDFromString
SteamNetworkingPOPID CalculateSteamNetworkingPOPIDFromString(char* pszCode)

Convert 3- or 4-character ID to 32-bit int.

Structs

SteamNetConnectionInfo_t
struct SteamNetConnectionInfo_t

Describe the state of a connection.

SteamNetworkPingLocation_t
struct SteamNetworkPingLocation_t

Object that describes a "location" on the Internet with sufficient detail that we can reasonably estimate an upper bound on the ping between the two hosts, even if a direct route between the hosts is not possible, and the connection must be routed through the Steam Datagram Relay network. This does not contain any information that identifies the host. Indeed, if two hosts are in the same building or otherwise have nearly identical networking characteristics, then it's valid to use the same location object for both of them.

SteamNetworkingConfigValue_t
struct SteamNetworkingConfigValue_t

In a few places we need to set configuration options on listen sockets and connections, and have them take effect *before* the listen socket or connection really starts doing anything. Creating the object and then setting the options "immediately" after creation doesn't work completely, because network packets could be received between the time the object is created and when the options are applied. To set options at creation time in a reliable way, they must be passed to the creation function. This structure is used to pass those options.

SteamNetworkingFakeIPResult_t
struct SteamNetworkingFakeIPResult_t
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.
SteamNetworkingIPAddr
struct SteamNetworkingIPAddr

Store an IP and port. IPv6 is always used; IPv4 is represented using "IPv4-mapped" addresses: IPv4 aa.bb.cc.dd => IPv6 ::ffff:aabb:ccdd (RFC 4291 section 2.5.5.2.)

SteamNetworkingIdentity
struct SteamNetworkingIdentity

An abstract way to represent the identity of a network host. All identities can be represented as simple string. Furthermore, this string representation is actually used on the wire in several places, even though it is less efficient, in order to facilitate forward compatibility. (Old client code can handle an identity type that it doesn't understand.)

SteamNetworkingMessage_t
struct SteamNetworkingMessage_t

A message that has been received.

SteamNetworkingMessagesSessionFailed_t
struct SteamNetworkingMessagesSessionFailed_t
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.
SteamNetworkingMessagesSessionRequest_t
struct SteamNetworkingMessagesSessionRequest_t
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.
SteamNetworkingPOPIDRender
struct SteamNetworkingPOPIDRender

Utility class for printing a SteamNetworkingPOPID.

SteamNetworkingQuickConnectionStatus
struct SteamNetworkingQuickConnectionStatus

Quick connection state, pared down to something you could call more frequently without it being too big of a perf hit.

Variables

k_HSteamListenSocket_Invalid
enum HSteamListenSocket k_HSteamListenSocket_Invalid;
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.
k_HSteamNetConnection_Invalid
enum HSteamNetConnection k_HSteamNetConnection_Invalid;
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.
k_HSteamNetPollGroup_Invalid
enum HSteamNetPollGroup k_HSteamNetPollGroup_Invalid;
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.
k_SteamDatagramPOPID_dev
enum SteamNetworkingPOPID k_SteamDatagramPOPID_dev;

The POPID "dev" is used in non-production environments for testing.

k_cbMaxSteamNetworkingSocketsMessageSizeSend
enum int k_cbMaxSteamNetworkingSocketsMessageSizeSend;

Max size of a single message that we can SEND. Note: We might be wiling to receive larger messages, and our peer might, too.

k_cchMaxSteamNetworkingErrMsg
enum int k_cchMaxSteamNetworkingErrMsg;

Max length of diagnostic error message

k_cchMaxSteamNetworkingPingLocationString
enum int k_cchMaxSteamNetworkingPingLocationString;

Max possible length of a ping location, in string format. This is an extremely conservative worst case value which leaves room for future syntax enhancements. Most strings in practice are a lot shorter. If you are storing many of these, you will very likely benefit from using dynamic memory.

k_cchSteamNetworkingMaxConnectionCloseReason
enum int k_cchSteamNetworkingMaxConnectionCloseReason;

Max length, in bytes (including null terminator) of the reason string when a connection is closed.

k_cchSteamNetworkingMaxConnectionDescription
enum int k_cchSteamNetworkingMaxConnectionDescription;

Max length, in bytes (include null terminator) of debug description of a connection.

k_nSteamNetworkConnectionInfoFlags_DualWifi
enum int k_nSteamNetworkConnectionInfoFlags_DualWifi;
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.
k_nSteamNetworkConnectionInfoFlags_Fast
enum int k_nSteamNetworkConnectionInfoFlags_Fast;
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.
k_nSteamNetworkConnectionInfoFlags_LoopbackBuffers
enum int k_nSteamNetworkConnectionInfoFlags_LoopbackBuffers;
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.
k_nSteamNetworkConnectionInfoFlags_Relayed
enum int k_nSteamNetworkConnectionInfoFlags_Relayed;
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.
k_nSteamNetworkConnectionInfoFlags_Unauthenticated
enum int k_nSteamNetworkConnectionInfoFlags_Unauthenticated;
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.
k_nSteamNetworkConnectionInfoFlags_Unencrypted
enum int k_nSteamNetworkConnectionInfoFlags_Unencrypted;
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.
k_nSteamNetworkingConfig_P2P_Transport_ICE_Enable_All
enum int k_nSteamNetworkingConfig_P2P_Transport_ICE_Enable_All;
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.
k_nSteamNetworkingConfig_P2P_Transport_ICE_Enable_Default
enum int k_nSteamNetworkingConfig_P2P_Transport_ICE_Enable_Default;
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.
k_nSteamNetworkingConfig_P2P_Transport_ICE_Enable_Disable
enum int k_nSteamNetworkingConfig_P2P_Transport_ICE_Enable_Disable;
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.
k_nSteamNetworkingConfig_P2P_Transport_ICE_Enable_Private
enum int k_nSteamNetworkingConfig_P2P_Transport_ICE_Enable_Private;
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.
k_nSteamNetworkingConfig_P2P_Transport_ICE_Enable_Public
enum int k_nSteamNetworkingConfig_P2P_Transport_ICE_Enable_Public;
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.
k_nSteamNetworkingConfig_P2P_Transport_ICE_Enable_Relay
enum int k_nSteamNetworkingConfig_P2P_Transport_ICE_Enable_Relay;
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.
k_nSteamNetworkingPing_Failed
enum int k_nSteamNetworkingPing_Failed;

Special values that are returned by some functions that return a ping.

k_nSteamNetworkingPing_Unknown
enum int k_nSteamNetworkingPing_Unknown;
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.
k_nSteamNetworkingSend_AutoRestartBrokenSession
enum int k_nSteamNetworkingSend_AutoRestartBrokenSession;
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.
k_nSteamNetworkingSend_NoDelay
enum int k_nSteamNetworkingSend_NoDelay;
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.
k_nSteamNetworkingSend_NoNagle
enum int k_nSteamNetworkingSend_NoNagle;
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.
k_nSteamNetworkingSend_Reliable
enum int k_nSteamNetworkingSend_Reliable;
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.
k_nSteamNetworkingSend_ReliableNoNagle
enum int k_nSteamNetworkingSend_ReliableNoNagle;
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.
k_nSteamNetworkingSend_Unreliable
enum int k_nSteamNetworkingSend_Unreliable;
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.
k_nSteamNetworkingSend_UnreliableNoDelay
enum int k_nSteamNetworkingSend_UnreliableNoDelay;
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.
k_nSteamNetworkingSend_UnreliableNoNagle
enum int k_nSteamNetworkingSend_UnreliableNoNagle;
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.
k_nSteamNetworkingSend_UseCurrentThread
enum int k_nSteamNetworkingSend_UseCurrentThread;
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.

Meta