RetroArch/rarchdb/rmsgpack.h
2014-12-30 21:02:15 +01:00

31 lines
910 B
C

#ifndef __RARCHDB_MSGPACK_H__
#define __RARCHDB_MSGPACK_H__
#include <stdint.h>
struct rmsgpack_read_callbacks {
int(*read_nil)(void*);
int(*read_bool)(int, void*);
int(*read_int)(int64_t, void*);
int(*read_uint)(uint64_t, void*);
int(*read_string)(char *, uint32_t, void*);
int(*read_bin)(void *, uint32_t, void*);
int(*read_map_start)(uint32_t, void*);
int(*read_array_start)(uint32_t, void*);
};
int rmsgpack_write_array_header(int fd, uint32_t size);
int rmsgpack_write_map_header(int fd, uint32_t size);
int rmsgpack_write_string(int fd, const char *s, uint32_t len);
int rmsgpack_write_bin(int fd, const void *s, uint32_t len);
int rmsgpack_write_nil(int fd);
int rmsgpack_write_bool(int fd, int value);
int rmsgpack_write_int(int fd, int64_t value);
int rmsgpack_write_uint(int fd, uint64_t value);
int rmsgpack_read(int fd, struct rmsgpack_read_callbacks *callbacks, void *data);
#endif