/*
 * iobuf.h
 *
 * An I/O buffer library based on sbuf.
 *
 * Header file.
 *
 * History:
 *      21/01/2014 Creation.
 *      12/03/2014 Fix _staticinit() and  _*free() prototypes.
 *
 * Author: Dario Rodriguez dario@softhome.net
 * This library is licensed on the terms of the GNU LGPL v2+
 */

#ifndef IOBUF_H
#define IOBUF_H

#include "sbuf.h"

typedef struct {
        int iobufnum;
        sbuf *in;
        sbuf *out;
} siobuf;

/* iobuf */
siobuf *iobuf_init(int insize,int outsize);
siobuf *iobuf_staticinit(siobuf *uninitiobuf, sbuf *uninitinbuf, sbuf *uninitoutbuf,int insize, int outsize, char *inbuf, char *outbuf);

void iobuf_free(siobuf *iobuf);
void iobuf_staticfree(siobuf *iobuf);

#endif