GB_STREAM_DESC

typedef
  struct {
    int (*open)(struct GB_STREAM *stream, const char *path, int mode, void *data);
    int (*close)(struct GB_STREAM *stream);
    int (*read)(struct GB_STREAM *stream, char *buffer, long len);
    int (*write)(struct GB_STREAM *stream, char *buffer, long len);
    int (*seek)(struct GB_STREAM *stream, long pos, int whence);
    int (*tell)(struct GB_STREAM *stream, long *pos);
    int (*flush)(struct GB_STREAM *stream);
    int (*eof)(struct GB_STREAM *stream);
    int (*lof)(struct GB_STREAM *stream, long *len);
    int (*handle)(struct GB_STREAM *stream);
    }
GB_STREAM_DESC;

This describe is a function pointer table that must point at the implementation functions of your stream.

Each stream has a pointer to such a structure. See GB_STREAM for more details.