9dd8e50f5a0e180f2b96931c016695a6fc36294e
[rodin/chimara.git] / libchimara / fileref.h
1 #ifndef FILEREF_H
2 #define FILEREF_H
3
4 #include <gtk/gtk.h>
5 #include "glk.h"
6
7 /**
8  * glk_fileref_struct:
9  *
10  * This is an opaque structure (see <link linkend="chimara-Opaque-Structures">
11  * Opaque Structures</link> and should not be accessed directly.
12  */
13 struct glk_fileref_struct
14 {
15         /*< private >*/
16         glui32 magic, rock;
17         /* Pointer to the list node in the global fileref list that contains this
18         fileref */
19         GList* fileref_list;
20         /* Fileref parameters */
21         gchar *filename; /* Always stored in the default filename encoding, not
22                 UTF8 or Latin-1 */
23         glui32 orig_filemode; /* Used to check if the user gets a fileref in read
24                 mode and then tries to open it in write mode */
25         glui32 usage;
26 };
27
28 G_GNUC_INTERNAL frefid_t fileref_new(gchar *filename, glui32 rock, glui32 usage, glui32 orig_filemode);
29 #endif