1 /*
2  * gsf-fwd.h:
3  *
4  * Copyright (C) 2002-2006 Jody Goldberg (jody@gnome.org)
5  * Copyright (C) 2013 Morten Welinder (terra@gnome.org)
6  *
7  * This program is free software; you can redistribute it and/or
8  * modify it under the terms of version 2.1 of the GNU Lesser General Public
9  * License as published by the Free Software Foundation.
10  *
11  * This program is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14  * GNU General Public License for more details.
15  *
16  * You should have received a copy of the GNU Lesser General Public License
17  * along with this program; if not, write to the Free Software
18  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301
19  * USA
20  */
21 
22 #ifndef GSF_FWD_H
23 #define GSF_FWD_H
24 
25 #include <glib.h>
26 #include <glib-object.h>
27 
28 G_BEGIN_DECLS
29 
30 /**
31  * GsfInput:
32  *
33  * Class representing an input stream.
34  */
35 typedef struct _GsfInput	GsfInput;
36 
37 /**
38  * GsfInfile:
39  *
40  * Class representing an input file.
41  */
42 typedef struct _GsfInfile	GsfInfile;
43 
44 /**
45  * GsfOutput:
46  *
47  * Class representing an output stream, counterpart to #GsfInput.
48  */
49 typedef struct _GsfOutput	GsfOutput;
50 
51 /**
52  * GsfOutfile:
53  *
54  * Class representing an output file, counterpart to #GsfInfile.
55  */
56 typedef struct _GsfOutfile	GsfOutfile;
57 
58 /**
59  * GsfDocProp:
60  *
61  * Class representing a properties of a document.
62  */
63 typedef struct _GsfDocProp	GsfDocProp;
64 
65 /**
66  * GsfDocMetaData:
67  *
68  * Class representing information about a document, such as creator and time of
69  * last modification.
70  */
71 typedef struct _GsfDocMetaData	GsfDocMetaData;
72 
73 /**
74  * GsfTimestamp:
75  * @date :	#GDate in local timezone
76  * @seconds :	#glong number of seconds since @date.
77  * @time_zone :	possibly blank #GString of the timezone
78  * @timet : as from mktime.
79  *
80  * A point in time.
81  */
82 typedef struct _GsfTimestamp	GsfTimestamp;
83 
84 /**
85  * gsf_off_t:
86  *
87  * Data type to represent offsets (positions) within a data stream.
88  *
89  * FIXME:
90  * gsf_off_t is really supposed to be the widest type off_t can be configured
91  * to on the platform
92  */
93 typedef gint64 gsf_off_t;
94 
95 /**
96  * GSF_OFF_T_FORMAT:
97  *
98  * The printf(3) conversion specifier to be used for printing values of type
99  * #gsf_off_t.
100  */
101 #define GSF_OFF_T_FORMAT	G_GINT64_FORMAT
102 
103 typedef struct _GsfXMLIn		GsfXMLIn;
104 typedef struct _GsfXMLInDoc		GsfXMLInDoc;
105 typedef struct _GsfXMLInNode		GsfXMLInNode;
106 typedef struct _GsfXMLInNS		GsfXMLInNS;
107 typedef struct _GsfXMLBlob		GsfXMLBlob;
108 typedef struct _GsfXMLOut		GsfXMLOut;
109 typedef struct _GsfXMLOutClass		GsfXMLOutClass;
110 
111 typedef struct _GsfBlob GsfBlob;
112 
113 G_END_DECLS
114 
115 #endif /* GSF_H */
116