27 lines
874 B
C
27 lines
874 B
C
#pragma once
|
|
|
|
/**
|
|
** \defgroup packetstream Packet Stream
|
|
** Primitive helper for sending packets of known size across a pipe.
|
|
** @{
|
|
*/
|
|
|
|
#include <stddef.h>
|
|
|
|
typedef struct uv_pipe_s uv_pipe_t;
|
|
|
|
typedef struct _tf_packetstream_t tf_packetstream_t;
|
|
|
|
typedef void(tf_packetstream_onreceive_t)(int packet_type, const char* begin, size_t length, void* user_data);
|
|
|
|
tf_packetstream_t* tf_packetstream_create();
|
|
void tf_packetstream_destroy(tf_packetstream_t* stream);
|
|
|
|
void tf_packetstream_start(tf_packetstream_t* stream);
|
|
void tf_packetstream_send(tf_packetstream_t* stream, int packet_type, const char* begin, size_t length);
|
|
void tf_packetstream_set_on_receive(tf_packetstream_t* stream, tf_packetstream_onreceive_t* callback, void* user_data);
|
|
void tf_packetstream_close(tf_packetstream_t* stream);
|
|
uv_pipe_t* tf_packetstream_get_pipe(tf_packetstream_t* stream);
|
|
|
|
/** @} */
|