avro.h File Reference

AVRO API. More...

#include <stdarg.h>
#include <stdint.h>
#include <sys/types.h>
#include <apr_pools.h>
#include <apr_file_io.h>
#include <apr_network_io.h>

Go to the source code of this file.

Data Structures

struct  AVRO
struct  AVRO::AVRO::avro_ops

Defines

#define CHECK_ERROR(__status)   if(__status != AVRO_OK){ return __status; }
#define AVRO_GETBYTES(avro, addr, len)   (*(avro)->a_ops->a_getbytes)(avro, addr, len)
#define AVRO_PUTBYTES(avro, addr, len)   (*(avro)->a_ops->a_putbytes)(avro, addr, len)

Typedefs

typedef enum avro_op avro_op
typedef enum avro_status_t avro_status_t
typedef struct AVRO AVRO
typedef avro_status_t(* avroproc_t )(AVRO *, void *,...)
typedef int bool_t

Enumerations

enum  avro_op { AVRO_ENCODE = 0, AVRO_DECODE = 1 }
enum  avro_status_t { AVRO_OK = 0, AVRO_FAILURE = 1 }

Functions

avro_status_t avro_initialize (void)
avro_status_t avro_create_memory (AVRO *avro, apr_pool_t *pool, caddr_t addr, int64_t len, avro_op op)
avro_status_t avro_create_file (AVRO *avro, apr_pool_t *pool, apr_file_t *file, avro_op op)
avro_status_t avro_create_socket (AVRO *avro, apr_pool_t *pool, apr_socket_t *socket, avro_op op)
avro_status_t avro_null (void)
avro_status_t avro_int64 (AVRO *avro, int64_t *lp)
avro_status_t avro_string (AVRO *avro, char **str, int64_t maxlen)
avro_status_t avro_bytes (AVRO *avro, char **bytes, int64_t *len, int64_t maxlen)
avro_status_t avro_bool (AVRO *avro, bool_t *bp)
avro_status_t avro_float (AVRO *avro, float *fp)
avro_status_t avro_double (AVRO *avro, double *dp)
avro_status_t avro_array (AVRO *avro, caddr_t *addrp, uint32_t *sizep, uint32_t maxsize, uint32_t elsize, avroproc_t elproc)
void avro_dump_memory (AVRO *avro, FILE *fp)
avro_status_t avro_getint32_raw (AVRO *avro, int32_t *value)
avro_status_t avro_putint32_raw (AVRO *avro, const int32_t value)
avro_status_t avro_getint64_raw (AVRO *avro, int64_t *value)
avro_status_t avro_putint64_raw (AVRO *avro, const int64_t value)


Detailed Description

AVRO API.


Generated on Fri Oct 9 14:12:58 2009 for AVRO C API by  doxygen 1.5.8