Functions | |
void | enet_host_bandwidth_limit (ENetHost *host, enet_uint32 incomingBandwidth, enet_uint32 outgoingBandwidth) |
Adjusts the bandwidth limits of a host. More... | |
void | enet_host_bandwidth_throttle (ENetHost *host) |
void | enet_host_broadcast (ENetHost *host, enet_uint8 channelID, ENetPacket *packet) |
Queues a packet to be sent to all peers associated with the host. More... | |
void | enet_host_channel_limit (ENetHost *host, size_t channelLimit) |
Limits the maximum allowed channels of future incoming connections. More... | |
int | enet_host_check_events (ENetHost *host, ENetEvent *event) |
Checks for any queued events on the host and dispatches one if available. More... | |
void | enet_host_compress (ENetHost *host, const ENetCompressor *compressor) |
Sets the packet compressor the host should use to compress and decompress packets. More... | |
int | enet_host_compress_with_range_coder (ENetHost *host) |
Sets the packet compressor the host should use to the default range coder. More... | |
ENetPeer * | enet_host_connect (ENetHost *host, const ENetAddress *address, size_t channelCount, enet_uint32 data) |
Initiates a connection to a foreign host. More... | |
ENetHost * | enet_host_create (const ENetAddress *address, size_t peerCount, size_t channelLimit, enet_uint32 incomingBandwidth, enet_uint32 outgoingBandwidth) |
Creates a host for communicating to peers. More... | |
void | enet_host_destroy (ENetHost *host) |
Destroys the host and all resources associated with it. More... | |
void | enet_host_flush (ENetHost *host) |
Sends any queued packets on the host specified to its designated peers. More... | |
int | enet_host_service (ENetHost *host, ENetEvent *event, enet_uint32 timeout) |
Waits for events on the host specified and shuttles packets between the host and its peers. More... | |
void enet_host_bandwidth_limit | ( | ENetHost * | host, |
enet_uint32 | incomingBandwidth, | ||
enet_uint32 | outgoingBandwidth | ||
) |
#include <host.c>
Adjusts the bandwidth limits of a host.
host | host to adjust |
incomingBandwidth | new incoming bandwidth |
outgoingBandwidth | new outgoing bandwidth |
#include <host.c>
References _ENetProtocol::bandwidthLimit, _ENetProtocolCommandHeader::channelID, _ENetProtocolCommandHeader::command, ENET_HOST_BANDWIDTH_THROTTLE_INTERVAL, ENET_HOST_TO_NET_32, ENET_PEER_PACKET_THROTTLE_SCALE, enet_peer_queue_outgoing_command(), ENET_PEER_STATE_CONNECTED, ENET_PEER_STATE_DISCONNECT_LATER, ENET_PROTOCOL_COMMAND_BANDWIDTH_LIMIT, ENET_PROTOCOL_COMMAND_FLAG_ACKNOWLEDGE, enet_time_get(), _ENetProtocol::header, _ENetProtocolBandwidthLimit::incomingBandwidth, and _ENetProtocolBandwidthLimit::outgoingBandwidth.
Referenced by enet_host_service().
void enet_host_broadcast | ( | ENetHost * | host, |
enet_uint8 | channelID, | ||
ENetPacket * | packet | ||
) |
#include <host.c>
Queues a packet to be sent to all peers associated with the host.
host | host on which to broadcast the packet |
channelID | channel on which to broadcast |
packet | packet to broadcast |
References enet_packet_destroy(), enet_peer_send(), and ENET_PEER_STATE_CONNECTED.
#include <host.c>
Limits the maximum allowed channels of future incoming connections.
host | host to limit |
channelLimit | the maximum number of channels allowed; if 0, then this is equivalent to ENET_PROTOCOL_MAXIMUM_CHANNEL_COUNT |
References ENET_PROTOCOL_MAXIMUM_CHANNEL_COUNT, and ENET_PROTOCOL_MINIMUM_CHANNEL_COUNT.
#include <protocol.c>
Checks for any queued events on the host and dispatches one if available.
host | host to check for events |
event | an event structure where event details will be placed if available |
> | 0 if an event was dispatched |
0 | if no events are available |
< | 0 on failure |
References ENET_EVENT_TYPE_NONE.
void enet_host_compress | ( | ENetHost * | host, |
const ENetCompressor * | compressor | ||
) |
#include <host.c>
Sets the packet compressor the host should use to compress and decompress packets.
host | host to enable or disable compression for |
compressor | callbacks for for the packet compressor; if NULL, then compression is disabled |
References _ENetCompressor::context.
Referenced by enet_host_compress_with_range_coder().
#include <compress.c>
Sets the packet compressor the host should use to the default range coder.
host | host to enable the range coder for |
References _ENetCompressor::context, enet_host_compress(), enet_range_coder_compress(), enet_range_coder_create(), enet_range_coder_decompress(), and enet_range_coder_destroy().
ENetPeer* enet_host_connect | ( | ENetHost * | host, |
const ENetAddress * | address, | ||
size_t | channelCount, | ||
enet_uint32 | data | ||
) |
#include <host.c>
Initiates a connection to a foreign host.
host | host seeking the connection |
address | destination for the connection |
channelCount | number of channels to allocate |
data | user data supplied to the receiving host |
References _ENetProtocolConnect::channelCount, _ENetProtocolCommandHeader::channelID, _ENetProtocolCommandHeader::command, _ENetProtocol::connect, _ENetProtocolConnect::connectID, _ENetProtocolConnect::data, ENET_HOST_TO_NET_16, ENET_HOST_TO_NET_32, enet_list_clear(), enet_malloc(), enet_peer_queue_outgoing_command(), ENET_PEER_STATE_CONNECTING, ENET_PEER_STATE_DISCONNECTED, ENET_PEER_WINDOW_SIZE_SCALE, ENET_PROTOCOL_COMMAND_CONNECT, ENET_PROTOCOL_COMMAND_FLAG_ACKNOWLEDGE, ENET_PROTOCOL_MAXIMUM_CHANNEL_COUNT, ENET_PROTOCOL_MAXIMUM_WINDOW_SIZE, ENET_PROTOCOL_MINIMUM_CHANNEL_COUNT, ENET_PROTOCOL_MINIMUM_WINDOW_SIZE, _ENetProtocol::header, _ENetProtocolConnect::incomingBandwidth, _ENetProtocolConnect::incomingSessionID, _ENetProtocolConnect::mtu, _ENetProtocolConnect::outgoingBandwidth, _ENetProtocolConnect::outgoingPeerID, _ENetProtocolConnect::outgoingSessionID, _ENetProtocolConnect::packetThrottleAcceleration, _ENetProtocolConnect::packetThrottleDeceleration, _ENetProtocolConnect::packetThrottleInterval, and _ENetProtocolConnect::windowSize.
ENetHost* enet_host_create | ( | const ENetAddress * | address, |
size_t | peerCount, | ||
size_t | channelLimit, | ||
enet_uint32 | incomingBandwidth, | ||
enet_uint32 | outgoingBandwidth | ||
) |
#include <host.c>
Creates a host for communicating to peers.
address | the address at which other peers may connect to this host. If NULL, then no peers may connect to the host. |
peerCount | the maximum number of peers that should be allocated for the host. |
channelLimit | the maximum number of channels allowed; if 0, then this is equivalent to ENET_PROTOCOL_MAXIMUM_CHANNEL_COUNT |
incomingBandwidth | downstream bandwidth of the host in bytes/second; if 0, ENet will assume unlimited bandwidth. |
outgoingBandwidth | upstream bandwidth of the host in bytes/second; if 0, ENet will assume unlimited bandwidth. |
References enet_free(), ENET_HOST_ANY, ENET_HOST_DEFAULT_MAXIMUM_PACKET_SIZE, ENET_HOST_DEFAULT_MAXIMUM_WAITING_DATA, ENET_HOST_DEFAULT_MTU, enet_host_random_seed(), ENET_HOST_RECEIVE_BUFFER_SIZE, ENET_HOST_SEND_BUFFER_SIZE, enet_list_clear(), enet_malloc(), enet_peer_reset(), ENET_PROTOCOL_MAXIMUM_CHANNEL_COUNT, ENET_PROTOCOL_MAXIMUM_PEER_ID, ENET_PROTOCOL_MINIMUM_CHANNEL_COUNT, enet_socket_bind(), enet_socket_create(), enet_socket_destroy(), enet_socket_get_address(), ENET_SOCKET_NULL, enet_socket_set_option(), ENET_SOCKET_TYPE_DATAGRAM, ENET_SOCKOPT_BROADCAST, ENET_SOCKOPT_NONBLOCK, ENET_SOCKOPT_RCVBUF, and ENET_SOCKOPT_SNDBUF.
#include <host.c>
Destroys the host and all resources associated with it.
host | pointer to the host to destroy |
References enet_free(), enet_peer_reset(), and enet_socket_destroy().
#include <protocol.c>
Sends any queued packets on the host specified to its designated peers.
host | host to flush |
References enet_time_get().
Referenced by enet_peer_disconnect(), and enet_peer_disconnect_now().
int enet_host_service | ( | ENetHost * | host, |
ENetEvent * | event, | ||
enet_uint32 | timeout | ||
) |
#include <protocol.c>
Waits for events on the host specified and shuttles packets between the host and its peers.
host | host to service |
event | an event structure where event details will be placed if one occurs if event == NULL then no events will be delivered |
timeout | number of milliseconds that ENet should wait for events |
> | 0 if an event occurred within the specified time limit |
0 | if no event occurred |
< | 0 on failure |
References ENET_EVENT_TYPE_NONE, enet_host_bandwidth_throttle(), ENET_HOST_BANDWIDTH_THROTTLE_INTERVAL, enet_socket_wait(), ENET_SOCKET_WAIT_INTERRUPT, ENET_SOCKET_WAIT_RECEIVE, ENET_TIME_DIFFERENCE, enet_time_get(), and ENET_TIME_GREATER_EQUAL.