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

bytestream-implementation.h

00001 #ifndef _dev_w3_org__2001_blindfold_bytestream_implementation_h
00002 #define _dev_w3_org__2001_blindfold_bytestream_implementation_h
00003 
00004 #include "bytestream.h"
00005 
00029 typedef size_t (ByteReadFunction)(bytesource *self, 
00030                   void *buf, size_t count);
00031 
00033 typedef size_t (ByteWriteFunction)(ByteSink *self, 
00034                   void *buf, size_t count);
00035 
00037 typedef bytesource *(bytesourceSetFunction)(bytesource *source);
00038 
00040 typedef ByteSink *(ByteSinkSetFunction)(ByteSink *sink);
00041 
00042 /* typedef void (ReleaseFunction)(void *self); */
00043 
00044 
00045 
00046 
00047 struct byte_source {
00052     ByteReadFunction *read;
00053 
00059     bytesourceSetFunction *attach_sink;
00060     
00062     ReleaseFunction *release;
00063 };
00064 
00066 struct byte_sink {
00068     ByteWriteFunction *write;
00069 
00071     ReleaseFunction *release;
00072 };
00073 

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