* Added initial support for styles! (no style hints as of yet though)
[rodin/chimara.git] / src / stream.h
index b5a1e6092edf7bed4c74eea92bbe2163cf09396c..0ea398e377fc98bf561e629ac9ce4434e4527fdc 100644 (file)
@@ -12,9 +12,16 @@ enum StreamType
        STREAM_TYPE_FILE
 };
 
+/**
+ * glk_stream_struct:
+ *
+ * This is an opaque structure (see <link linkend="chimara-Opaque-Structures">
+ * Opaque Structures</link> and should not be accessed directly.
+ */
 struct glk_stream_struct
 {
-       glui32 rock;
+       /*< private >*/
+       glui32 magic, rock;
        /* Pointer to the list node in the global stream list that contains this
        stream */
        GList* stream_list;
@@ -22,7 +29,7 @@ struct glk_stream_struct
        glui32 file_mode;
        glui32 read_count;
        glui32 write_count;
-       enum StreamType stream_type;
+       enum StreamType type;
        /* Specific to window stream: the window this stream is connected to */
        winid_t window;
        /* For memory and file streams */
@@ -36,8 +43,10 @@ struct glk_stream_struct
        FILE *file_pointer;
        gboolean binary;
        gchar *filename; /* Displayable filename in UTF-8 for error handling */
+
+       gchar *style; /* Name of the current style */
 };
 
-strid_t window_stream_new(winid_t window);
-void stream_close_common(strid_t str, stream_result_t *result);
+G_GNUC_INTERNAL strid_t window_stream_new(winid_t window);
+G_GNUC_INTERNAL void stream_close_common(strid_t str, stream_result_t *result);
 #endif