Zen API

- Home
- Topics
- Types
- Files

All Classes Files Functions Variables Typedefs Friends Macros Modules Pages
kTcpClient.h
Go to the documentation of this file.
1
10 #ifndef K_API_TCP_CLIENT_H
11 #define K_API_TCP_CLIENT_H
12
13 #include <kApi/Io/kNetwork.h>
14
15 kBeginHeader()
16
17
23 //typedef kStream kTcpClient; --forward-declared in kApiDef.x.h
24
25
34 kFx(kStatus) kTcpClient_Construct(kTcpClient* client, kIpVersion ipVersion, kAlloc allocator);
35
52 kFx(kStatus) kTcpClient_SetWriteBuffers(kTcpClient client, kSSize socketSize, kSSize clientSize);
53
67 kFx(kStatus) kTcpClient_SetReadBuffers(kTcpClient client, kSSize socketSize, kSSize clientSize);
68
79 kFx(kStatus) kTcpClient_SetWriteTimeout(kTcpClient client, k64u timeout);
80
91 kFx(kStatus) kTcpClient_SetReadTimeout(kTcpClient client, k64u timeout);
92
104 kFx(kStatus) kTcpClient_SetNoDelay(kTcpClient client, kBool noDelay);
105
118 kFx(kStatus) kTcpClient_SetCancelHandler(kTcpClient client, kCallbackFx function, kPointer receiver);
119
131 kFx(kStatus) kTcpClient_Cancel(kTcpClient client);
132
145 kFx(kStatus) kTcpClient_Connect(kTcpClient client, kIpAddress address, k32u port, k64u timeout);
146
164 kFx(kStatus) kTcpClient_BeginConnect(kTcpClient client, kIpAddress address, k32u port);
165
175 kFx(kStatus) kTcpClient_EndConnect(kTcpClient client, k64u timeout);
176
188 kFx(kStatus) kTcpClient_Wait(kTcpClient client, k64u timeout);
189
197 kFx(kSocket) kTcpClient_Socket(kTcpClient client);
198
209 kFx(kSize) kTcpClient_Available(kTcpClient client);
210
219 kFx(kStatus) kTcpClient_LocalEndPoint(kTcpClient client, kIpEndPoint* endPoint);
220
229 kFx(kStatus) kTcpClient_RemoteEndPoint(kTcpClient client, kIpEndPoint* endPoint);
230
238 kFx(kStatus) kTcpClient_Status(kTcpClient client);
239
240 kEndHeader()
241
242 #include <kApi/Io/kTcpClient.x.h>
243
244 #endif
kTcpClient::kTcpClient_SetWriteBuffers
kStatus kTcpClient_SetWriteBuffers(kTcpClient client, kSSize socketSize, kSSize clientSize)
Sets the size of write buffers.
k32u
Represents a 32-bit unsigned integer.
k64u
Represents a 64-bit unsigned integer.
kIpVersion
Represents an Internet Protocol version.
kPointer
Represents a void pointer.
kTcpClient::kTcpClient_Connect
kStatus kTcpClient_Connect(kTcpClient client, kIpAddress address, k32u port, k64u timeout)
Connects to a remote end point.
kTcpClient::kTcpClient_Status
kStatus kTcpClient_Status(kTcpClient client)
Reports any internal errors that will prevent success of future communication attempts.
kTcpClient::kTcpClient_LocalEndPoint
kStatus kTcpClient_LocalEndPoint(kTcpClient client, kIpEndPoint *endPoint)
Returns the local end point for a connected client.
kSize
Represents an unsigned integer that can store a pointer address.
kAlloc
Abstract base class for memory allocator types.
kTcpClient::kTcpClient_Construct
kStatus kTcpClient_Construct(kTcpClient *client, kIpVersion ipVersion, kAlloc allocator)
Constructs a TCP client object.
kIpAddress
Represents an IP address.
Definition: kNetwork.h:38
kSSize
Represents a signed integer that can store a pointer address.
kTcpClient::kTcpClient_BeginConnect
kStatus kTcpClient_BeginConnect(kTcpClient client, kIpAddress address, k32u port)
Begins connecting to a remote end point.
kTcpClient::kTcpClient_SetCancelHandler
kStatus kTcpClient_SetCancelHandler(kTcpClient client, kCallbackFx function, kPointer receiver)
Sets a cancel query handler, which can be used to asynchronously terminate read/write operations...
kTcpClient
Represents a TCP client.
kTcpClient::kTcpClient_Wait
kStatus kTcpClient_Wait(kTcpClient client, k64u timeout)
Waits until the client has bytes to read or until the specified timeout period elapses.
kTcpClient::kTcpClient_Available
kSize kTcpClient_Available(kTcpClient client)
Returns the number of bytes currently enqueued and available for reading.
kCallbackFx
kStatus(kCall * kCallbackFx)(kPointer receiver, kPointer sender, void *args)
Callback signature for a generic event handler.
Definition: kApiDef.h:1480
kTcpClient::kTcpClient_EndConnect
kStatus kTcpClient_EndConnect(kTcpClient client, k64u timeout)
Completes a connection operation that was started with kTcpClient_BeginConnect.
kTcpClient::kTcpClient_SetReadBuffers
kStatus kTcpClient_SetReadBuffers(kTcpClient client, kSSize socketSize, kSSize clientSize)
Sets the size of read buffers.
kTcpClient::kTcpClient_RemoteEndPoint
kStatus kTcpClient_RemoteEndPoint(kTcpClient client, kIpEndPoint *endPoint)
Returns the remote end point for a connected client.
kNetwork.h
IP networking definitions.
kStatus
Represents an error code.
kIpEndPoint
Represents an IP end point (address, port).
Definition: kNetwork.h:170
kTcpClient::kTcpClient_Cancel
kStatus kTcpClient_Cancel(kTcpClient client)
Cancels any pending I/O operations.
kTcpClient::kTcpClient_Socket
kSocket kTcpClient_Socket(kTcpClient client)
Returns the underlying kSocket object.
kTcpClient::kTcpClient_SetWriteTimeout
kStatus kTcpClient_SetWriteTimeout(kTcpClient client, k64u timeout)
Sets the timeout duration for write operations.
kTcpClient::kTcpClient_SetNoDelay
kStatus kTcpClient_SetNoDelay(kTcpClient client, kBool noDelay)
Can be used to disable the Nagle algorithm.
kSocket
Represents a network socket.
kBool
Represents a boolean value.
kTcpClient::kTcpClient_SetReadTimeout
kStatus kTcpClient_SetReadTimeout(kTcpClient client, k64u timeout)
Sets the timeout duration for read operations.