Main Page   Namespace List   Class Hierarchy   Compound List   File List   Compound Members   File Members   Related Pages   Examples  

bytestream.h

00001 #ifndef _dev_w3_org__2001_blindfold_bytestream_h
00002 #define _dev_w3_org__2001_blindfold_bytestream_h
00003 
00021 #include <stdio.h>
00022 
00030 typedef struct bytesource_s bytesource;
00031 
00039 typedef struct bytesink_s bytesink;
00040  /*@}*/        /* workaround doc++ bug */
00042 
00053 bytesource *bytesource_new_for_uri(char *uri);
00054 
00064 bytesource *bytesource_new_for_buffer(char *buf, size_t bytes);
00065 
00067 bytesource *bytesource_new_for_string(char *str);
00069 bytesource *bytesource_new_for_FILE(FILE *f);
00071 bytesource *bytesource_new_for_fd(int fd);
00072 
00074 bytesink *bytesink_new_for_uri(char *uri);
00076 bytesink *bytesink_new_for_buffer(char *buf, size_t bytes);
00078 bytesink *bytesink_new_for_string(char *str);
00080 bytesink *bytesink_new_for_FILE(FILE *f);
00082 bytesink *bytesink_new_for_fd(int fd);
00083 
00084 
00085 
00093 size_t bytesource_read(bytesource *source, void *buf, size_t count);
00094 
00102 size_t bytesink_write(bytesink *destination, void *buf, size_t count);
00103 
00112 void bytestream_attach(bytesource *source, bytesink *sink);
00113 
00118 void bytesink_release(bytesink *b);
00119 
00124 void bytesource_release(bytesource *b);
00125 
00126 
00127 #endif

Home to blindfold. This page generated via doxygen 1.2.11.1 Wed Oct 10 16:40:33 2001.