ENet public header file. More...
#include <stdlib.h>#include "unix.h"#include "types.h"#include "protocol.h"#include "list.h"#include "callbacks.h"Go to the source code of this file.
Classes | |
| struct | _ENetAddress |
| struct | _ENetPacket |
| struct | _ENetAcknowledgement |
| struct | _ENetOutgoingCommand |
| struct | _ENetIncomingCommand |
| struct | _ENetChannel |
| struct | _ENetPeer |
| struct | _ENetCompressor |
| struct | _ENetHost |
| struct | _ENetEvent |
Typedefs | |
| typedef enet_uint32 | ENetVersion |
| typedef enum _ENetSocketType | ENetSocketType |
| typedef enum _ENetSocketWait | ENetSocketWait |
| typedef enum _ENetSocketOption | ENetSocketOption |
| typedef enum _ENetSocketShutdown | ENetSocketShutdown |
| typedef struct _ENetAddress | ENetAddress |
| typedef enum _ENetPacketFlag | ENetPacketFlag |
| typedef void(* | ENetPacketFreeCallback) (struct _ENetPacket *) |
| typedef struct _ENetPacket | ENetPacket |
| typedef struct _ENetAcknowledgement | ENetAcknowledgement |
| typedef struct _ENetOutgoingCommand | ENetOutgoingCommand |
| typedef struct _ENetIncomingCommand | ENetIncomingCommand |
| typedef enum _ENetPeerState | ENetPeerState |
| typedef struct _ENetChannel | ENetChannel |
| typedef enum _ENetPeerFlag | ENetPeerFlag |
| typedef struct _ENetPeer | ENetPeer |
| typedef struct _ENetCompressor | ENetCompressor |
| typedef enet_uint32(* | ENetChecksumCallback) (const ENetBuffer *buffers, size_t bufferCount) |
| typedef int(* | ENetInterceptCallback) (struct _ENetHost *host, struct _ENetEvent *event) |
| typedef struct _ENetHost | ENetHost |
| typedef enum _ENetEventType | ENetEventType |
| typedef struct _ENetEvent | ENetEvent |
Enumerations | |
| enum | _ENetSocketType { ENET_SOCKET_TYPE_STREAM = 1 , ENET_SOCKET_TYPE_DATAGRAM = 2 } |
| enum | _ENetSocketWait { ENET_SOCKET_WAIT_NONE = 0 , ENET_SOCKET_WAIT_SEND = (1 << 0) , ENET_SOCKET_WAIT_RECEIVE = (1 << 1) , ENET_SOCKET_WAIT_INTERRUPT = (1 << 2) } |
| enum | _ENetSocketOption { ENET_SOCKOPT_NONBLOCK = 1 , ENET_SOCKOPT_BROADCAST = 2 , ENET_SOCKOPT_RCVBUF = 3 , ENET_SOCKOPT_SNDBUF = 4 , ENET_SOCKOPT_REUSEADDR = 5 , ENET_SOCKOPT_RCVTIMEO = 6 , ENET_SOCKOPT_SNDTIMEO = 7 , ENET_SOCKOPT_ERROR = 8 , ENET_SOCKOPT_NODELAY = 9 } |
| enum | _ENetSocketShutdown { ENET_SOCKET_SHUTDOWN_READ = 0 , ENET_SOCKET_SHUTDOWN_WRITE = 1 , ENET_SOCKET_SHUTDOWN_READ_WRITE = 2 } |
| enum | _ENetPacketFlag { ENET_PACKET_FLAG_RELIABLE = (1 << 0) , ENET_PACKET_FLAG_UNSEQUENCED = (1 << 1) , ENET_PACKET_FLAG_NO_ALLOCATE = (1 << 2) , ENET_PACKET_FLAG_UNRELIABLE_FRAGMENT = (1 << 3) , ENET_PACKET_FLAG_SENT = (1<<8) } |
| enum | _ENetPeerState { ENET_PEER_STATE_DISCONNECTED = 0 , ENET_PEER_STATE_CONNECTING = 1 , ENET_PEER_STATE_ACKNOWLEDGING_CONNECT = 2 , ENET_PEER_STATE_CONNECTION_PENDING = 3 , ENET_PEER_STATE_CONNECTION_SUCCEEDED = 4 , ENET_PEER_STATE_CONNECTED = 5 , ENET_PEER_STATE_DISCONNECT_LATER = 6 , ENET_PEER_STATE_DISCONNECTING = 7 , ENET_PEER_STATE_ACKNOWLEDGING_DISCONNECT = 8 , ENET_PEER_STATE_ZOMBIE = 9 } |
| enum | { ENET_HOST_RECEIVE_BUFFER_SIZE = 256 * 1024 , ENET_HOST_SEND_BUFFER_SIZE = 256 * 1024 , ENET_HOST_BANDWIDTH_THROTTLE_INTERVAL = 1000 , ENET_HOST_DEFAULT_MTU = 1400 , ENET_HOST_DEFAULT_MAXIMUM_PACKET_SIZE = 32 * 1024 * 1024 , ENET_HOST_DEFAULT_MAXIMUM_WAITING_DATA = 32 * 1024 * 1024 , ENET_PEER_DEFAULT_ROUND_TRIP_TIME = 500 , ENET_PEER_DEFAULT_PACKET_THROTTLE = 32 , ENET_PEER_PACKET_THROTTLE_SCALE = 32 , ENET_PEER_PACKET_THROTTLE_COUNTER = 7 , ENET_PEER_PACKET_THROTTLE_ACCELERATION = 2 , ENET_PEER_PACKET_THROTTLE_DECELERATION = 2 , ENET_PEER_PACKET_THROTTLE_INTERVAL = 5000 , ENET_PEER_PACKET_LOSS_SCALE = (1 << 16) , ENET_PEER_PACKET_LOSS_INTERVAL = 10000 , ENET_PEER_WINDOW_SIZE_SCALE = 64 * 1024 , ENET_PEER_TIMEOUT_LIMIT = 32 , ENET_PEER_TIMEOUT_MINIMUM = 5000 , ENET_PEER_TIMEOUT_MAXIMUM = 30000 , ENET_PEER_PING_INTERVAL = 500 , ENET_PEER_UNSEQUENCED_WINDOWS = 64 , ENET_PEER_UNSEQUENCED_WINDOW_SIZE = 1024 , ENET_PEER_FREE_UNSEQUENCED_WINDOWS = 32 , ENET_PEER_RELIABLE_WINDOWS = 16 , ENET_PEER_RELIABLE_WINDOW_SIZE = 0x1000 , ENET_PEER_FREE_RELIABLE_WINDOWS = 8 } |
| enum | _ENetPeerFlag { ENET_PEER_FLAG_NEEDS_DISPATCH = (1 << 0) } |
| enum | _ENetEventType { ENET_EVENT_TYPE_NONE = 0 , ENET_EVENT_TYPE_CONNECT = 1 , ENET_EVENT_TYPE_DISCONNECT = 2 , ENET_EVENT_TYPE_RECEIVE = 3 } |
Functions | |
| int | enet_initialize (void) |
| int | enet_initialize_with_callbacks (ENetVersion version, const ENetCallbacks *inits) |
| void | enet_deinitialize (void) |
| ENetVersion | enet_linked_version (void) |
| enet_uint32 | enet_time_get (void) |
| void | enet_time_set (enet_uint32) |
| ENetSocket | enet_socket_create (ENetSocketType) |
| int | enet_socket_bind (ENetSocket, const ENetAddress *) |
| int | enet_socket_get_address (ENetSocket, ENetAddress *) |
| int | enet_socket_listen (ENetSocket, int) |
| ENetSocket | enet_socket_accept (ENetSocket, ENetAddress *) |
| int | enet_socket_connect (ENetSocket, const ENetAddress *) |
| int | enet_socket_send (ENetSocket, const ENetAddress *, const ENetBuffer *, size_t) |
| int | enet_socket_receive (ENetSocket, ENetAddress *, ENetBuffer *, size_t) |
| int | enet_socket_wait (ENetSocket, enet_uint32 *, enet_uint32) |
| int | enet_socket_set_option (ENetSocket, ENetSocketOption, int) |
| int | enet_socket_get_option (ENetSocket, ENetSocketOption, int *) |
| int | enet_socket_shutdown (ENetSocket, ENetSocketShutdown) |
| void | enet_socket_destroy (ENetSocket) |
| int | enet_socketset_select (ENetSocket, ENetSocketSet *, ENetSocketSet *, enet_uint32) |
| int | enet_address_set_host_ip (ENetAddress *address, const char *hostName) |
| int | enet_address_set_host (ENetAddress *address, const char *hostName) |
| int | enet_address_get_host_ip (const ENetAddress *address, char *hostName, size_t nameLength) |
| int | enet_address_get_host (const ENetAddress *address, char *hostName, size_t nameLength) |
| ENetPacket * | enet_packet_create (const void *, size_t, enet_uint32) |
| void | enet_packet_destroy (ENetPacket *) |
| int | enet_packet_resize (ENetPacket *, size_t) |
| enet_uint32 | enet_crc32 (const ENetBuffer *, size_t) |
| ENetHost * | enet_host_create (const ENetAddress *, size_t, size_t, enet_uint32, enet_uint32) |
| void | enet_host_destroy (ENetHost *) |
| ENetPeer * | enet_host_connect (ENetHost *, const ENetAddress *, size_t, enet_uint32) |
| int | enet_host_check_events (ENetHost *, ENetEvent *) |
| int | enet_host_service (ENetHost *, ENetEvent *, enet_uint32) |
| void | enet_host_flush (ENetHost *) |
| void | enet_host_broadcast (ENetHost *, enet_uint8, ENetPacket *) |
| void | enet_host_compress (ENetHost *, const ENetCompressor *) |
| int | enet_host_compress_with_range_coder (ENetHost *host) |
| void | enet_host_channel_limit (ENetHost *, size_t) |
| void | enet_host_bandwidth_limit (ENetHost *, enet_uint32, enet_uint32) |
| void | enet_host_bandwidth_throttle (ENetHost *) |
| enet_uint32 | enet_host_random_seed (void) |
| int | enet_peer_send (ENetPeer *, enet_uint8, ENetPacket *) |
| ENetPacket * | enet_peer_receive (ENetPeer *, enet_uint8 *channelID) |
| void | enet_peer_ping (ENetPeer *) |
| void | enet_peer_ping_interval (ENetPeer *, enet_uint32) |
| void | enet_peer_timeout (ENetPeer *, enet_uint32, enet_uint32, enet_uint32) |
| void | enet_peer_reset (ENetPeer *) |
| void | enet_peer_disconnect (ENetPeer *, enet_uint32) |
| void | enet_peer_disconnect_now (ENetPeer *, enet_uint32) |
| void | enet_peer_disconnect_later (ENetPeer *, enet_uint32) |
| void | enet_peer_throttle_configure (ENetPeer *, enet_uint32, enet_uint32, enet_uint32) |
| int | enet_peer_throttle (ENetPeer *, enet_uint32) |
| void | enet_peer_reset_queues (ENetPeer *) |
| void | enet_peer_setup_outgoing_command (ENetPeer *, ENetOutgoingCommand *) |
| ENetOutgoingCommand * | enet_peer_queue_outgoing_command (ENetPeer *, const ENetProtocol *, ENetPacket *, enet_uint32, enet_uint16) |
| ENetIncomingCommand * | enet_peer_queue_incoming_command (ENetPeer *, const ENetProtocol *, const void *, size_t, enet_uint32, enet_uint32) |
| ENetAcknowledgement * | enet_peer_queue_acknowledgement (ENetPeer *, const ENetProtocol *, enet_uint16) |
| void | enet_peer_dispatch_incoming_unreliable_commands (ENetPeer *, ENetChannel *, ENetIncomingCommand *) |
| void | enet_peer_dispatch_incoming_reliable_commands (ENetPeer *, ENetChannel *, ENetIncomingCommand *) |
| void | enet_peer_on_connect (ENetPeer *) |
| void | enet_peer_on_disconnect (ENetPeer *) |
| void * | enet_range_coder_create (void) |
| void | enet_range_coder_destroy (void *) |
| size_t | enet_range_coder_compress (void *, const ENetBuffer *, size_t, size_t, enet_uint8 *, size_t) |
| size_t | enet_range_coder_decompress (void *, const enet_uint8 *, size_t, enet_uint8 *, size_t) |
| size_t | enet_protocol_command_size (enet_uint8) |
ENet public header file.
| typedef struct _ENetAddress ENetAddress |
Portable internet address structure.
The host must be specified in network byte-order, and the port must be in host byte-order. The constant ENET_HOST_ANY may be used to specify the default server host. The constant ENET_HOST_BROADCAST may be used to specify the broadcast address (255.255.255.255). This makes sense for enet_host_connect, but not for enet_host_create. Once a server responds to a broadcast, the address is updated from ENET_HOST_BROADCAST to the server's actual IP address.
| typedef enum _ENetPacketFlag ENetPacketFlag |
Packet flag bit constants.
The host must be specified in network byte-order, and the port must be in host byte-order. The constant ENET_HOST_ANY may be used to specify the default server host.
| typedef struct _ENetPacket ENetPacket |
ENet packet structure.
An ENet data packet that may be sent to or received from a peer. The shown fields should only be read and never modified. The data field contains the allocated data for the packet. The dataLength fields specifies the length of the allocated data. The flags field is either 0 (specifying no flags), or a bitwise-or of any combination of the following flags:
ENET_PACKET_FLAG_RELIABLE - packet must be received by the target peer and resend attempts should be made until the packet is delivered
ENET_PACKET_FLAG_UNSEQUENCED - packet will not be sequenced with other packets (not supported for reliable packets)
ENET_PACKET_FLAG_NO_ALLOCATE - packet will not allocate data, and user must supply it instead
ENET_PACKET_FLAG_UNRELIABLE_FRAGMENT - packet will be fragmented using unreliable (instead of reliable) sends if it exceeds the MTU
ENET_PACKET_FLAG_SENT - whether the packet has been sent from all queues it has been entered into
An ENet peer which data packets may be sent or received from.
No fields should be modified unless otherwise specified.
| typedef struct _ENetCompressor ENetCompressor |
An ENet packet compressor for compressing UDP packets before socket sends or receives.
| typedef enet_uint32( * ENetChecksumCallback) (const ENetBuffer *buffers, size_t bufferCount) |
Callback that computes the checksum of the data held in buffers[0:bufferCount-1]
| typedef int( * ENetInterceptCallback) (struct _ENetHost *host, struct _ENetEvent *event) |
Callback for intercepting received raw UDP packets. Should return 1 to intercept, 0 to ignore, or -1 to propagate an error.
An ENet host for communicating with peers.
No fields should be modified unless otherwise stated.
| typedef enum _ENetEventType ENetEventType |
An ENet event type, as specified in ENetEvent.
| typedef struct _ENetEvent ENetEvent |
An ENet event as returned by enet_host_service().
| enum _ENetPacketFlag |
Packet flag bit constants.
The host must be specified in network byte-order, and the port must be in host byte-order. The constant ENET_HOST_ANY may be used to specify the default server host.
| enum _ENetEventType |
An ENet event type, as specified in ENetEvent.
| enet_uint32 enet_time_get | ( | void | ) |
Returns the wall-time in milliseconds. Its initial value is unspecified unless otherwise set.
| void enet_time_set | ( | enet_uint32 | ) |
Sets the current wall-time in milliseconds.