libmqtt/platform/platform.h

43 lines
1 KiB
C

#ifndef platform_h__included
#define platform_h__included
#include "mqtt_internal.h"
typedef void (*Reader)(MQTTHandle *handle);
/** maximum receiver buffer size, defined by platform */
extern const size_t max_receive_buffer_size;
bool hostname_to_ip(char *hostname, char *ip);
/**
* Initialize platform specific data
*
* @param handle: The handle to initialize
*/
void initialize_platform(MQTTHandle *handle);
/**
* Platform specific function to start a reading thread
*
* @param handle: The broker connection handle
* @param reader: callback to run in the thread
*/
MQTTStatus run_read_task(MQTTHandle *handle, Reader reader);
/**
* Platform specific function to clean up the reading thread
*
* @param handle: The broker connection handle
*/
MQTTStatus join_read_task(MQTTHandle *handle);
/**
* Platform specific function to release resources associated with a MQTTHandle
*
* @param handle: The handle to clean up
*/
void release_platform(MQTTHandle *handle);
#endif /* platform_h__included */