diff options
-rw-r--r-- | api.txt | 290 |
1 files changed, 0 insertions, 290 deletions
diff --git a/api.txt b/api.txt deleted file mode 100644 index ddde9b1..0000000 --- a/api.txt +++ /dev/null @@ -1,290 +0,0 @@ -enet.h - The file that should be included to use the ENet API. - -enet_uint8 - unsigned 8 bit integer -enet_uint16 - unsigned 16 bit integer -enet_uint32 - unsigned 32 bit integer - -typedef struct -{ - enet_uint32 host; - enet_uint16 port; -} 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. - -typedef struct -{ - enet_uint32 flags; - enet_uint8 * data; - size_t dataLength; -} ENetPacket; - - 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 - - - Specifies that the packet must be received by the target peer and that resend - attempts should be made should delivery of the packet fail. - -typedef struct -{ - ENetAddress address; - void * data; - size_t channelCount; - enet_uint32 incomingBandwidth; - enet_uint32 outgoingBandwidth; - enet_uint32 roundTripTime; - enet_uint32 packetLoss; -} ENetPeer; - - An ENet peer which data packets may be sent or received from. No fields should be -modified unless otherwise specified. The address field contains the internet address -of the peer. The data fields may be used to associate any desired data with the peer -and may be freely modified. The channelCount field tells the number of channels that -have been allocated for use to communnicate with the peer. The incomingBandwidth field -specifies the downstream bandwidth of the client in bytes per second. The -outgoingBandwidth field specifies the upstream bandwidth of the client in bytes per -second. The roundTripTime field tells the mean round trip time from the sending of -a reliable packet until the receipt of its acknowledgement in milliseconds. The -packetLoss field tells the mean packet loss of reliable packets as a ratio with -respect to the constant ENET_PEER_PACKET_LOSS_SCALE. - -typedef enum -{ - ENET_EVENT_TYPE_NONE, - ENET_EVENT_TYPE_CONNECT, - ENET_EVENT_TYPE_DISCONNECT, - ENET_EVENT_TYPE_RECEIVE -} ENetEventType; - -typedef struct _ENetEvent -{ - ENetEventType type; - ENetPeer * peer; - enet_uint8 channelID; - ENetPacket * packet; -} ENetEvent; - - An ENet event as returned by enet_host_service. The type field contains the type -of the event, which may be any one of the following: - - ENET_EVENT_TYPE_NONE - No event occurred within the specified time limit. - ENET_EVENT_TYPE_CONNECT - - - A connection request initiated by enet_host_connect has completed. The peer field - contains the peer which successfully connected. - - ENET_EVENT_TYPE_DISCONNECT - - - A peer has disconnected. This event is generated on successful completion of a - disconnect iniated by enet_peer_disconnect, if a peer has timed out, or if a - connection request initialized by enet_host_connect has timed out. The peer field - contains the peer which disconnected. - - ENET_EVENT_TYPE_RECEIVE - - - A packet has been received from a peer. The peer field specifies the peer which - send the packet. The channelID field specifies the channel number upon which the - packet was received. The packet field contains the packet that was destroyed; this - packet must be destroyed with enet_packet_destroy after use. - -typedef struct -{ - ENetAddress address; - enet_uint32 incomingBandwidth; - enet_uint32 outgoingBandwidth; - ENetPeer * peers; - size_t peerCount; -} ENetHost; - - An ENet host for communicating with peers. No fields should be modified. The address -field tells the internet address of the host. The incomingBandwidth field tells the downstream -bandwidth of the host. The outgoingBandwidth field specifies the upstream bandwidth of the host. -The peers field contains an array of the peers that have been allocated for this host. The -peerCount field specifies the number of peers that have been allocated for this host. - -unsigned ENET_HOST_TO_NET_8 (unsigned); -unsigned ENET_HOST_TO_NET_16 (unsigned); -unsigned ENET_HOST_TO_NET_32 (unsigned); - - Macros that convert from host byte-order to network byte-order (big -endian) for unsigned integers of 8 bits, 16 bits, and 32 bits repectively. - -unsigned ENET_NET_TO_HOST_8 (unsigned); -unsigned ENET_NET_TO_HOST_16 (unsigned); -unsigned ENET_NET_TO_HOST_32 (unsigned); - - Macros that convert from network byte-order (big endian) to host -byte-order for unsigned integers of 8 bits, 16 bits, and 32 bits repectively. - -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. - -int enet_initialize (void); - - Initialize ENet for use. Must be called prior to using any functions in ENet. -Returns 0 on success and -1 on failure. - -void enet_deinitialize (void); - - Clean-up ENet after use. Should be called when a program that has initialized -and used ENet exits. - -int enet_address_set_host (ENetAddress * address, const char * hostName); - - Attempts to resolve the host named by the parameter hostName and sets the host -field in the address parameter if successful. Returns 0 on success and -1 on -failure. - -int enet_address_get_host (const ENetAddress * address, char * hostName, size_t nameLength); - - Attempts to do a reverse lookup of the host field in the address parameter. -If successful, the name of the host is placed in the string described by -hostName and nameLength. The host name is always null-delimited and will -not exceed nameLength in length. Returns 0 on success and -1 on failure. - -ENetPacket * enet_packet_create (const void * dataContents, size_t dataLength, enet_uint32 flags); - - Creates a packet that may be sent to a peer. The dataContents parameter -specifies the initial contents of the packet's data; the packet's data will -remain uninitialized if dataContents is NULL. The dataLength parameter specifies -the size of the data that is allocated for this packet. The flags parameter -specifies flags for this packet as described for the ENetPacket structure. -Returns the packet on success and NULL on failure. - -void enet_packet_destroy (ENetPacket * packet); - - Destroys the packet and deallocates its data. - -int enet_packet_resize (ENetPacket * packet, size_t dataLength); - - Attempts to resize the data in the packet to the length specified in the -dataLength parameter. Returns 0 on success and -1 on failure. - -ENetHost * enet_host_create (const ENetAddress * address, size_t peerCount, enet_uint32 incomingBandwidth, enet_uint32 outgoingBandwidth); - - Creates a host for communicating with peers. The address parameter specifies -the address at which other peers may connect to this host; if the address parameter -is NULL, then no peers may connect to the host. The peerCount parameter specifies -the numbers of peers that should be allocated for the host; this limits the maximum -number of peers that may connect to this host to peerCount. The incomingBandwidth -parameter specifies the downstream bandwidth of the host in bytes per second; if -the incomingBandwidth parameter is 0, ENet will assume the host has unlimited -downstream bandwidth. The outgoingBandwidth parameter specifies the upstream bandwidth -of the host in bytes per second; if the outgoingBandwidth parameter is 0, ENet will -assume the host has unlimited upstream bandwidth. ENet will strategically drop packets -on specific sides of a connection between hosts to ensure the host's bandwidth is not -overwhelmed; the bandwidth parameters also determine the window size of a connection -which limits the amount of reliable packets that may be in transit at any given time. -Returns the host on success and NULL on failure. - -void enet_host_destroy (ENetHost * host); - - Destroys the host and all resources associated with it. - -ENetPeer * enet_host_connect (ENetHost * host, const ENetAddress * address, size_t channelCount); - - Initiates a connection from the host specified in the host parameter to a foreign -host whose internet address is specified by the address parameter. The channelCount -parameter specifies the number of channels that should be allocated for communicating -with the foreign host. Returns a peer representing the foreign host on success and NULL -on failure. The peer returned will have not completed the connection until enet_host_service -notifies of an ENET_EVENT_TYPE_CONNECT event for the peer. - -int enet_host_service (ENetHost * host, ENetEvent * event, enet_uint32 timeout); - - Waits for events on the host specified by the host parameters and shuttles packets -between the host and its peers. The event parameter specifies an event structure -where event details will be placed if one occurs. The timeout field specifies an -amount of time in milliseconds that ENet should wait for events. Returns 1 if an -event occured within the specified time limit, 0 if no event occurred within the -time limit, and -1 on failure. This function must be called frequently for adequate -performance. - -void enet_host_flush (ENetHost * host); - - Sends out any queued packets on the host specified in the host parameters to -the designated peers. This function need only be used in circumstances where one -wishes to send queued packets earlier than in a call to enet_host_service. - -void enet_host_broadcast (ENetHost * host, enet_uint8 channelID, ENetPacket * packet); - - Queues a packet to be sent to all peers on the host specified in the host parameter -over the channel number identified by the channelID parameter. - -void enet_host_bandwidth_limit (ENetHost * host, enet_uint32 incomingBandwidth, enet_uint32 outgoingBandwidth); - - Adjusts the bandwidth limits of the host specified in the host parameter. The -incomingBandwidth and outgoingBandwidth parameters are as specified in a call to -enet_host_create. - -int enet_peer_send (ENetPeer * peer, enet_uint8 channelID, ENetPacket * packet); - - Queues a packet to be sent to the peer specified by the peer parameter over the -channel number identified by the channelID parameter. Returns 0 on success and -1 -on failure. - -ENetPacket * enet_peer_receive (ENetPeer * peer, enet_uint8 channelID); - - Attempts to dequeue any incoming queued packets on the peer specified by the peer -parameter on the channel number identified by the channelID parameter. Returns a packet -if one is available and NULL if there are no available incoming queued packets. - -void enet_peer_ping (ENetPeer * peer); - - Sends a ping request to the peer specified by the peer parameter. Ping requests factor -into the mean round trip time as designated by the roundTripTime field in the ENetPeer -structure. ENet automatically pings all connected peer at an interval, however, this -function may be called to ensure more frequent ping requests. - -void enet_peer_reset (ENetPeer * peer); - - Forcefully disconnects the peer specified by the peer parameter. The foreign host -represented by the peer is not notified of the disconnection and so will timeout on its -connection to the local host. - -void enet_peer_disconnect (ENetPeer * peer); - - Request a disconnection from the peer specified by the peer parameter. An -ENET_EVENT_DISCONNECT event will be generated by enet_host_service once the -disconnection is complete. - -void enet_peer_throttle_configure (ENetPeer * peer, enet_uint32 interval, enet_uint32 acceleration, enet_uint32 deceleration); - - Configures throttle parameter for the peer specified by the peer parameter. -Unreliable packets are dropped by ENet in response to the varying conditions of -the internet connection to the peer. The throttle represents a probability that -an unreliable packet should not be dropped and thus sent by ENet to the peer. -The lowest mean round trip time from the sending of a reliable packet to the -receipt of its acknowledgement is measured over an amount of time specified -by the interval parameter in milliseconds; the constant ENET_PEER_PACKET_THROTTLE_INTERVAL -is the default value for this parameter. If a measured round trip time happens -to be signifigantly less than the mean round trip time measured over the interval, -then the throttle probability is increased to allow more traffic by an amount -specified in the acceleration parameter which is in ratio to the -ENET_PEER_PACKET_THROTTLE_SCALE constant. If a measured round trip time happens -to be signifigantly greater than the mean round trip time measured over the interval, -then the throttle probability is decreased to limit traffic by an amount specified -in the deceleration parameter which is in ratio to the ENET_PEER_PACKET_THROTTLE_SCALE -constant. When the throttle has a value of ENET_PEER_PACKET_THROTTLE_SCALE, no unreliable -packets are dropped by ENET, and so 100% of all unreliable packets will be sent. When the -throttle has a value of 0, all unreliable packets are dropped by ENet, and so 0% of all -unreliable packets will be sent. Intermediate values for the throttle represent intermediate -probabilities between 0% and 100% of unreliable packets being sent. The bandwidth limits -of the local and foreign host are taken into account to determine a sensible limit for -the throttle probability above which it should not raise even in the best of conditions. - - - |