File en memory streams, en lezen van input streams. Nog niet getest. Alle
[rodin/chimara.git] / src / stream.h
index 1d7f131559cdee04be2321a3792c1829bfbd2196..73c46d706de08048a536abc57eef55a608c884be 100644 (file)
@@ -9,9 +9,7 @@ enum StreamType
 {
        STREAM_TYPE_WINDOW,
        STREAM_TYPE_MEMORY,
-       STREAM_TYPE_FILE,
-       STREAM_TYPE_UNICODE_MEMORY,
-       STREAM_TYPE_UNICODE_FILE
+       STREAM_TYPE_FILE
 };
 
 struct glk_stream_struct
@@ -27,13 +25,17 @@ struct glk_stream_struct
        enum StreamType stream_type;
        /* Specific to window stream: the window this stream is connected to */
        winid_t window;
+       /* For memory and file streams */
+       gboolean unicode;
        /* Specific to memory streams */
-       gchar *memory_buffer;
-       glui32 *memory_buffer_unicode;
-       glui32 buffer_len;
+       gchar *buffer;
+       glui32 *ubuffer;
+       glui32 mark;
+       glui32 buflen;
        /* Specific to file streams */
        FILE *file_pointer;
        gboolean binary;
+       gchar *filename; /* Displayable filename in UTF-8 for error handling */
 };
 
 strid_t window_stream_new(winid_t window);