1 /* vim: set sw=8: -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ 2 /* 3 * gsf-input-stdio.h: interface for use by the structured file layer to read raw data 4 * 5 * Copyright (C) 2002-2006 Jody Goldberg (jody@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_INPUT_STDIO_H 23 #define GSF_INPUT_STDIO_H 24 25 #include <gsf/gsf-fwd.h> 26 #include <gsf/gsf-input.h> 27 28 #include <stdio.h> 29 30 G_BEGIN_DECLS 31 32 #define GSF_INPUT_STDIO_TYPE (gsf_input_stdio_get_type ()) 33 #define GSF_INPUT_STDIO(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), GSF_INPUT_STDIO_TYPE, GsfInputStdio)) 34 #define GSF_IS_INPUT_STDIO(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), GSF_INPUT_STDIO_TYPE)) 35 36 typedef struct _GsfInputStdio GsfInputStdio; 37 38 GType gsf_input_stdio_get_type (void); 39 /* void gsf_input_stdio_register_type (GTypeModule *module); glib dynamic types are not thread safe */ 40 41 GsfInput *gsf_input_stdio_new (char const *filename, GError **err); 42 43 GsfInput *gsf_input_stdio_new_FILE (char const *filename, FILE *file, 44 gboolean keep_open); 45 46 G_END_DECLS 47 48 #endif /* GSF_INPUT_STDIO_H */ 49