mirror of
https://github.com/falk-werner/webfuse-provider
synced 2024-10-27 20:44:10 +00:00
64 lines
1.5 KiB
C
64 lines
1.5 KiB
C
#ifndef WFP_IMPL_CLIENT_PROTOCOL_H
|
|
#define WFP_IMPL_CLIENT_PROTOCOL_H
|
|
|
|
#include "webfuse_provider/impl/provider.h"
|
|
#include "webfuse_provider/impl/request.h"
|
|
|
|
#include "webfuse_provider/impl/util/slist.h"
|
|
|
|
#ifdef __cplusplus
|
|
extern "C"
|
|
{
|
|
#endif
|
|
|
|
struct wfp_client_config;
|
|
struct lws_protocols;
|
|
struct lws_context;
|
|
struct wfp_jsonrpc_proxy;
|
|
struct wfp_timer_manager;
|
|
|
|
struct wfp_client_protocol
|
|
{
|
|
bool is_connected;
|
|
bool is_shutdown_requested;
|
|
struct wfp_request request;
|
|
struct wfp_provider provider;
|
|
void * user_data;
|
|
struct lws * wsi;
|
|
struct wfp_timer_manager * timer_manager;
|
|
struct wfp_jsonrpc_proxy * proxy;
|
|
struct wfp_slist messages;
|
|
};
|
|
|
|
extern void wfp_impl_client_protocol_init(
|
|
struct wfp_client_protocol * protocol,
|
|
struct wfp_provider const * provider,
|
|
void * user_data);
|
|
|
|
extern void wfp_impl_client_protocol_cleanup(
|
|
struct wfp_client_protocol * protocol);
|
|
|
|
extern struct wfp_client_protocol * wfp_impl_client_protocol_create(
|
|
struct wfp_client_config const * config);
|
|
|
|
extern void wfp_impl_client_protocol_dispose(
|
|
struct wfp_client_protocol * protocol);
|
|
|
|
extern void wfp_impl_client_protocol_init_lws(
|
|
struct wfp_client_protocol * protocol,
|
|
struct lws_protocols * lws_protocol);
|
|
|
|
extern void wfp_impl_client_protocol_connect(
|
|
struct wfp_client_protocol * protocol,
|
|
struct lws_context * context,
|
|
char const * url);
|
|
|
|
extern void wfp_impl_client_protocol_disconnect(
|
|
struct wfp_client_protocol * protocol);
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif
|