libgsf-1.13.99/0000777000076500017500000000000010401600623010146 500000000000000libgsf-1.13.99/doc/0000777000076500017500000000000010401600622010712 500000000000000libgsf-1.13.99/doc/developer/0000777000076500017500000000000010401600622012677 500000000000000libgsf-1.13.99/doc/developer/blocksize.html0000644000076500017500000001347710355211257015514 00000000000000 MSOLE block size variations

Experiments with various block sizes in MS OLE

Small files

setup

I decided to test the following parameters:

results

Using all combinations, I used a slightly modified test-cp-msole program to create 168 files (84 doc files and 84 xls files). I tried to run all of them on each of the three platforms. Here are the results:

All these files either opened OK, or were reported as incorrect files. I haven't experienced crashes, with only one exception (see the next paragraph).

There were no differences between Excel and Word, they behaved both the same, with one exception: if a file with 8KB blocks was succesfully opened by Excel, then Word crashed on that file. (If the file was reported as incorrect, Word also said it's incorrect, without any crash.) The current libgsf code allows only block up to 4KB, so it's wise to keep this limitation.

When the header was padded to block size, it had never any influence whether it was padded by 0's or 0xff's.

Win 2000 and Win XP results

Both of these platforms behaved exactly the same:

The major version set (3 or 4) had no influence.

Header size had to be = block size. (Constant 512 B header didn't work for any block size != 512.)

With _cSectDir set, all block sizes worked. When _cSectDir was not set (0), only block sizes <= 512 worked.

(I hope the above text says unambiguously which files worked and which didn't.)

Win 98 results

The major version had to be 3. (When set to 4, no file worked, not even with block size 512B.)

Header size had to be constant 512. (When header size = block size, no block size != 512 worked.)

It had no influence whether _cSectDir was set or not.

Bigger files, tested on Win 2000 only

Block sizes bigger then 512

I wanted to verify that the header really has size 512. In other words, that the header still has only 109 metabat pointers, and then an XBAT block is used.

I needed a file bigger then about 28 MB. I created a 32MB file by Excel.

I copied it with the modified test-cp-msole in two configurations:

  1. block size 1024 B, _cSectDir set, major ver. 4, header padded by 0xff
  2. block size 1024 B, _cSectDir set, major ver. 3, header padded by 0
(I used a hex dump to verify that the file really has one XBAT block.)

Both of these files worked. I tried to save the file under another name, and re-open the file: it worked. The saved file had 512B blocks again; the major/minor version is set to 3/3e, which is the same as libgsf's default values.

Block sizes smaller then 512

part one

I prepared two test files: one had size about 767 KB, the other had 2 MB. (Using 256B blocks, the former size is big enough to use more than 256 B of the header, the later is big enough to have more then 109 metabat pointers.)

When I copied these files with 256 B blocks, they didn't work.

This proved that the header is 512 B long, even if that means that block 0 may not be used for data. (Well, I used it for data in the previous experiment, but it cannot be used generally.)

Thus I modified the code so that the header is not truncated for block sizes < 512. At the beginning of the BAT table, I marked the block 0 (or blocks 0,1,2 for block size 128) as belonging to XBAT.

With that modified code, I again copied both of the test files using block size 256, and it worked.

part two

Then I experimented with smaller small block sizes, using the modified code, as explained above. I used big block size 256, 128, 64, in combination with small block size 32 and 16. I copied the old small 14KB xls file. (6 combinations)

The ones with big block size 256 and 128 worked.

With big block size 64, excel crashed. Even explorer crashed when I selected that file (I haven't tried to open it, I just selected it: it probably tries to determine the author and title of the file.) Thus I conclude that the current test that block size has to be >= dirent size (128) is good to keep.

Conclusions and suggestions

I suggest to set _cSectDir always: it helps in certain situations and it never hurts.

There have to be a new instance variable, determining the offset of block 0. I prefer to call it block0_offset, not header_size, as the header data always take up exactly 512 B. This will be set at the begining. This determines whether the file will be compatible with Win 98 or Win 2000/XP. (Only files with 512B blocks can be compatible with both.) The default should be 2000/XP comaptibility as these are more common now.

(Previous versions of libgsf had block0_offset = MAX (block_size, 512), which is a mix of the two.)

With block0_offset > 512, the header should be padded with 0, as it's cleaner this way.

This is the most controversial proposal: we could set the major version to 4 when block0_offset is not 512. That doesn't break compatibility with MS and enables us to distinguish the two types for the future.


These experiments were conducted and the document written by Stepan Kasal around August 23, 2004. libgsf-1.13.99/doc/Makefile.am0000644000076500017500000000315310354545410012676 00000000000000## Process this file with automake to produce Makefile.in # The name of the module. DOC_MODULE=gsf # The top-level SGML file. DOC_MAIN_SGML_FILE=gsf-docs.sgml # The directory containing the source code. Relative to $(srcdir) DOC_SOURCE_DIR=../gsf # Extra options to pass to gtkdoc-scangobj SCANGOBJ_OPTIONS= --nogtkinit --type-init-func="g_type_init ()" # Extra options to supply to gtkdoc-scan SCAN_OPTIONS= # Extra options to supply to gtkdoc-mkdb MKDB_OPTIONS=--sgml-mode --output-format=xml # Extra options to supply to gtkdoc-fixref FIXXREF_OPTIONS= # Used for dependencies HFILE_GLOB=$(top_srcdir)/gsf/*.h CFILE_GLOB=$(top_srcdir)/gsf/*.c # Header files to ignore when scanning IGNORE_HFILES= \ biff-types.h \ gsf-command-context.h \ gsf-infile-msvba.h \ gsf-io-context.h \ gsf-output-transaction.h \ gsf-infile-ar.h \ gsf-infile-tar.h \ gsf-infile-tar.c \ gsf-outfile-tar.h \ gsf-outfile-tar.c EXTRA_HFILES = ../gsf-gnome/*.h # Images to copy into HTML directory HTML_IMAGES = # Extra SGML files that are included by $(DOC_MAIN_SGML_FILE) content_files = # Other files to distribute extra_files = # CFLAGS and LDFLAGS for compiling scan program. Only needed # if $(DOC_MODULE).types is non-empty. GTKDOC_CFLAGS = -I$(top_srcdir) $(LIBGSF_CFLAGS) GTKDOC_LIBS = $(top_builddir)/gsf/libgsf-1.la $(LIBGSF_LIBS) manpagedir = $(datadir)/man/man1 manpage_DATA = gsf-office-thumbnailer.1 if GTK_DOC_INSTALLED include $(top_srcdir)/gtk-doc.make CLEANFILES += gsf-scan.* .PHONY : dist-hook-local EXTRA_DIST += $(manpage_DATA) else EXTRA_DIST = $(manpage_DATA) endif EXTRA_DIST += developer/blocksize.html libgsf-1.13.99/doc/Makefile.in0000644000076500017500000005556110401577502012721 00000000000000# Makefile.in generated by automake 1.9.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. @SET_MAKE@ # -*- mode: makefile -*- #################################### # Everything below here is generic # #################################### srcdir = @srcdir@ top_srcdir = @top_srcdir@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ top_builddir = .. am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd INSTALL = @INSTALL@ install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \ $(srcdir)/version.xml.in $(top_srcdir)/gtk-doc.make subdir = doc ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ $(top_srcdir)/configure.in am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = $(top_builddir)/gsf-config.h CONFIG_CLEAN_FILES = version.xml SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; am__vpath_adj = case $$p in \ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ *) f=$$p;; \ esac; am__strip_dir = `echo $$p | sed -e 's|^.*/||'`; am__installdirs = "$(DESTDIR)$(manpagedir)" manpageDATA_INSTALL = $(INSTALL_DATA) DATA = $(manpage_DATA) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@ AMDEP_FALSE = @AMDEP_FALSE@ AMDEP_TRUE = @AMDEP_TRUE@ AMTAR = @AMTAR@ AR = @AR@ AS = @AS@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ BZ2_LIBS = @BZ2_LIBS@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CURRENT_MINUS_AGE = @CURRENT_MINUS_AGE@ CXX = @CXX@ CXXCPP = @CXXCPP@ CXXDEPMODE = @CXXDEPMODE@ CXXFLAGS = @CXXFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DLLTOOL = @DLLTOOL@ ECHO = @ECHO@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ ENABLE_GTK_DOC_FALSE = @ENABLE_GTK_DOC_FALSE@ ENABLE_GTK_DOC_TRUE = @ENABLE_GTK_DOC_TRUE@ EXEEXT = @EXEEXT@ F77 = @F77@ FFLAGS = @FFLAGS@ GCONFTOOL = @GCONFTOOL@ GCONF_SCHEMAS_INSTALL_FALSE = @GCONF_SCHEMAS_INSTALL_FALSE@ GCONF_SCHEMAS_INSTALL_TRUE = @GCONF_SCHEMAS_INSTALL_TRUE@ GCONF_SCHEMA_CONFIG_SOURCE = @GCONF_SCHEMA_CONFIG_SOURCE@ GCONF_SCHEMA_FILE_DIR = @GCONF_SCHEMA_FILE_DIR@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GTK_DOC_INSTALLED_FALSE = @GTK_DOC_INSTALLED_FALSE@ GTK_DOC_INSTALLED_TRUE = @GTK_DOC_INSTALLED_TRUE@ GTK_DOC_USE_LIBTOOL_FALSE = @GTK_DOC_USE_LIBTOOL_FALSE@ GTK_DOC_USE_LIBTOOL_TRUE = @GTK_DOC_USE_LIBTOOL_TRUE@ HAVE_LIBEXE_FALSE = @HAVE_LIBEXE_FALSE@ HAVE_LIBEXE_TRUE = @HAVE_LIBEXE_TRUE@ HTML_DIR = @HTML_DIR@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INSTOBJEXT = @INSTOBJEXT@ INTLLIBS = @INTLLIBS@ INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@ INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@ INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@ INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@ INTLTOOL_ICONV = @INTLTOOL_ICONV@ INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@ INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@ INTLTOOL_MERGE = @INTLTOOL_MERGE@ INTLTOOL_MSGFMT = @INTLTOOL_MSGFMT@ INTLTOOL_MSGMERGE = @INTLTOOL_MSGMERGE@ INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@ INTLTOOL_PERL = @INTLTOOL_PERL@ INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@ INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@ INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@ INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@ INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@ INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@ INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@ INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@ INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@ INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@ INTLTOOL_XGETTEXT = @INTLTOOL_XGETTEXT@ INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@ INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@ LDFLAGS = @LDFLAGS@ LIBEXE = @LIBEXE@ LIBGSF_CFLAGS = @LIBGSF_CFLAGS@ LIBGSF_GNOME_CFLAGS = @LIBGSF_GNOME_CFLAGS@ LIBGSF_GNOME_LIBS = @LIBGSF_GNOME_LIBS@ LIBGSF_LIBS = @LIBGSF_LIBS@ LIBGSF_MAJOR_VERSION = @LIBGSF_MAJOR_VERSION@ LIBGSF_MICRO_VERSION = @LIBGSF_MICRO_VERSION@ LIBGSF_MINOR_VERSION = @LIBGSF_MINOR_VERSION@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@ MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@ MAKEINFO = @MAKEINFO@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ OBJDUMP = @OBJDUMP@ OBJEXT = @OBJEXT@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ RANLIB = @RANLIB@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ VERSION_INFO = @VERSION_INFO@ WARN_CFLAGS = @WARN_CFLAGS@ WINDRES = @WINDRES@ WITH_GCONF_FALSE = @WITH_GCONF_FALSE@ WITH_GCONF_TRUE = @WITH_GCONF_TRUE@ WITH_LIBGSF_GNOME_FALSE = @WITH_LIBGSF_GNOME_FALSE@ WITH_LIBGSF_GNOME_TRUE = @WITH_LIBGSF_GNOME_TRUE@ WITH_PYTHON_FALSE = @WITH_PYTHON_FALSE@ WITH_PYTHON_TRUE = @WITH_PYTHON_TRUE@ WITH_WIN32_FALSE = @WITH_WIN32_FALSE@ WITH_WIN32_TRUE = @WITH_WIN32_TRUE@ XGETTEXT = @XGETTEXT@ Z_CPPFLAGS = @Z_CPPFLAGS@ Z_LIBS = @Z_LIBS@ ac_ct_AR = @ac_ct_AR@ ac_ct_AS = @ac_ct_AS@ ac_ct_CC = @ac_ct_CC@ ac_ct_CXX = @ac_ct_CXX@ ac_ct_DLLTOOL = @ac_ct_DLLTOOL@ ac_ct_F77 = @ac_ct_F77@ ac_ct_OBJDUMP = @ac_ct_OBJDUMP@ ac_ct_RANLIB = @ac_ct_RANLIB@ ac_ct_STRIP = @ac_ct_STRIP@ ac_ct_WINDRES = @ac_ct_WINDRES@ ac_pt_PKG_CONFIG = @ac_pt_PKG_CONFIG@ am__fastdepCC_FALSE = @am__fastdepCC_FALSE@ am__fastdepCC_TRUE = @am__fastdepCC_TRUE@ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ datadir = @datadir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ prefix = @prefix@ program_transform_name = @program_transform_name@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ # The name of the module. DOC_MODULE = gsf # The top-level SGML file. DOC_MAIN_SGML_FILE = gsf-docs.sgml # The directory containing the source code. Relative to $(srcdir) DOC_SOURCE_DIR = ../gsf # Extra options to pass to gtkdoc-scangobj SCANGOBJ_OPTIONS = --nogtkinit --type-init-func="g_type_init ()" # Extra options to supply to gtkdoc-scan SCAN_OPTIONS = # Extra options to supply to gtkdoc-mkdb MKDB_OPTIONS = --sgml-mode --output-format=xml # Extra options to supply to gtkdoc-fixref FIXXREF_OPTIONS = # Used for dependencies HFILE_GLOB = $(top_srcdir)/gsf/*.h CFILE_GLOB = $(top_srcdir)/gsf/*.c # Header files to ignore when scanning IGNORE_HFILES = \ biff-types.h \ gsf-command-context.h \ gsf-infile-msvba.h \ gsf-io-context.h \ gsf-output-transaction.h \ gsf-infile-ar.h \ gsf-infile-tar.h \ gsf-infile-tar.c \ gsf-outfile-tar.h \ gsf-outfile-tar.c EXTRA_HFILES = ../gsf-gnome/*.h # Images to copy into HTML directory HTML_IMAGES = # Extra SGML files that are included by $(DOC_MAIN_SGML_FILE) content_files = # Other files to distribute extra_files = # CFLAGS and LDFLAGS for compiling scan program. Only needed # if $(DOC_MODULE).types is non-empty. GTKDOC_CFLAGS = -I$(top_srcdir) $(LIBGSF_CFLAGS) GTKDOC_LIBS = $(top_builddir)/gsf/libgsf-1.la $(LIBGSF_LIBS) manpagedir = $(datadir)/man/man1 manpage_DATA = gsf-office-thumbnailer.1 @GTK_DOC_INSTALLED_TRUE@@GTK_DOC_USE_LIBTOOL_FALSE@GTKDOC_CC = $(CC) $(INCLUDES) $(AM_CFLAGS) $(CFLAGS) @GTK_DOC_INSTALLED_TRUE@@GTK_DOC_USE_LIBTOOL_TRUE@GTKDOC_CC = $(LIBTOOL) --mode=compile $(CC) $(INCLUDES) $(AM_CFLAGS) $(CFLAGS) @GTK_DOC_INSTALLED_TRUE@@GTK_DOC_USE_LIBTOOL_FALSE@GTKDOC_LD = $(CC) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) @GTK_DOC_INSTALLED_TRUE@@GTK_DOC_USE_LIBTOOL_TRUE@GTKDOC_LD = $(LIBTOOL) --mode=link $(CC) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) # We set GPATH here; this gives us semantics for GNU make # which are more like other make's VPATH, when it comes to # whether a source that is a target of one rule is then # searched for in VPATH/GPATH. # @GTK_DOC_INSTALLED_TRUE@GPATH = $(srcdir) @GTK_DOC_INSTALLED_TRUE@TARGET_DIR = $(HTML_DIR)/$(DOC_MODULE) @GTK_DOC_INSTALLED_FALSE@EXTRA_DIST = $(manpage_DATA) \ @GTK_DOC_INSTALLED_FALSE@ developer/blocksize.html @GTK_DOC_INSTALLED_TRUE@EXTRA_DIST = $(content_files) $(HTML_IMAGES) \ @GTK_DOC_INSTALLED_TRUE@ $(DOC_MAIN_SGML_FILE) \ @GTK_DOC_INSTALLED_TRUE@ $(DOC_MODULE)-sections.txt \ @GTK_DOC_INSTALLED_TRUE@ $(DOC_MODULE)-overrides.txt \ @GTK_DOC_INSTALLED_TRUE@ $(manpage_DATA) \ @GTK_DOC_INSTALLED_TRUE@ developer/blocksize.html @GTK_DOC_INSTALLED_TRUE@DOC_STAMPS = scan-build.stamp tmpl-build.stamp sgml-build.stamp html-build.stamp \ @GTK_DOC_INSTALLED_TRUE@ $(srcdir)/tmpl.stamp $(srcdir)/sgml.stamp $(srcdir)/html.stamp @GTK_DOC_INSTALLED_TRUE@SCANOBJ_FILES = \ @GTK_DOC_INSTALLED_TRUE@ $(DOC_MODULE).args \ @GTK_DOC_INSTALLED_TRUE@ $(DOC_MODULE).hierarchy \ @GTK_DOC_INSTALLED_TRUE@ $(DOC_MODULE).interfaces \ @GTK_DOC_INSTALLED_TRUE@ $(DOC_MODULE).prerequisites \ @GTK_DOC_INSTALLED_TRUE@ $(DOC_MODULE).signals @GTK_DOC_INSTALLED_TRUE@CLEANFILES = $(SCANOBJ_FILES) \ @GTK_DOC_INSTALLED_TRUE@ $(DOC_MODULE)-unused.txt $(DOC_STAMPS) \ @GTK_DOC_INSTALLED_TRUE@ gsf-scan.* all: all-am .SUFFIXES: $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/gtk-doc.make $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ && exit 0; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu doc/Makefile'; \ cd $(top_srcdir) && \ $(AUTOMAKE) --gnu doc/Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh version.xml: $(top_builddir)/config.status $(srcdir)/version.xml.in cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ mostlyclean-libtool: -rm -f *.lo clean-libtool: -rm -rf .libs _libs distclean-libtool: -rm -f libtool uninstall-info-am: install-manpageDATA: $(manpage_DATA) @$(NORMAL_INSTALL) test -z "$(manpagedir)" || $(mkdir_p) "$(DESTDIR)$(manpagedir)" @list='$(manpage_DATA)'; for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ f=$(am__strip_dir) \ echo " $(manpageDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(manpagedir)/$$f'"; \ $(manpageDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(manpagedir)/$$f"; \ done uninstall-manpageDATA: @$(NORMAL_UNINSTALL) @list='$(manpage_DATA)'; for p in $$list; do \ f=$(am__strip_dir) \ echo " rm -f '$(DESTDIR)$(manpagedir)/$$f'"; \ rm -f "$(DESTDIR)$(manpagedir)/$$f"; \ done tags: TAGS TAGS: ctags: CTAGS CTAGS: @GTK_DOC_INSTALLED_FALSE@dist-hook: distdir: $(DISTFILES) $(mkdir_p) $(distdir)/.. $(distdir)/developer @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ list='$(DISTFILES)'; for file in $$list; do \ case $$file in \ $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \ esac; \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ if test "$$dir" != "$$file" && test "$$dir" != "."; then \ dir="/$$dir"; \ $(mkdir_p) "$(distdir)$$dir"; \ else \ dir=''; \ fi; \ if test -d $$d/$$file; then \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ fi; \ cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ else \ test -f $(distdir)/$$file \ || cp -p $$d/$$file $(distdir)/$$file \ || exit 1; \ fi; \ done $(MAKE) $(AM_MAKEFLAGS) \ top_distdir="$(top_distdir)" distdir="$(distdir)" \ dist-hook check-am: all-am check: check-am @GTK_DOC_INSTALLED_FALSE@all-local: all-am: Makefile $(DATA) all-local installdirs: for dir in "$(DESTDIR)$(manpagedir)"; do \ test -z "$$dir" || $(mkdir_p) "$$dir"; \ done install: install-am install-exec: install-exec-am install-data: install-data-am uninstall: uninstall-am install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-am install-strip: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install mostlyclean-generic: clean-generic: -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." @GTK_DOC_INSTALLED_FALSE@uninstall-local: @GTK_DOC_INSTALLED_FALSE@install-data-local: @GTK_DOC_INSTALLED_FALSE@maintainer-clean-local: @GTK_DOC_INSTALLED_FALSE@clean-local: clean: clean-am clean-am: clean-generic clean-libtool clean-local mostlyclean-am distclean: distclean-am -rm -f Makefile distclean-am: clean-am distclean-generic distclean-libtool dvi: dvi-am dvi-am: html: html-am info: info-am info-am: install-data-am: install-data-local install-manpageDATA install-exec-am: install-info: install-info-am install-man: installcheck-am: maintainer-clean: maintainer-clean-am -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic \ maintainer-clean-local mostlyclean: mostlyclean-am mostlyclean-am: mostlyclean-generic mostlyclean-libtool pdf: pdf-am pdf-am: ps: ps-am ps-am: uninstall-am: uninstall-info-am uninstall-local uninstall-manpageDATA .PHONY: all all-am all-local check check-am clean clean-generic \ clean-libtool clean-local dist-hook distclean \ distclean-generic distclean-libtool distdir dvi dvi-am html \ html-am info info-am install install-am install-data \ install-data-am install-data-local install-exec \ install-exec-am install-info install-info-am install-man \ install-manpageDATA install-strip installcheck installcheck-am \ installdirs maintainer-clean maintainer-clean-generic \ maintainer-clean-local mostlyclean mostlyclean-generic \ mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ uninstall-info-am uninstall-local uninstall-manpageDATA @ENABLE_GTK_DOC_TRUE@@GTK_DOC_INSTALLED_TRUE@all-local: html-build.stamp #### scan #### @ENABLE_GTK_DOC_TRUE@@GTK_DOC_INSTALLED_TRUE@scan-build.stamp: $(HFILE_GLOB) $(CFILE_GLOB) @ENABLE_GTK_DOC_TRUE@@GTK_DOC_INSTALLED_TRUE@ @echo 'gtk-doc: Scanning header files' @ENABLE_GTK_DOC_TRUE@@GTK_DOC_INSTALLED_TRUE@ @-chmod -R u+w $(srcdir) @ENABLE_GTK_DOC_TRUE@@GTK_DOC_INSTALLED_TRUE@ if grep -l '^..*$$' $(srcdir)/$(DOC_MODULE).types > /dev/null 2>&1 ; then \ @ENABLE_GTK_DOC_TRUE@@GTK_DOC_INSTALLED_TRUE@ CC="$(GTKDOC_CC)" LD="$(GTKDOC_LD)" CFLAGS="$(GTKDOC_CFLAGS)" LDFLAGS="$(GTKDOC_LIBS)" gtkdoc-scangobj $(SCANGOBJ_OPTIONS) --module=$(DOC_MODULE) --output-dir=$(srcdir) ; \ @ENABLE_GTK_DOC_TRUE@@GTK_DOC_INSTALLED_TRUE@ else \ @ENABLE_GTK_DOC_TRUE@@GTK_DOC_INSTALLED_TRUE@ cd $(srcdir) ; \ @ENABLE_GTK_DOC_TRUE@@GTK_DOC_INSTALLED_TRUE@ for i in $(SCANOBJ_FILES) ; do \ @ENABLE_GTK_DOC_TRUE@@GTK_DOC_INSTALLED_TRUE@ test -f $$i || touch $$i ; \ @ENABLE_GTK_DOC_TRUE@@GTK_DOC_INSTALLED_TRUE@ done \ @ENABLE_GTK_DOC_TRUE@@GTK_DOC_INSTALLED_TRUE@ fi @ENABLE_GTK_DOC_TRUE@@GTK_DOC_INSTALLED_TRUE@ cd $(srcdir) && \ @ENABLE_GTK_DOC_TRUE@@GTK_DOC_INSTALLED_TRUE@ gtkdoc-scan --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR) --ignore-headers="$(IGNORE_HFILES)" $(SCAN_OPTIONS) $(EXTRA_HFILES) @ENABLE_GTK_DOC_TRUE@@GTK_DOC_INSTALLED_TRUE@ touch scan-build.stamp @ENABLE_GTK_DOC_TRUE@@GTK_DOC_INSTALLED_TRUE@$(DOC_MODULE)-decl.txt $(SCANOBJ_FILES): scan-build.stamp @ENABLE_GTK_DOC_TRUE@@GTK_DOC_INSTALLED_TRUE@ @true #### templates #### @ENABLE_GTK_DOC_TRUE@@GTK_DOC_INSTALLED_TRUE@tmpl-build.stamp: $(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt @ENABLE_GTK_DOC_TRUE@@GTK_DOC_INSTALLED_TRUE@ @echo 'gtk-doc: Rebuilding template files' @ENABLE_GTK_DOC_TRUE@@GTK_DOC_INSTALLED_TRUE@ @-chmod -R u+w $(srcdir) @ENABLE_GTK_DOC_TRUE@@GTK_DOC_INSTALLED_TRUE@ cd $(srcdir) && gtkdoc-mktmpl --module=$(DOC_MODULE) $(MKTMPL_OPTIONS) @ENABLE_GTK_DOC_TRUE@@GTK_DOC_INSTALLED_TRUE@ touch tmpl-build.stamp @ENABLE_GTK_DOC_TRUE@@GTK_DOC_INSTALLED_TRUE@tmpl.stamp: tmpl-build.stamp @ENABLE_GTK_DOC_TRUE@@GTK_DOC_INSTALLED_TRUE@ @true #### xml #### @ENABLE_GTK_DOC_TRUE@@GTK_DOC_INSTALLED_TRUE@sgml-build.stamp: tmpl.stamp $(CFILE_GLOB) $(srcdir)/tmpl/*.sgml $(expand_content_files) @ENABLE_GTK_DOC_TRUE@@GTK_DOC_INSTALLED_TRUE@ @echo 'gtk-doc: Building XML' @ENABLE_GTK_DOC_TRUE@@GTK_DOC_INSTALLED_TRUE@ @-chmod -R u+w $(srcdir) @ENABLE_GTK_DOC_TRUE@@GTK_DOC_INSTALLED_TRUE@ cd $(srcdir) && \ @ENABLE_GTK_DOC_TRUE@@GTK_DOC_INSTALLED_TRUE@ gtkdoc-mkdb --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR) --output-format=xml --expand-content-files="$(expand_content_files)" --main-sgml-file=$(DOC_MAIN_SGML_FILE) $(MKDB_OPTIONS) @ENABLE_GTK_DOC_TRUE@@GTK_DOC_INSTALLED_TRUE@ touch sgml-build.stamp @ENABLE_GTK_DOC_TRUE@@GTK_DOC_INSTALLED_TRUE@sgml.stamp: sgml-build.stamp @ENABLE_GTK_DOC_TRUE@@GTK_DOC_INSTALLED_TRUE@ @true #### html #### @ENABLE_GTK_DOC_TRUE@@GTK_DOC_INSTALLED_TRUE@html-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files) @ENABLE_GTK_DOC_TRUE@@GTK_DOC_INSTALLED_TRUE@ @echo 'gtk-doc: Building HTML' @ENABLE_GTK_DOC_TRUE@@GTK_DOC_INSTALLED_TRUE@ @-chmod -R u+w $(srcdir) @ENABLE_GTK_DOC_TRUE@@GTK_DOC_INSTALLED_TRUE@ rm -rf $(srcdir)/html @ENABLE_GTK_DOC_TRUE@@GTK_DOC_INSTALLED_TRUE@ mkdir $(srcdir)/html @ENABLE_GTK_DOC_TRUE@@GTK_DOC_INSTALLED_TRUE@ cd $(srcdir)/html && gtkdoc-mkhtml $(DOC_MODULE) ../$(DOC_MAIN_SGML_FILE) @ENABLE_GTK_DOC_TRUE@@GTK_DOC_INSTALLED_TRUE@ test "x$(HTML_IMAGES)" = "x" || ( cd $(srcdir) && cp $(HTML_IMAGES) html ) @ENABLE_GTK_DOC_TRUE@@GTK_DOC_INSTALLED_TRUE@ @echo 'gtk-doc: Fixing cross-references' @ENABLE_GTK_DOC_TRUE@@GTK_DOC_INSTALLED_TRUE@ cd $(srcdir) && gtkdoc-fixxref --module-dir=html --html-dir=$(HTML_DIR) $(FIXXREF_OPTIONS) @ENABLE_GTK_DOC_TRUE@@GTK_DOC_INSTALLED_TRUE@ touch html-build.stamp @ENABLE_GTK_DOC_FALSE@@GTK_DOC_INSTALLED_TRUE@all-local: ############## @GTK_DOC_INSTALLED_TRUE@clean-local: @GTK_DOC_INSTALLED_TRUE@ rm -f *~ *.bak @GTK_DOC_INSTALLED_TRUE@ rm -rf .libs @GTK_DOC_INSTALLED_TRUE@maintainer-clean-local: clean @GTK_DOC_INSTALLED_TRUE@ cd $(srcdir) && rm -rf xml html $(DOC_MODULE)-decl-list.txt $(DOC_MODULE)-decl.txt @GTK_DOC_INSTALLED_TRUE@install-data-local: @GTK_DOC_INSTALLED_TRUE@ installfiles=`echo $(srcdir)/html/*`; \ @GTK_DOC_INSTALLED_TRUE@ if test "$$installfiles" = '$(srcdir)/html/*'; \ @GTK_DOC_INSTALLED_TRUE@ then echo '-- Nothing to install' ; \ @GTK_DOC_INSTALLED_TRUE@ else \ @GTK_DOC_INSTALLED_TRUE@ $(mkinstalldirs) $(DESTDIR)$(TARGET_DIR); \ @GTK_DOC_INSTALLED_TRUE@ for i in $$installfiles; do \ @GTK_DOC_INSTALLED_TRUE@ echo '-- Installing '$$i ; \ @GTK_DOC_INSTALLED_TRUE@ $(INSTALL_DATA) $$i $(DESTDIR)$(TARGET_DIR); \ @GTK_DOC_INSTALLED_TRUE@ done; \ @GTK_DOC_INSTALLED_TRUE@ echo '-- Installing $(srcdir)/html/index.sgml' ; \ @GTK_DOC_INSTALLED_TRUE@ $(INSTALL_DATA) $(srcdir)/html/index.sgml $(DESTDIR)$(TARGET_DIR) || :; \ @GTK_DOC_INSTALLED_TRUE@ fi @GTK_DOC_INSTALLED_TRUE@uninstall-local: @GTK_DOC_INSTALLED_TRUE@ rm -f $(DESTDIR)$(TARGET_DIR)/* # # Require gtk-doc when making dist # @ENABLE_GTK_DOC_TRUE@@GTK_DOC_INSTALLED_TRUE@dist-check-gtkdoc: @ENABLE_GTK_DOC_FALSE@@GTK_DOC_INSTALLED_TRUE@dist-check-gtkdoc: @ENABLE_GTK_DOC_FALSE@@GTK_DOC_INSTALLED_TRUE@ @echo "*** gtk-doc must be installed and enabled in order to make dist" @ENABLE_GTK_DOC_FALSE@@GTK_DOC_INSTALLED_TRUE@ @false @GTK_DOC_INSTALLED_TRUE@dist-hook: dist-check-gtkdoc dist-hook-local @GTK_DOC_INSTALLED_TRUE@ mkdir $(distdir)/tmpl @GTK_DOC_INSTALLED_TRUE@ mkdir $(distdir)/xml @GTK_DOC_INSTALLED_TRUE@ mkdir $(distdir)/html @GTK_DOC_INSTALLED_TRUE@ -cp $(srcdir)/tmpl/*.sgml $(distdir)/tmpl @GTK_DOC_INSTALLED_TRUE@ -cp $(srcdir)/xml/*.xml $(distdir)/xml @GTK_DOC_INSTALLED_TRUE@ -cp $(srcdir)/html/* $(distdir)/html @GTK_DOC_INSTALLED_TRUE@ if test -f $(srcdir)/$(DOC_MODULE).types; then \ @GTK_DOC_INSTALLED_TRUE@ cp $(srcdir)/$(DOC_MODULE).types $(distdir)/$(DOC_MODULE).types; \ @GTK_DOC_INSTALLED_TRUE@ fi @GTK_DOC_INSTALLED_TRUE@.PHONY : dist-hook-local @GTK_DOC_INSTALLED_TRUE@.PHONY : dist-hook-local # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: libgsf-1.13.99/doc/version.xml.in0000644000076500017500000000001710043230003013432 00000000000000@GLIB_VERSION@ libgsf-1.13.99/doc/gsf-docs.sgml0000644000076500017500000001531110333416775013242 00000000000000 ]> GSF Reference Manual GSF: Introduction The GNOME Structured File Library (GSF) is an I/O abstraction for reading/writing compound files. GSF is released under the GNU Lesser General Public License (GNU LGPL), which allows for flexible licensing of client applications. GSF: History GSF was written as part of the Gnumeric project. It started in 2002 as a replacement for libole2 which Gnumeric was using to handle the Microsoft Excel file format, as libole2's code had become difficult to maintain and was difficult to generalize. GSF was designed to be a more general library for dealing with a number of different types of structured data files and streams. With the release of Gnumeric 1.1.6 (July 2002), Gnumeric used GSF and libole2 was orphaned. GSF: Dependencies GSF depends on the following libraries: GLib A general-purpose utility library, not specific to graphical user interfaces. GLib provides many useful data types, macros, type conversions, string utilities, file utilities, a main loop abstraction, and so on. Libxml2 A library that provides a parser and toolkit for XML, the Extensible Markup Language. XML is a metalanguage used to define markup languages (text languages where structure and semantics are added to the content using extra "markup" information). The core GSF library can be built to also utilize the following libraries: zlib A data compression library that implements the DEFLATE algorithm used in gzip. libbz2 A data compression library that implements the algorithm used in bzip2. A separate GSF library can be built that offers additional functionality for use in the GNOME desktop environment. That library has the following additional requirements: libbonobo-2.0 Bonobo is the GNOME architecture for creating reusable software components and compound documents. gnome-vfs-2.0 GnomeVFS is a filesystem abstraction library that allows applications plugable transparent access to a variety of "real" filesystems, including networked filesystems like WebDAV, storage on devices like digital cameras, to the local filesystem. Projects using GSF GSF is now also being used by other projects than Gnumeric, including KWord The word processor application of KOffice, the integrated office suite for KDE, the K Desktop Environment. librsvg A library to support the SVG scalable vector graphics format. libwpd A library for importing WordPerfect documents. planner A project management application. API Reference The core of GSF's API deals with basic I/O, an abstraction layer that provides a uniform interface to several mechanisms that provide streams of data and a set of parsers for various structured types of data streams. Basic Input/Output &GsfInput; &GsfOutput; Stream Sources &GsfInfile; &GsfOutfile; &GsfStdio; &GsfMemory; &GsfIOChannel; &GsfGnomevfs; &GsfBonobo; Stream Parsers &GsfText; &GsfXml; &GsfZip; &GsfCompression; &GsfMsole; &GsfMetadata; &GsfOpenDocument; &GsfBlob; &GsfClipData; &GsfStructuredBlob; Miscellaneous &GsfUtils; &TreeIndex; libgsf-1.13.99/doc/gsf-sections.txt0000644000076500017500000003636010401352555014014 00000000000000

Input from unstructured files input GsfInput gsf_input_read gsf_input_tell gsf_input_seek gsf_input_container gsf_input_dup gsf_input_size gsf_input_eof gsf_input_remaining gsf_input_error_id gsf_input_sibling gsf_input_error gsf_input_name gsf_input_set_name_from_filename GsfInputProxy gsf_input_proxy_new gsf_input_proxy_new_section gsf_input_copy gsf_input_uncompress GSF_INPUT_TYPE GSF_INPUT GSF_IS_INPUT GSF_INPUT_CLASS GSF_IS_INPUT_CLASS GsfInputClass gsf_input_get_type GSF_INPUT_PROXY GSF_INPUT_PROXY_TYPE GSF_IS_INPUT_PROXY gsf_input_proxy_get_type gsf_input_set_name gsf_input_set_container gsf_input_set_size gsf_input_seek_emulate
Output to unstructured files output GsfOutput gsf_output_container gsf_output_size gsf_output_close gsf_output_tell gsf_output_seek gsf_output_write gsf_output_puts gsf_output_printf gsf_output_vprintf gsf_output_name gsf_output_set_name_from_filename gsf_output_error_id gsf_output_set_error gsf_output_error gsf_output_is_closed gsf_output_wrap gsf_output_unwrap GSF_OUTPUT_TYPE GSF_OUTPUT GSF_IS_OUTPUT GSF_OUTPUT_CLASS GSF_IS_OUTPUT_CLASS GsfOutfileClass gsf_output_get_type gsf_output_set_name gsf_output_set_container
Infile reading structed files infile GsfInfile gsf_infile_num_children gsf_infile_child_by_index gsf_infile_child_by_name gsf_infile_child_by_vname gsf_infile_name_by_index GSF_INFILE_TYPE GSF_INFILE GSF_IS_INFILE GSF_INFILE_CLASS GSF_IS_INFILE_CLASS GsfInfileClass gsf_infile_get_type
Outfile writing structed files outfile GsfOutfile gsf_outfile_new_child gsf_outfile_new_child_full gsf_outfile_new_child_varg GSF_OUTFILE_TYPE GSF_OUTFILE GSF_IS_OUTFILE GSF_OUTFILE_CLASS GSF_IS_OUTFILE_CLASS GsfOutputClass gsf_outfile_get_type
Reading and Writing from local files and directories stdio GsfInputStdio gsf_input_stdio_new gsf_input_stdio_new_FILE GsfOutputStdio gsf_output_stdio_new gsf_output_stdio_new_full gsf_output_stdio_new_valist gsf_output_stdio_new_FILE GsfOutfileStdio gsf_outfile_stdio_new gsf_outfile_stdio_new_full gsf_outfile_stdio_new_valist GsfInfileStdio gsf_infile_stdio_new GSF_INPUT_STDIO_TYPE GSF_INPUT_STDIO GSF_IS_INPUT_STDIO gsf_input_stdio_get_type GSF_IS_OUTPUT_STDIO GSF_OUTPUT_STDIO GSF_OUTPUT_STDIO_TYPE gsf_output_stdio_get_type GSF_IS_INFILE_STDIO GSF_INFILE_STDIO GSF_INFILE_STDIO_TYPE gsf_infile_stdio_get_type GSF_IS_OUTFILE_STDIO GSF_OUTFILE_STDIO GSF_OUTFILE_STDIO_TYPE gsf_outfile_stdio_get_type
memory GsfInputMemory gsf_input_mmap_new gsf_input_memory_new gsf_input_memory_new_clone gsf_input_memory_new_from_iochannel GsfOutputMemory gsf_output_memory_get_bytes gsf_output_memory_get_type gsf_output_memory_new GSF_INPUT_MEMORY_TYPE GSF_INPUT_MEMORY GSF_IS_INPUT_MEMORY gsf_input_memory_get_type GSF_OUTPUT_MEMORY_TYPE GSF_OUTPUT_MEMORY GSF_IS_OUTPUT_MEMORY gsf_output_memory_get_type GSF_SHARED_MEMORY_TYPE GSF_SHARED_MEMORY GSF_IS_SHARED_MEMORY gsf_shared_memory_get_type GsfSharedMemory gsf_shared_memory_new gsf_shared_memory_mmapped_new
GnomeVFS gnome-vfs GsfInputGnomeVFS gsf_input_gnomevfs_new gsf_input_gnomevfs_new_uri gsf_input_gnomevfs_needs_local_copy GsfOutputGnomeVFS gsf_output_gnomevfs_new gsf_output_gnomevfs_new_uri GSF_INPUT_GNOMEVFS_TYPE GSF_INPUT_GNOMEVFS GSF_IS_INPUT_GNOMEVFS gsf_input_gnomevfs_get_type GSF_OUTPUT_GNOMEVFS_TYPE GSF_OUTPUT_GNOMEVFS GSF_IS_OUTPUT_GNOMEVFS gsf_output_gnomevfs_get_type
Compression compression GsfInputGZip gsf_input_gzip_new gsf_input_memory_new_from_bzip GsfOutputGZip gsf_output_gzip_new GsfOutputBzip gsf_output_bzip_new GSF_INPUT_GZIP_TYPE GSF_INPUT_GZIP GSF_IS_INPUT_GZIP gsf_input_gzip_get_type GSF_OUTPUT_GZIP_TYPE GSF_OUTPUT_GZIP GSF_IS_OUTPUT_GZIP gsf_output_gzip_get_type GSF_OUTPUT_BZIP_TYPE GSF_OUTPUT_BZIP GSF_IS_OUTPUT_BZIP gsf_output_bzip_get_type
Text text GsfInputTextline gsf_input_textline_new gsf_input_textline_ascii_gets gsf_input_textline_utf8_gets GsfOutputIconv gsf_output_iconv_new GsfOutputCsv gsf_output_csv_write_eol gsf_output_csv_write_field GsfOutputCsvQuotingMode GSF_INPUT_TEXTLINE_TYPE GSF_INPUT_TEXTLINE GSF_IS_INPUT_TEXTLINE gsf_input_textline_get_type GSF_OUTPUT_ICONV_TYPE GSF_OUTPUT_ICONV GSF_IS_OUTPUT_ICONV GsfOutputIconvClass gsf_output_iconv_get_type GSF_OUTPUT_CSV_TYPE GSF_OUTPUT_CSV GSF_IS_OUTPUT_CSV GsfOutputCsvClass gsf_output_csv_get_type GSF_OUTPUT_CSV_QUOTING_MODE_TYPE gsf_output_csv_quoting_mode_get_type
MS OLE2 msole GsfInfileMSOle gsf_infile_msole_new gsf_infile_msole_get_class_id GsfOutfileMSOle gsf_outfile_msole_new gsf_outfile_msole_new_full gsf_outfile_msole_set_class_id gsf_msole_metadata_read gsf_msole_metadata_write gsf_msole_iconv_open_codepages_for_export gsf_msole_iconv_open_codepage_for_import gsf_msole_iconv_open_for_export gsf_msole_iconv_open_codepage_for_export gsf_msole_iconv_open_for_import gsf_msole_iconv_win_codepage gsf_msole_codepage_to_lid gsf_msole_lid_to_codepage gsf_msole_lid_to_codepage_str gsf_msole_lid_for_language gsf_msole_language_for_lid gsf_msole_inflate GSF_INFILE_MSOLE_TYPE GSF_INFILE_MSOLE GSF_IS_INFILE_MSOLE gsf_infile_msole_get_type GSF_OUTFILE_MSOLE_TYPE GSF_OUTFILE_MSOLE GSF_IS_OUTFILE_MSOLE gsf_outfile_msole_get_type OLE_HEADER_START_BAT OLE_HEADER_MAJOR_VER OLE_HEADER_METABAT_SIZE OLE_HEADER_DIRENT_START OLE_HEADER_NUM_SBAT OLE_HEADER_BB_SHIFT OLE_HEADER_CSECTDIR OLE_HEADER_NUM_BAT OLE_HEADER_THRESHOLD OLE_HEADER_METABAT_BLOCK OLE_HEADER_SBAT_START OLE_HEADER_SIGNATURE OLE_HEADER_BYTE_ORDER OLE_HEADER_SB_SHIFT OLE_HEADER_NUM_METABAT OLE_HEADER_SIZE OLE_HEADER_CLSID OLE_HEADER_MINOR_VER OLE_DEFAULT_BB_SHIFT OLE_DEFAULT_SB_SHIFT DIRENT_DETAILS_SIZE DIRENT_SIZE DIRENT_NAME_LEN DIRENT_TYPE_PROPERTY DIRENT_TYPE_FILE DIRENT_MAGIC_END DIRENT_TYPE_DIR DIRENT_MAX_NAME_SIZE DIRENT_FILE_SIZE DIRENT_FIRSTBLOCK DIRENT_TYPE_INVALID DIRENT_USERFLAGS DIRENT_COLOUR DIRENT_MODIFY_TIME DIRENT_TYPE_LOCKBYTES DIRENT_CREATE_TIME DIRENT_PREV DIRENT_NEXT DIRENT_CHILD DIRENT_TYPE DIRENT_CLSID DIRENT_TYPE_ROOTDIR BAT_MAGIC_METABAT BAT_MAGIC_BAT BAT_INDEX_SIZE BAT_MAGIC_END_OF_CHAIN BAT_MAGIC_UNUSED
gsf-opendoc-utils gsf_opendoc_metadata_read gsf_opendoc_metadata_subtree gsf_opendoc_metadata_write
gsf-blob GsfBlob GsfBlobClass GsfBlob gsf_blob_new gsf_blob_get_size gsf_blob_peek_data GSF_BLOB GSF_IS_BLOB GSF_TYPE_BLOB GSF_BLOB_CLASS GSF_IS_BLOB_CLASS GSF_BLOB_GET_CLASS gsf_blob_get_type GsfBlobPrivate
gsf-clip-data GsfClipFormat GsfClipFormatWindows GsfClipData GsfClipDataClass GsfClipData gsf_clip_data_new gsf_clip_data_get_format gsf_clip_data_get_data_blob gsf_clip_data_get_windows_clipboard_format gsf_clip_data_peek_real_data GSF_CLIP_DATA GSF_IS_CLIP_DATA GSF_TYPE_CLIP_DATA GSF_CLIP_DATA_CLASS GSF_IS_CLIP_DATA_CLASS GSF_CLIP_DATA_GET_CLASS GsfClipDataPrivate gsf_clip_data_get_type
Zip zip GsfInfileZip gsf_infile_zip_new GsfOutfileZip gsf_outfile_zip_new gsf_outfile_zip_set_compression_method GSF_INFILE_ZIP_TYPE GSF_INFILE_ZIP GSF_IS_INFILE_ZIP gsf_infile_zip_get_type GSF_OUTFILE_ZIP_TYPE GSF_OUTFILE_ZIP GSF_IS_OUTFILE_ZIP gsf_outfile_zip_get_type GsfZipDirent gsf_zip_dirent_new gsf_zip_dirent_free GsfZipVDir gsf_vdir_free gsf_vdir_new gsf_vdir_add_child ZIP_DIRENT_USIZE ZIP_DIRENT_OFFSET GsfZipCompressionMethod ZIP_FILE_HEADER_NAME_SIZE ZZIP_IS_STREAMED ZIP_FILE_HEADER_EXTRACT ZIP_TRAILER_SIZE ZIP_HEADER_TIME ZIP_FILE_HEADER_SIZE ZZIP_IS_ENCRYPTED ZIP_HEADER_VERSION ZIP_BUF_SIZE ZIP_DIRENT_CRC32 ZIP_HEADER_COMP_SIZE ZIP_DIRENT_COMPR_METHOD ZIP_DIRENT_FILE_TYPE ZIP_FILE_HEADER_EXTRAS_SIZE ZIP_DIRENT_EXTRACT ZIP_DIRENT_FILE_MODE ZIP_DIRENT_FLAGS ZIP_FILE_HEADER_CSIZE ZIP_TRAILER_DIR_SIZE ZIP_TRAILER_COMMENT_SIZE ZIP_TRAILER_ENTRIES ZIP_NAME_SEPARATOR ZIP_HEADER_SIZE ZIP_HEADER_CRC ZIP_FILE_HEADER_FLAGS ZIP_DIRENT_EXTRAS_SIZE ZIP_HEADER_COMP_METHOD ZZIP_IS_COMPRLEVEL ZIP_DIRENT_DOSTIME ZIP_DIRENT_ENCODER ZIP_HEADER_OS ZIP_DIRENT_COMMENT_SIZE ZIP_FILE_HEADER_CRC32 ZIP_HEADER_FLAGS ZIP_TRAILER_DISK ZIP_FILE_HEADER_USIZE ZIP_TRAILER_TOTAL_ENTRIES ZIP_HEADER_NAME_LEN ZIP_HEADER_UNCOMP_SIZE ZIP_TRAILER_DIR_DISK ZIP_DIRENT_CSIZE ZIP_TRAILER_DIR_POS ZIP_BLOCK_SIZE ZIP_DIRENT_NAME_SIZE ZIP_DIRENT_SIZE ZIP_DIRENT_DISKSTART ZIP_HEADER_EXTRA_LEN ZIP_FILE_HEADER_COMPR_METHOD ZIP_FILE_HEADER_DOSTIME
GIOChannel iochannel GsfOutputIOChannel gsf_output_iochannel_new GSF_OUTPUT_IOCHANNEL_TYPE GSF_OUTPUT_IOCHANNEL GSF_IS_OUTPUT_IOCHANNEL gsf_output_iochannel_get_type
Bononbo bonobo GsfInputBonobo gsf_input_bonobo_new GsfOutputBonobo gsf_output_bonobo_new GsfSharedBonoboStream gsf_shared_bonobo_stream_new GSF_INPUT_BONOBO_TYPE GSF_INPUT_BONOBO GSF_IS_INPUT_BONOBO gsf_input_bonobo_get_type GSF_OUTPUT_BONOBO_TYPE GSF_OUTPUT_BONOBO GSF_IS_OUTPUT_BONOBO gsf_output_bonobo_get_type GSF_SHARED_BONOBO_STREAM_TYPE GSF_SHARED_BONOBO_STREAM GSF_IS_SHARED_BONOBO_STREAM gsf_shared_bonobo_stream_get_type
XML and libxml xml GsfXMLIn GsfXMLInDoc GsfXMLInUnknownFunc GsfXMLInNS GsfXMLInNode GsfXMLInExtDtor GsfXMLContent GsfXMLBlob GSF_XML_IN_NODE_FULL GSF_XML_IN_NODE GSF_XML_IN_NODE_END GSF_XML_IN_NS gsf_xml_in_doc_new gsf_xml_in_doc_free gsf_xml_in_doc_parse gsf_xml_in_doc_set_unknown_handler gsf_xml_in_push_state gsf_xml_in_namecmp gsf_xml_in_check_ns GsfXMLOut gsf_xml_out_new gsf_xml_out_set_doc_type gsf_xml_out_start_element gsf_xml_out_end_element gsf_xml_out_add_cstr gsf_xml_out_add_cstr_unchecked gsf_xml_out_add_bool gsf_xml_out_add_int gsf_xml_out_add_uint gsf_xml_out_add_float gsf_xml_out_add_enum gsf_xml_out_add_color gsf_xml_out_add_base64 gsf_xml_out_add_gvalue gsf_xml_out_simple_element gsf_xml_out_simple_float_element gsf_xml_out_simple_int_element gsf_xml_parser_context gsf_xml_gvalue_from_str gsf_xmlDocFormatDump GSF_XML_OUT_TYPE GSF_XML_OUT GSF_IS_XML_OUT gsf_xml_out_get_type
Structured Blobs blob GsfStructuredBlob gsf_structured_blob_write gsf_structured_blob_read GSF_STRUCTURED_BLOB_TYPE GSF_STRUCTURED_BLOB GSF_IS_STRUCTURED_BLOB gsf_structured_blob_get_type
utils gsf_init gsf_shutdown gsf_init_dynamic gsf_shutdown_dynamic libgsf_major_version libgsf_minor_version libgsf_micro_version GSF_CLASS GSF_CLASS_FULL GSF_CLASS_ABSTRACT GSF_INTERFACE GSF_INTERFACE_FULL GSF_DYNAMIC_CLASS GSF_DYNAMIC_CLASS_FULL GSF_DYNAMIC_CLASS_ABSTRACT GSF_DYNAMIC_INTERFACE GSF_DYNAMIC_INTERFACE_FULL GSF_PARAM_STATIC GSF_ERROR GsfError gsf_error_quark gsf_mem_dump gsf_input_dump GSF_OFF_T_FORMAT gsf_off_t gsf_filename_to_utf8 gsf_iconv_close gsf_extension_pointer gsf_base64_encode_simple gsf_base64_encode_close gsf_base64_encode_step gsf_base64_decode_simple gsf_base64_decode_step GSF_LE_GET_GINT8 GSF_LE_GET_GUINT64 GSF_LE_GET_GINT16 GSF_LE_GET_GUINT8 GSF_LE_GET_GINT32 GSF_LE_GET_GUINT16 GSF_LE_GET_GUINT32 GSF_LE_GET_GINT64 gsf_le_get_guint64 GSF_LE_GET_FLOAT gsf_le_get_float GSF_LE_GET_DOUBLE gsf_le_get_double GSF_LE_SET_GUINT8 GSF_LE_SET_GUINT16 GSF_LE_SET_GUINT32 GSF_LE_SET_GINT8 GSF_LE_SET_GINT16 GSF_LE_SET_GINT32 GSF_LE_SET_GINT64 GSF_LE_SET_GUINT64 GSF_LE_SET_FLOAT GSF_LE_SET_DOUBLE gsf_le_set_float gsf_le_set_double GsfTimestamp gsf_timestamp_copy gsf_timestamp_free gsf_timestamp_as_string gsf_timestamp_parse gsf_timestamp_hash gsf_timestamp_equal gsf_value_set_timestamp VAL_IS_GSF_TIMESTAMP GSF_TIMESTAMP_TYPE gsf_timestamp_get_type gsf_doc_prop_swap_val gsf_property_settings_collect gsf_property_settings_collect_valist gsf_property_settings_free
metadata GsfDocMetaData gsf_doc_meta_data_new gsf_doc_meta_data_lookup gsf_doc_meta_data_insert gsf_doc_meta_data_remove gsf_doc_meta_data_steal gsf_doc_meta_data_store gsf_doc_meta_data_foreach gsf_doc_meta_data_size GsfDocProp gsf_doc_prop_new gsf_doc_prop_free gsf_doc_prop_get_name gsf_doc_prop_get_val gsf_doc_prop_set_val gsf_doc_prop_get_link gsf_doc_prop_set_link GsfDocPropVector gsf_docprop_vector_new gsf_docprop_vector_append gsf_docprop_vector_as_string gsf_value_get_docprop_varray gsf_value_get_docprop_vector GSF_META_NAME_TITLE GSF_META_NAME_DESCRIPTION GSF_META_NAME_SUBJECT GSF_META_NAME_DATE_MODIFIED GSF_META_NAME_DATE_CREATED GSF_META_NAME_KEYWORDS GSF_META_NAME_LANGUAGE GSF_META_NAME_REVISION_COUNT GSF_META_NAME_EDITING_DURATION GSF_META_NAME_TABLE_COUNT GSF_META_NAME_IMAGE_COUNT GSF_META_NAME_OBJECT_COUNT GSF_META_NAME_PAGE_COUNT GSF_META_NAME_PARAGRAPH_COUNT GSF_META_NAME_WORD_COUNT GSF_META_NAME_CHARACTER_COUNT GSF_META_NAME_CELL_COUNT GSF_META_NAME_SPREADSHEET_COUNT GSF_META_NAME_CREATOR GSF_META_NAME_TEMPLATE GSF_META_NAME_LAST_SAVED_BY GSF_META_NAME_LAST_PRINTED GSF_META_NAME_SECURITY GSF_META_NAME_CATEGORY GSF_META_NAME_PRESENTATION_FORMAT GSF_META_NAME_THUMBNAIL GSF_META_NAME_GENERATOR GSF_META_NAME_LINE_COUNT GSF_META_NAME_SLIDE_COUNT GSF_META_NAME_NOTE_COUNT GSF_META_NAME_HIDDEN_SLIDE_COUNT GSF_META_NAME_MM_CLIP_COUNT GSF_META_NAME_BYTE_COUNT GSF_META_NAME_SCALE GSF_META_NAME_HEADING_PAIRS GSF_META_NAME_DOCUMENT_PARTS GSF_META_NAME_MANAGER GSF_META_NAME_COMPANY GSF_META_NAME_LINKS_DIRTY GSF_META_NAME_DICTIONARY GSF_META_NAME_MSOLE_UNKNOWN_17 GSF_META_NAME_MSOLE_UNKNOWN_18 GSF_META_NAME_MSOLE_UNKNOWN_19 GSF_META_NAME_MSOLE_UNKNOWN_20 GSF_META_NAME_MSOLE_UNKNOWN_21 GSF_META_NAME_MSOLE_UNKNOWN_22 GSF_META_NAME_MSOLE_UNKNOWN_23 GSF_META_NAME_LOCALE_SYSTEM_DEFAULT GSF_META_NAME_CASE_SENSITIVE GSF_META_NAME_PRINTED_BY GSF_META_NAME_INITIAL_CREATOR GSF_DOC_META_DATA_TYPE GSF_DOC_META_DATA IS_GSF_DOC_META_DATA gsf_doc_meta_data_get_type GSF_DOCPROP_VECTOR GSF_DOCPROP_VECTOR_TYPE IS_GSF_DOCPROP_VECTOR VAL_IS_GSF_DOCPROP_VECTOR gsf_docprop_vector_get_type
libgsf-1.13.99/doc/gsf-overrides.txt0000644000076500017500000000014607473102570014165 00000000000000# These are manually-edited to override or add declarations to those scanned # from the header files. libgsf-1.13.99/doc/gsf-office-thumbnailer.10000644000076500017500000000357510300677256015261 00000000000000.TH GSF-OFFICE-THUMBNAILER 1 "August 17, 2005" gsf "GNOME" .SH NAME gsf-office-thumbnailer \- office files thumbnailer for the GNOME desktop .SH SYNOPSIS \fBgsf-office-thumbnailer\fR [\fIOPTIONS\fR] \fIinfile\fR \fIoutfile\fR .SH DESCRIPTION This manual page briefly documents the \fBgsf-office-thumbnailer\fR command. \fBgsf-office-thumbnailer\fR is used internally by GNOME applications such as \fBnautilus\fR to generate thumbnails of several types of office application files. While it is possible to invoke it manually, it is usually invoked automatically by \fBnautilus\fR. .\".SH "RETURN VALUE" .\".SH "EXIT STATUS" .\".SH "ERROR HANDLING" .\".SH ERRORS .SH OPTIONS This program follows the usual GNU command line syntax, with single letter options starting with a single dash (`-') and longer options starting with two dashes (`--'). .SS "Main options" .TP .B \-i, \-\-input=\fIfilename\fR Name of file for which to create a thumbnail .TP .B \-o, \-\-output=\fIfilename\fR Name of the file in which to store the thumbnail .TP .B \-s, \-\-size=\fIN\fR Size of thumbnail in pixels; the thumbnail will be at most N*N pixels large. .SS "Help options" .TP .B \-?, \-\-help Display a brief usage message .\".SH USAGE .\".SH EXAMPLES .\".SH FILES .\".SH ENVIRONMENT .\".SH DIAGNOSTICS .\".SH SECURITY .\".SH CONFORMING TO .\".SH NOTES .\".SH BUGS .SH LICENSE \fBgsf-office-thumbnailer\fR is licensed under the terms of version 2.1 of the GNU Lesser General Public License (LGPL) as published by the Free Software Foundation. For information on this license look at the source code that came with the software or see the .UR http://www.gnu.org GNU project page .UE at http://www.gnu.org/. .SH AUTHOR \fBgsf-office-thumbnailer\fR's primary author is Federico Mena-Quintero . The initial version of this manpage was written by J.H.M. Dassen (Ray) . \".SH SEE ALSO libgsf-1.13.99/doc/tmpl/0000777000076500017500000000000010401600622011666 500000000000000libgsf-1.13.99/doc/tmpl/blob.sgml0000644000076500017500000000102410401600622013401 00000000000000 Structured Blobs @blob: @container: @Returns: @input: @Returns: libgsf-1.13.99/doc/tmpl/bonobo.sgml0000644000076500017500000000140610401600622013745 00000000000000 Bononbo @stream: @err: @Returns: @stream: @err: @Returns: @g_object: @stream: @pos: @stream: @Returns: libgsf-1.13.99/doc/tmpl/compression.sgml0000644000076500017500000000312110401600622015024 00000000000000 Compression Data compressed using gzip or bzip2 gzip and bzip2 are data compression algorithms and file formats that are in widespread use. These routines handle both gzip and bzip2 compression and decompression. The Wikipedia article "gzip". The Wikipedia article "bzip2". @source: @err: @Returns: @source: @err: @Returns: @sink: @err: @Returns: @source: @sink: @err: @Returns: @source: libgsf-1.13.99/doc/tmpl/gnome-vfs.sgml0000644000076500017500000000160610401600622014372 00000000000000 GnomeVFS @uri: @error: @Returns: @uri: @error: @Returns: @vfs_input: @Returns: @filename: @err: @Returns: @uri: @err: @Returns: libgsf-1.13.99/doc/tmpl/gnomevfs.sgml0000644000076500017500000000153110401600622014312 00000000000000 GnomeVFS @uri: @error: @Returns: @uri: @error: @Returns: @vfs_input: @Returns: @filename: @err: @Returns: @uri: @err: @Returns: libgsf-1.13.99/doc/tmpl/gnomevfs.sgml.sgml0000644000076500017500000000143210401600622015253 00000000000000 compression @source: @err: @Returns: @source: @err: @Returns: @source: @err: @Returns: @source: @err: @Returns: libgsf-1.13.99/doc/tmpl/gsf-blob.sgml0000644000076500017500000000236510401600622014167 00000000000000 GsfBlob A generic, unstructured block of binary data Some libgsf functions, in particular the metadata functions, can generate unstructured blocks of data, or blobs. Libgsf represents these blobs using a GsfBlob object. #GsfClipData, #GsfMetadata Represents an unstructured block of binary data, that is, a sequence of bytes and an integer specifying the size of the sequence. @parent_class: @size: @data_to_copy: @error: @Returns: @blob: @Returns: @blob: @Returns: libgsf-1.13.99/doc/tmpl/gsf-clip-data.sgml0000644000076500017500000001135610401600622015107 00000000000000 GsfClipData Object to hold clipboard data from a VT_CF section OLE2 files may contain clipboard data in the VT_CF property of the metadata in a SummaryInfo section. This data is used, among other things, to represent a thumbnail or pre-rendered version of the data in the file. GsfClipData is an object that holds such clipboard data. You can get a GsfClipData object from the #GValue returned by gsf_doc_prop_get_val(), after you have done gsf_doc_meta_data_lookup (meta_data, GSF_META_NAME_THUMBNAIL). The resulting #GsfClipData object, if it exists, contains the thumbnail data. In turn, the thumbnail data may be in different formats, as specified by the #GsfClipFormat enumeration. Internally, #GsfClipData stores the thumbnail data plus any extra information in a #GsfBlob object. #GsfClipData provides a convenience function, gsf_clip_data_peek_real_data(), to extract the thumbnail data directly. If you need to use the raw binary data instead of the data specific to the thumbnail, you can use gsf_clip_data_get_data_blob() to get the #GsfBlob object and handle it yourself. #GsfBlob, #GsfDocMetaData A #GsfClipData stores all its thumbnail data and associated information in an internal #GsfBlob object. The GsfClipFormat enumeration represents the possible formats for this data blob. @GSF_CLIP_FORMAT_WINDOWS_CLIPBOARD: The thumbnail data is stored in Windows clipboard format. The particular sub-format can be in any of the values in the #GsfClipFormatWindows enumeration. When a #GsfClipData is in @GSF_CLIP_FORMAT_WINDOWS_CLIPBOARD, you can use gsf_clip_data_get_windows_clipboard_format() to get the sub-format in which the data is actually stored. @GSF_CLIP_FORMAT_MACINTOSH_CLIPBOARD: The thumbnail data is stored in Macintosh clipboard format, usually PICT. @GSF_CLIP_FORMAT_GUID: The thumbnail data contains a GUID specifying the OLE component which can be used to render it. Please refer to the OLE2 format documentation for details. @GSF_CLIP_FORMAT_NO_DATA: There is no thumbnail data. @GSF_CLIP_FORMAT_CLIPBOARD_FORMAT_NAME: The thumbnail data contains a null-terminated string with a Windows clipboard format name. Please refer to the OLE2 format documentation for details. @GSF_CLIP_FORMAT_UNKNOWN: The thumbnail data is in an unknown format, but is nevertheless stored in a #GsfBlob. When a #GsfClipData is in GSF_CLIP_FORMAT_WINDOWS_CLIPBOARD format, it can be in any of the subformats specified by the GsfClipFormatWindows enumeration. Use gsf_clip_data_get_windows_clipboard_format() to determine this sub-format. For all of these values, the gsf_clip_data_peek_real_data() function lets you access the data directly. @GSF_CLIP_FORMAT_WINDOWS_ERROR: The OLE file is probably corrupt. @GSF_CLIP_FORMAT_WINDOWS_UNKNOWN: The specific clipboard format is unknown to libgsf. @GSF_CLIP_FORMAT_WINDOWS_METAFILE: The data is in Windows Metafile format. While OLE files store extra header data in this case, the gsf_clip_data_peek_real_data() function will let you access the WMF data directly, and it will ignore the extra header bytes. @GSF_CLIP_FORMAT_WINDOWS_DIB: The data is in Windows Device-Independent Bitmap format. @GSF_CLIP_FORMAT_WINDOWS_ENHANCED_METAFILE: The data is in Windows Enhanced Metaflie format. Object used to represent a VT_CF property in the OLE stream. @parent_class: @format: @data_blob: @Returns: @clip_data: @Returns: @clip_data: @Returns: @clip_data: @error: @Returns: @clip_data: @ret_size: @error: @Returns: libgsf-1.13.99/doc/tmpl/gsf-opendoc-utils.sgml0000644000076500017500000000203610401600622016031 00000000000000 gsf-opendoc-utils OpenDocument format The OASIS Open Document Format for Office Applications or OpenDocument for short is an XML-based file format specification for office applications overseen by the OASIS standards consortium. These routines handle the application neutral portions of the OpenDocument format. The Wikipedia article "OpenDocument". @input: @md: @Returns: @doc: @md: @output: @md: @Returns: libgsf-1.13.99/doc/tmpl/gsf-unused.sgml0000644000076500017500000005733210401600622014560 00000000000000 compression compression GnomeVFS gsf-impl-utils GsfInfile gsf-input-gnomevfs gsf-input-gzip GsfInput gsf-input-memory gsf-input-stdio gsf-input-textline gsf-input GsfOutput gsf-utils gsf @o: @k: @o: @o: @o: @k: @o: @o: @o: @k: @k: @k: @k: @o: @o: @o: @p: @p: @p: @k: @k: @o: @o: @o: @input_class: @num_children: @name_by_index: @child_by_index: @child_by_name: @g_object_class: @Dup: @Read: @Seek: @OpenSibling: @_gsf_reserved0: @_gsf_reserved1: @_gsf_reserved2: @_gsf_reserved3: @GSF_MSOLE_PROP_STRING_MASK: @GSF_MSOLE_PROP_TIME_MASK: @GSF_MSOLE_PROP_WORD_MASK: @GSF_MSOLE_PROP_DWORD_MASK: @GSF_MSOLE_PROP_CLIPBOARD_MASK: @GSF_MSOLE_PROP_TYPE_MASK: @GSF_MSOLE_PROP_INDEX_MASK: @GSF_MSOLE_PROP_CODEPAGE: @GSF_MSOLE_PROP_TITLE: @GSF_MSOLE_PROP_SUBJECT: @GSF_MSOLE_PROP_AUTHOR: @GSF_MSOLE_PROP_KEYWORDS: @GSF_MSOLE_PROP_COMMENTS: @GSF_MSOLE_PROP_TEMPLATE: @GSF_MSOLE_PROP_LASTAUTHOR: @GSF_MSOLE_PROP_REVNUMBER: @GSF_MSOLE_PROP_EDITTIME: @GSF_MSOLE_PROP_LASTPRINTED: @GSF_MSOLE_PROP_CREATED: @GSF_MSOLE_PROP_LASTSAVED: @GSF_MSOLE_PROP_PAGECOUNT: @GSF_MSOLE_PROP_WORDCOUNT: @GSF_MSOLE_PROP_CHARCOUNT: @GSF_MSOLE_PROP_THUMBNAIL: @GSF_MSOLE_PROP_APPNAME: @GSF_MSOLE_PROP_SECURITY: @GSF_SEEK_SET: @GSF_SEEK_CUR: @GSF_SEEK_END: @output_class: @new_child: @g_object_class: @Close: @Seek: @Write: @Vprintf: @output_class: @output_class: @GSF_ZIP_STORED: @GSF_ZIP_SHRUNK: @GSF_ZIP_REDUCEDx1: @GSF_ZIP_REDUCEDx2: @GSF_ZIP_REDUCEDx3: @GSF_ZIP_REDUCEDx4: @GSF_ZIP_IMPLODED: @GSF_ZIP_TOKENIZED: @GSF_ZIP_DEFLATED: @GSF_ZIP_DEFLATED_BETTER: @GSF_ZIP_IMPLODED_BETTER: @name: @compr_method: @crc32: @csize: @usize: @offset: @data_offset: @dostime: @name: @is_directory: @dirent: @children: @last_child: @o: @k: @o: @o: @o: @k: @o: @o: @o: @o: @o: @o: @o: @k: @o: @o: @o: @p: @p: @p: @ZIP_STORED: @ZIP_SHRUNK: @ZIP_REDUCEDx1: @ZIP_REDUCEDx2: @ZIP_REDUCEDx3: @ZIP_REDUCEDx4: @ZIP_IMPLODED: @ZIP_TOKENIZED: @ZIP_DEFLATED: @ZIP_DEFLATED_BETTER: @ZIP_IMPLODED_BETTER: @name: @compr_method: @crc32: @csize: @usize: @offset: @data_offset: @dostime: @name: @is_directory: @dirent: @children: @value: @stamp: @Returns: @meta: @name: @prop: @meta: @name: @value: @prop_name: @prop: @prop: @Returns: @prop: @Returns: @prop: @Returns: @prop: @link: @prop: @val: @Returns: @Returns: @Returns: @Returns: @Returns: @Returns: @input: @pos: @Returns: @input: @container: @Returns: @input: @name: @Returns: @input: @size: @Returns: @Returns: @doc: @md: @xin: @store: @outfile: @name: @Returns: @Returns: @Returns: @Returns: @Returns: @output: @container: @Returns: @output: @name: @Returns: @buf: @size: @Returns: @buf: @size: @needs_free: @Returns: @Returns: @date: @seconds: @tz: @Returns: @Returns: @value: @vector: @vdir: @child: @vdir: @free_dirent: @name: @is_directory: @dirent: @Returns: @doc: @nodes: @xin: @nodes: @state: @input: @Returns: @xin: @handler: @Returns: @dirent: @Returns: @vdir: @child: @vdir: @free_dirent: @name: @is_directory: @dirent: @Returns: @dirent: @Returns: libgsf-1.13.99/doc/tmpl/gsf.sgml0000644000076500017500000000041010401600622013240 00000000000000 gsf libgsf-1.13.99/doc/tmpl/infile.sgml0000644000076500017500000000152110401600622013733 00000000000000 Infile reading structed files @infile: @Returns: @infile: @i: @Returns: @infile: @name: @Returns: @infile: @name: @Varargs: @Returns: @infile: @i: @Returns: libgsf-1.13.99/doc/tmpl/input.sgml0000644000076500017500000000433110401600622013626 00000000000000 Input from unstructured files @input: @num_bytes: @optional_buffer: @Returns: @input: @Returns: @input: @offset: @whence: @Returns: @input: @Returns: @input: @err: @Returns: @input: @Returns: @input: @Returns: @input: @Returns: @Returns: @input: @name: @err: @Returns: @Returns: @input: @Returns: @input: @filename: @Returns: @source: @Returns: @source: @offset: @size: @Returns: @input: @output: @Returns: @src: @Returns: libgsf-1.13.99/doc/tmpl/iochannel.sgml0000644000076500017500000000064610401600622014434 00000000000000 GIOChannel @channel: @Returns: libgsf-1.13.99/doc/tmpl/memory.sgml0000644000076500017500000000206210401600622013776 00000000000000 memory @filename: @err: @Returns: @buf: @length: @needs_free: @Returns: @buf: @length: @Returns: @channel: @error: @Returns: @mem: @Returns: @Returns: @Returns: libgsf-1.13.99/doc/tmpl/metadata.sgml0000644000076500017500000001357110401600622014255 00000000000000 metadata Data about documents @Returns: @meta: @name: @Returns: @meta: @name: @value: @meta: @name: @meta: @name: @Returns: @meta: @prop: @meta: @func: @user_data: @meta: @Returns: @name: @Returns: @prop: @prop: @Returns: @prop: @Returns: @prop: @val: @prop: @Returns: @prop: @link: @Returns: @vector: @value: @vector: @Returns: @value: @Returns: @value: @Returns: libgsf-1.13.99/doc/tmpl/msole.sgml0000644000076500017500000000536410401600622013615 00000000000000 MS OLE2 Microsoft OLE2 files Object Linking and Embedding 2, or OLE2 was developed by Microsoft and provides ways to create combined documents out of parts from different types of office applications (like spreadsheets and word processor files). These routines handle the OLE2 file format. The Wikipedia article "Object linking and embedding". @source: @err: @Returns: @ole: @res: @Returns: @sink: @Returns: @sink: @bb_size: @sb_size: @Returns: @ole: @clsid: @Returns: @in: @accum: @Returns: @out: @meta_data: @doc_not_component: @Returns: @codepage_to: @from: @Returns: @to: @codepage: @Returns: @Returns: @codepage_to: @Returns: @codepage: @Returns: @Returns: @codepage: @Returns: @lid: @Returns: @lid: @Returns: @lang: @Returns: @lid: @Returns: @input: @offset: @Returns: libgsf-1.13.99/doc/tmpl/outfile.sgml0000644000076500017500000000135210401600622014136 00000000000000 Outfile writing structed files @outfile: @name: @is_dir: @Returns: @outfile: @name: @is_dir: @first_property_name: @Varargs: @Returns: @outfile: @name: @is_dir: @first_property_name: @args: @Returns: libgsf-1.13.99/doc/tmpl/output.sgml0000644000076500017500000000425610401600622014035 00000000000000 Output to unstructured files @output: @Returns: @output: @Returns: @output: @Returns: @output: @Returns: @output: @offset: @whence: @Returns: @output: @num_bytes: @data: @Returns: @output: @line: @Returns: @output: @format: @Varargs: @Returns: @output: @format: @args: @Returns: @output: @Returns: @output: @filename: @Returns: @Returns: @output: @code: @format: @Varargs: @Returns: @output: @Returns: @output: @Returns: @wrapper: @wrapee: @Returns: @wrapper: @wrapee: @Returns: libgsf-1.13.99/doc/tmpl/stdio.sgml0000644000076500017500000000330410401600622013610 00000000000000 Reading and Writing from local files and directories @filename: @err: @Returns: @filename: @file: @keep_open: @Returns: @filename: @err: @Returns: @filename: @err: @first_property_name: @Varargs: @Returns: @filename: @err: @first_property_name: @var_args: @Returns: @filename: @file: @keep_open: @Returns: @root: @err: @Returns: @root: @err: @first_property_name: @Varargs: @Returns: @root: @err: @first_property_name: @var_args: @Returns: @root: @err: @Returns: libgsf-1.13.99/doc/tmpl/text.sgml0000644000076500017500000000364210401600622013457 00000000000000 Text @source: @Returns: @textline: @Returns: @input: @textline: @Returns: @input: @sink: @dst: @src: @Returns: @csv: @Returns: @csv: @field: @len: @Returns: @GSF_OUTPUT_CSV_QUOTING_MODE_NEVER: @GSF_OUTPUT_CSV_QUOTING_MODE_AUTO: @GSF_OUTPUT_CSV_QUOTING_MODE_ALWAYS: libgsf-1.13.99/doc/tmpl/utils.sgml0000644000076500017500000002350310401600622013631 00000000000000 utils @module: @module: The major version number of the GSF library. (e.g. in GSF version 1.2.5 this is 1.) This variable is in the library and thus represents the GSF library you have linked against (which may be different from the version of the GSF library from which you have included the headers). The minor version number of the GLib library. (e.g. in GLib version 1.2.5 this is 2.) This variable is in the library and thus represents the GSF library you have linked against (which may be different from the version of the GSF library from which you have included the headers). The micro version number of the GSF library. (e.g. in GSF version 1.2.5 this is 5.) This variable is in the library and thus represents the GSF library you have linked against (which may be different from the version of the GSF library from which you have included the headers). @name: @prefix: @class_init: @instance_init: @parent: @name: @prefix: @base_init: @base_finalize: @\ class_init: @class_init: @class_finalize: @instance_init: @parent_type: @\ abstract: @abstract: @interface_decl: @name: @prefix: @class_init: @instance_init: @parent: @init_func: @iface_type: @type: @init_func: @iface_type: @name: @prefix: @class_init: @instance_init: @parent: @name: @prefix: @base_init: @base_finalize: @\ class_init: @class_init: @class_finalize: @instance_init: @parent_type: @\ abstract: @abstract: @interface_decl: @name: @prefix: @class_init: @instance_init: @parent: @init_func: @iface_type: @module: @type: @init_func: @iface_type: @module: This convenience macro simply calls gsf_error_quark(). You can use it in calls to g_error_matches(), for example. The macro returns the #GQuark that is used to identify errors from libgsf functions. Specific error codes come from the #GsfError enumeration. Error codes that can be returned from libgsf functions in #GError structures. @GSF_ERROR_OUT_OF_MEMORY: Not enough memory could be allocated to hold a structure or object. @GSF_ERROR_INVALID_DATA: A file being read contained invalid or inconsistent data. @Returns: @ptr: @len: @input: @dump_as_hex: @filename: @quoted: @Returns: @handle: @path: @Returns: @data: @len: @Returns: @in: @inlen: @break_lines: @out: @state: @save: @Returns: @in: @len: @break_lines: @out: @state: @save: @Returns: @data: @len: @Returns: @in: @len: @out: @state: @save: @Returns: Interpret data as an 8 bit integer value in little endian order. @p: Pointer to storage Interpret data as a 64 bit unsigned integer value in little endian order. @p: Pointer to storage Interpret data as a 16 bit integer value in little endian order. @p: Pointer to storage Interpret data as an 8 bit unsigned integer value in little endian order. @p: Pointer to storage Interpret data as a 32 bit integer value in little endian order. @p: Pointer to storage Interpret data as a 16 bit unsigned integer value in little endian order. @p: Pointer to storage Interpret data as a 32 bit unsigned integer value in little endian order. @p: Pointer to storage Interpret data as a 64 bit integer value in little endian order. @p: Pointer to storage @p: @Returns: Interpret data as a float value in little endian order. @p: Pointer to storage @p: @Returns: Interpret data as a double value in little endian order. @p: Pointer to storage @p: @Returns: Store an 8 bit unsigned integer value in memory in little endian order. @p: Pointer to storage @dat: Value to be stored Store a 16 bit unsigned integer value in memory in little endian order. @p: Pointer to storage @dat: Value to be stored Store a 32 bit unsigned integer value in memory in little endian order. @p: Pointer to storage @dat: Value to be stored Store an 8 bit integer value in memory in little endian order. @p: Pointer to storage @dat: Value to be stored Store a 16 bit integer value in memory in little endian order. @p: Pointer to storage @dat: Value to be stored Store a 32 bit integer value in memory in little endian order. @p: Pointer to storage @dat: Value to be stored Store a 64 bit integer value in memory in little endian order. @p: Pointer to storage @dat: Value to be stored Store a 64 bit unsigned integer value in memory in little endian order. @p: Pointer to storage @dat: Value to be stored Store a float value in memory in little endian order. @p: Pointer to storage @dat: Value to be stored Store a double value in memory in little endian order. @p: Pointer to storage @dat: Value to be stored @p: @f: @p: @d: @date: @seconds: @time_zone: @timet: @stamp: @Returns: @stamp: @stamp: @Returns: @spec: @stamp: @Returns: @stamp: @Returns: @a: @b: @Returns: @value: @stamp: @v: @prop: @val: @Returns: @object_type: @p_params: @p_n_params: @first_property_name: @Varargs: @object_type: @p_params: @p_n_params: @first_property_name: @var_args: @params: @n_params: libgsf-1.13.99/doc/tmpl/xml.sgml0000644000076500017500000001024110401600622013264 00000000000000 XML and libxml @user_state: @content: @doc: @node: @node_stack: @xin: @elem: @attrs: @Returns: @uri: @id: @ns_id: @name: @parent_id: @start: @end: @has_content: @check_children_for_ns: @share_children_with_parent: @xin: @old_state: @GSF_XML_NO_CONTENT: @GSF_XML_CONTENT: @GSF_XML_SHARED_CONTENT: @parent_id: @id: @ns: @name: @has_content: @\ share_children_with_parent: @share_children_with_parent: @check_ns: @start: @end: @user: @parent_id: @id: @ns: @name: @has_content: @start: @end: @id: @uri: @nodes: @ns: @Returns: @doc: @doc: @input: @user_state: @Returns: @doc: @handler: @xin: @doc: @new_state: @dtor: @attrs: @xin: @str: @ns_id: @name: @Returns: @xin: @str: @ns_id: @Returns: @output: @Returns: @xml: @type: @xml: @id: @xml: @Returns: @xml: @id: @val_utf8: @xml: @id: @val_utf8: @xml: @id: @val: @xml: @id: @val: @xml: @id: @val: @xml: @id: @val: @precision: @xml: @id: @etype: @val: @xml: @id: @r: @g: @b: @xml: @id: @data: @len: @xml: @id: @val: @xml: @id: @content: @xml: @id: @val: @precision: @xml: @id: @val: @input: @Returns: @res: @t: @str: @Returns: @output: @cur: @encoding: @format: @Returns: libgsf-1.13.99/doc/tmpl/zip.sgml0000644000076500017500000000263610401600622013277 00000000000000 ZIP archives ZIP compression and archive format The ZIP file format is a file format that provides data compression and archiving. It is in widespread use on various platforms. These routines handle ZIP archives. The Wikipedia article "ZIP (file format)". @source: @err: @Returns: @sink: @err: @Returns: @zip: @method: @Returns: libgsf-1.13.99/doc/xml/0000777000076500017500000000000010401600622011512 500000000000000libgsf-1.13.99/doc/xml/blob.xml0000644000076500017500000000712010401600622013066 00000000000000 Structured Blobs 3 GSF Library Structured Blobs Synopsis GsfStructuredBlob; gboolean gsf_structured_blob_write (GsfStructuredBlob *blob, GsfOutfile *container); GsfStructuredBlob* gsf_structured_blob_read (GsfInput *input); Object Hierarchy GObject +----GsfInput +----GsfInfile +----GsfStructuredBlob Description Details <anchor id="GsfStructuredBlob-struct" role="struct"/>GsfStructuredBlob GsfStructuredBlobtypedef struct _GsfStructuredBlob GsfStructuredBlob; <anchor id="gsf-structured-blob-write" role="function"/>gsf_structured_blob_write () gsf_structured_blob_writegboolean gsf_structured_blob_write (GsfStructuredBlob *blob, GsfOutfile *container); Dumps structured blob blob onto the container. Will fail if the output is not an Outfile and blob has multiple streams. blob : container : Returns : TRUE on success. <anchor id="gsf-structured-blob-read" role="function"/>gsf_structured_blob_read () gsf_structured_blob_readGsfStructuredBlob* gsf_structured_blob_read (GsfInput *input); input : An input (potentially a GsfInfile) holding the blob Returns : a freshly created tree of blobs libgsf-1.13.99/doc/xml/bonobo.xml0000644000076500017500000001147310401600622013434 00000000000000 Bononbo 3 GSF Library Bononbo Synopsis GsfInputBonobo; GsfInput* gsf_input_bonobo_new (Bonobo_Stream const stream, GError **err); GsfOutputBonobo; GsfOutput* gsf_output_bonobo_new (Bonobo_Stream const stream, GError **err); GsfSharedBonoboStream; GsfSharedBonoboStream* gsf_shared_bonobo_stream_new (Bonobo_Stream stream); Description Details <anchor id="GsfInputBonobo" role="struct"/>GsfInputBonobo GsfInputBonobotypedef struct _GsfInputBonobo GsfInputBonobo; <anchor id="gsf-input-bonobo-new" role="function"/>gsf_input_bonobo_new () gsf_input_bonobo_newGsfInput* gsf_input_bonobo_new (Bonobo_Stream const stream, GError **err); stream : err : Returns : <anchor id="GsfOutputBonobo" role="struct"/>GsfOutputBonobo GsfOutputBonobotypedef struct _GsfOutputBonobo GsfOutputBonobo; <anchor id="gsf-output-bonobo-new" role="function"/>gsf_output_bonobo_new () gsf_output_bonobo_newGsfOutput* gsf_output_bonobo_new (Bonobo_Stream const stream, GError **err); stream : err : Returns : <anchor id="GsfSharedBonoboStream" role="struct"/>GsfSharedBonoboStream GsfSharedBonoboStreamtypedef struct { GObject g_object; Bonobo_Stream stream; CORBA_long pos; } GsfSharedBonoboStream; <anchor id="gsf-shared-bonobo-stream-new" role="function"/>gsf_shared_bonobo_stream_new () gsf_shared_bonobo_stream_newGsfSharedBonoboStream* gsf_shared_bonobo_stream_new (Bonobo_Stream stream); stream : Returns : libgsf-1.13.99/doc/xml/compression.xml0000644000076500017500000002445110401600622014517 00000000000000 Compression 3 GSF Library Compression Data compressed using gzip or bzip2 Synopsis GsfInputGZip; GsfInput* gsf_input_gzip_new (GsfInput *source, GError **err); GsfInput* gsf_input_memory_new_from_bzip (GsfInput *source, GError **err); GsfOutputGZip; GsfOutput* gsf_output_gzip_new (GsfOutput *sink, GError **err); GsfOutputBzip; GsfOutput* gsf_output_bzip_new (GsfOutput *sink, GError **err); Object Hierarchy GObject +----GsfInput +----GsfInputGZip GObject +----GsfOutput +----GsfOutputGZip GObject +----GsfOutput +----GsfOutputBzip Properties "raw" gboolean : Read / Write / Construct Only "source" GsfInput : Read / Write / Construct Only "uncompressed-size" gint64 : Read / Write / Construct Only "raw" gboolean : Read / Write / Construct Only "sink" GsfOutput : Read / Write / Construct Only Description gzip and bzip2 are data compression algorithms and file formats that are in widespread use. These routines handle both gzip and bzip2 compression and decompression. Details <anchor id="GsfInputGZip-struct" role="struct"/>GsfInputGZip GsfInputGZiptypedef struct _GsfInputGZip GsfInputGZip; <anchor id="gsf-input-gzip-new" role="function"/>gsf_input_gzip_new () gsf_input_gzip_newGsfInput* gsf_input_gzip_new (GsfInput *source, GError **err); Adds a reference to source. source : The underlying data source. err : optionally NULL. Returns :a new file or NULL. <anchor id="gsf-input-memory-new-from-bzip" role="function"/>gsf_input_memory_new_from_bzip () gsf_input_memory_new_from_bzipGsfInput* gsf_input_memory_new_from_bzip (GsfInput *source, GError **err); source : a GsfInput err : a GError Returns :a new GsfInputMemory or NULL. <anchor id="GsfOutputGZip-struct" role="struct"/>GsfOutputGZip GsfOutputGZiptypedef struct _GsfOutputGZip GsfOutputGZip; <anchor id="gsf-output-gzip-new" role="function"/>gsf_output_gzip_new () gsf_output_gzip_newGsfOutput* gsf_output_gzip_new (GsfOutput *sink, GError **err); Adds a reference to sink. sink : The underlying data source. err : optionally NULL. Returns :a new file or NULL. <anchor id="GsfOutputBzip-struct" role="struct"/>GsfOutputBzip GsfOutputBziptypedef struct _GsfOutputBzip GsfOutputBzip; <anchor id="gsf-output-bzip-new" role="function"/>gsf_output_bzip_new () gsf_output_bzip_newGsfOutput* gsf_output_bzip_new (GsfOutput *sink, GError **err); Adds a reference to sink. sink : The underlying data source. err : optionally NULL. Returns :a new file or NULL. Property Details <anchor id="GsfInputGZip--raw"/>The "<literal>raw</literal>" property "raw" gboolean : Read / Write / Construct Only Whether to read compressed data with no header and no trailer.Default value: FALSE <anchor id="GsfInputGZip--source"/>The "<literal>source</literal>" property "source" GsfInput : Read / Write / Construct Only Where the compressed data comes from. <anchor id="GsfInputGZip--uncompressed-size"/>The "<literal>uncompressed-size</literal>" property "uncompressed-size" gint64 : Read / Write / Construct Only The source's uncompressed size.Allowed values: >= -1 Default value: -1 <anchor id="GsfOutputGZip--raw"/>The "<literal>raw</literal>" property "raw" gboolean : Read / Write / Construct Only Whether to write compressed data with no header/tailer.Default value: FALSE <anchor id="GsfOutputGZip--sink"/>The "<literal>sink</literal>" property "sink" GsfOutput : Read / Write / Construct Only Where the compressed data is written. See Also The Wikipedia article "gzip". The Wikipedia article "bzip2". libgsf-1.13.99/doc/xml/gnome-vfs.xml0000644000076500017500000001521310401600622014053 00000000000000 GnomeVFS 3 GSF Library GnomeVFS Synopsis GsfInputGnomeVFS; GsfInput* gsf_input_gnomevfs_new (char const *uri, GError **error); GsfInput* gsf_input_gnomevfs_new_uri (GnomeVFSURI *uri, GError **error); gboolean gsf_input_gnomevfs_needs_local_copy (GsfInputGnomeVFS *vfs_input); GsfOutputGnomeVFS; GsfOutput* gsf_output_gnomevfs_new (char const *filename, GError **err); GsfOutput* gsf_output_gnomevfs_new_uri (GnomeVFSURI *uri, GError **err); Description Details <anchor id="GsfInputGnomeVFS" role="struct"/>GsfInputGnomeVFS GsfInputGnomeVFStypedef struct _GsfInputGnomeVFS GsfInputGnomeVFS; <anchor id="gsf-input-gnomevfs-new" role="function"/>gsf_input_gnomevfs_new () gsf_input_gnomevfs_newGsfInput* gsf_input_gnomevfs_new (char const *uri, GError **error); uri : error : Returns : <anchor id="gsf-input-gnomevfs-new-uri" role="function"/>gsf_input_gnomevfs_new_uri () gsf_input_gnomevfs_new_uriGsfInput* gsf_input_gnomevfs_new_uri (GnomeVFSURI *uri, GError **error); uri : error : Returns : <anchor id="gsf-input-gnomevfs-needs-local-copy" role="function"/>gsf_input_gnomevfs_needs_local_copy () gsf_input_gnomevfs_needs_local_copygboolean gsf_input_gnomevfs_needs_local_copy (GsfInputGnomeVFS *vfs_input); vfs_input : Returns : <anchor id="GsfOutputGnomeVFS" role="struct"/>GsfOutputGnomeVFS GsfOutputGnomeVFStypedef struct _GsfOutputGnomeVFS GsfOutputGnomeVFS; <anchor id="gsf-output-gnomevfs-new" role="function"/>gsf_output_gnomevfs_new () gsf_output_gnomevfs_newGsfOutput* gsf_output_gnomevfs_new (char const *filename, GError **err); filename : err : Returns : <anchor id="gsf-output-gnomevfs-new-uri" role="function"/>gsf_output_gnomevfs_new_uri () gsf_output_gnomevfs_new_uriGsfOutput* gsf_output_gnomevfs_new_uri (GnomeVFSURI *uri, GError **err); uri : err : Returns : libgsf-1.13.99/doc/xml/gsf-blob.xml0000644000076500017500000001447210401600622013653 00000000000000 GsfBlob 3 GSF Library GsfBlob A generic, unstructured block of binary data Synopsis GsfBlob; GsfBlobClass; GsfBlob* gsf_blob_new (gsize size, gconstpointer data_to_copy, GError **error); gsize gsf_blob_get_size (GsfBlob *blob); gconstpointer gsf_blob_peek_data (GsfBlob *blob); Object Hierarchy GObject +----GsfBlob Description Some libgsf functions, in particular the metadata functions, can generate unstructured blocks of data, or blobs. Libgsf represents these blobs using a GsfBlob object. Details <anchor id="GsfBlob-struct" role="struct"/>GsfBlob GsfBlobtypedef struct _GsfBlob GsfBlob; Represents an unstructured block of binary data, that is, a sequence of bytes and an integer specifying the size of the sequence. <anchor id="GsfBlobClass" role="struct"/>GsfBlobClass GsfBlobClasstypedef struct { GObjectClass parent_class; } GsfBlobClass; <anchor id="gsf-blob-new" role="function"/>gsf_blob_new () gsf_blob_newGsfBlob* gsf_blob_new (gsize size, gconstpointer data_to_copy, GError **error); Creates a new GsfBlob object to hold the specified data. The blob can then be used as a facility for reference-counting for the data. The data is copied internally, so the blob does not hold references to external chunks of memory. size : Size of the data in bytes. data_to_copy : Data which will be copied into the blob, or NULL if size is zero. error : location to store error, or NULL. Returns : A newly-created GsfBlob, or NULL if the data could not be copied. Error domain: GSF_ERROR Possible errors: GSF_ERROR_OUT_OF_MEMORY if the data_to_copy could not be copied. <anchor id="gsf-blob-get-size" role="function"/>gsf_blob_get_size () gsf_blob_get_sizegsize gsf_blob_get_size (GsfBlob *blob); Queries the size in bytes of the data stored in the blob. blob : A GsfBlob. Returns : Size in bytes, or 0 if the data is NULL. <anchor id="gsf-blob-peek-data" role="function"/>gsf_blob_peek_data () gsf_blob_peek_datagconstpointer gsf_blob_peek_data (GsfBlob *blob); Queries a pointer to the data stored in the blob. This does not copy the data for you; it returns a pointer to the actual buffer which the blob uses internally, so you should not free this buffer on your own. blob : A GsfBlob. Returns : Pointer to the data stored in the blob, or NULL if the size of the data is zero. See Also GsfClipData, GsfMetadata libgsf-1.13.99/doc/xml/gsf-clip-data.xml0000644000076500017500000004261510401600622014573 00000000000000 GsfClipData 3 GSF Library GsfClipData Object to hold clipboard data from a VT_CF section Synopsis enum GsfClipFormat; enum GsfClipFormatWindows; GsfClipData; GsfClipDataClass; GsfClipData* gsf_clip_data_new (GsfClipFormat format, GsfBlob *data_blob); GsfClipFormat gsf_clip_data_get_format (GsfClipData *clip_data); GsfBlob* gsf_clip_data_get_data_blob (GsfClipData *clip_data); GsfClipFormatWindows gsf_clip_data_get_windows_clipboard_format (GsfClipData *clip_data, GError **error); gconstpointer gsf_clip_data_peek_real_data (GsfClipData *clip_data, gsize *ret_size, GError **error); Object Hierarchy GObject +----GsfClipData Description OLE2 files may contain clipboard data in the VT_CF property of the metadata in a SummaryInfo section. This data is used, among other things, to represent a thumbnail or pre-rendered version of the data in the file. GsfClipData is an object that holds such clipboard data. You can get a GsfClipData object from the GValue returned by gsf_doc_prop_get_val(), after you have done gsf_doc_meta_data_lookup (meta_data, GSF_META_NAME_THUMBNAIL). The resulting GsfClipData object, if it exists, contains the thumbnail data. In turn, the thumbnail data may be in different formats, as specified by the GsfClipFormat enumeration. Internally, GsfClipData stores the thumbnail data plus any extra information in a GsfBlob object. GsfClipData provides a convenience function, gsf_clip_data_peek_real_data(), to extract the thumbnail data directly. If you need to use the raw binary data instead of the data specific to the thumbnail, you can use gsf_clip_data_get_data_blob() to get the GsfBlob object and handle it yourself. Details <anchor id="GsfClipFormat" role="enum"/>enum GsfClipFormat GsfClipFormattypedef enum { GSF_CLIP_FORMAT_WINDOWS_CLIPBOARD = -1, GSF_CLIP_FORMAT_MACINTOSH_CLIPBOARD = -2, GSF_CLIP_FORMAT_GUID = -3, GSF_CLIP_FORMAT_NO_DATA = 0, GSF_CLIP_FORMAT_CLIPBOARD_FORMAT_NAME = 1, /* in the file it's actually any positive integer */ GSF_CLIP_FORMAT_UNKNOWN /* this is our own value for unknown types or invalid data */ } GsfClipFormat; A GsfClipData stores all its thumbnail data and associated information in an internal GsfBlob object. The GsfClipFormat enumeration represents the possible formats for this data blob. GSF_CLIP_FORMAT_WINDOWS_CLIPBOARD The thumbnail data is stored in Windows clipboard format. The particular sub-format can be in any of the values in the GsfClipFormatWindows enumeration. When a GsfClipData is in GSF_CLIP_FORMAT_WINDOWS_CLIPBOARD, you can use gsf_clip_data_get_windows_clipboard_format() to get the sub-format in which the data is actually stored. GSF_CLIP_FORMAT_MACINTOSH_CLIPBOARD The thumbnail data is stored in Macintosh clipboard format, usually PICT. GSF_CLIP_FORMAT_GUID The thumbnail data contains a GUID specifying the OLE component which can be used to render it. Please refer to the OLE2 format documentation for details. GSF_CLIP_FORMAT_NO_DATA There is no thumbnail data. GSF_CLIP_FORMAT_CLIPBOARD_FORMAT_NAME The thumbnail data contains a null-terminated string with a Windows clipboard format name. Please refer to the OLE2 format documentation for details. GSF_CLIP_FORMAT_UNKNOWN The thumbnail data is in an unknown format, but is nevertheless stored in a GsfBlob. <anchor id="GsfClipFormatWindows" role="enum"/>enum GsfClipFormatWindows GsfClipFormatWindowstypedef enum { GSF_CLIP_FORMAT_WINDOWS_ERROR = -1, /* our own value */ GSF_CLIP_FORMAT_WINDOWS_UNKNOWN = -2, /* our own value */ GSF_CLIP_FORMAT_WINDOWS_METAFILE = 3, /* CF_METAFILEPICT */ GSF_CLIP_FORMAT_WINDOWS_DIB = 8, /* CF_DIB */ GSF_CLIP_FORMAT_WINDOWS_ENHANCED_METAFILE = 14 /* CF_ENHMETAFILE */ } GsfClipFormatWindows; When a GsfClipData is in GSF_CLIP_FORMAT_WINDOWS_CLIPBOARD format, it can be in any of the subformats specified by the GsfClipFormatWindows enumeration. Use gsf_clip_data_get_windows_clipboard_format() to determine this sub-format. For all of these values, the gsf_clip_data_peek_real_data() function lets you access the data directly. GSF_CLIP_FORMAT_WINDOWS_ERROR The OLE file is probably corrupt. GSF_CLIP_FORMAT_WINDOWS_UNKNOWN The specific clipboard format is unknown to libgsf. GSF_CLIP_FORMAT_WINDOWS_METAFILE The data is in Windows Metafile format. While OLE files store extra header data in this case, the gsf_clip_data_peek_real_data() function will let you access the WMF data directly, and it will ignore the extra header bytes. GSF_CLIP_FORMAT_WINDOWS_DIB The data is in Windows Device-Independent Bitmap format. GSF_CLIP_FORMAT_WINDOWS_ENHANCED_METAFILE The data is in Windows Enhanced Metaflie format. <anchor id="GsfClipData-struct" role="struct"/>GsfClipData GsfClipDatatypedef struct _GsfClipData GsfClipData; Object used to represent a VT_CF property in the OLE stream. <anchor id="GsfClipDataClass" role="struct"/>GsfClipDataClass GsfClipDataClasstypedef struct { GObjectClass parent_class; } GsfClipDataClass; <anchor id="gsf-clip-data-new" role="function"/>gsf_clip_data_new () gsf_clip_data_newGsfClipData* gsf_clip_data_new (GsfClipFormat format, GsfBlob *data_blob); Creates a new GsfClipData object. This function acquires a reference to the data_blob, so you should unref the blob on your own if you no longer need it directly. format : Format for the data inside the data_blob data_blob : Object which holds the binary contents for the GsfClipData Returns : A newly-created GsfClipData. <anchor id="gsf-clip-data-get-format" role="function"/>gsf_clip_data_get_format () gsf_clip_data_get_formatGsfClipFormat gsf_clip_data_get_format (GsfClipData *clip_data); Queries the clipboard data format of a GsfClipData. The format refers to the data blob inside the clip_data; use gsf_clip_data_get_data_blob() to get that data blob. clip_data : A GsfClipData. Returns : The format in which the GsfClipData's data blob is stored. <anchor id="gsf-clip-data-get-data-blob" role="function"/>gsf_clip_data_get_data_blob () gsf_clip_data_get_data_blobGsfBlob* gsf_clip_data_get_data_blob (GsfClipData *clip_data); Queries the data blob that actually stores a GsfClipData's binary data. clip_data : A GsfClipData. Returns : A new reference to the GsfBlob that stores this clip_data's binary data. You must use g_object_unref() to dispose of that data blob when you are done with it. <anchor id="gsf-clip-data-get-windows-clipboard-format" role="function"/>gsf_clip_data_get_windows_clipboard_format () gsf_clip_data_get_windows_clipboard_formatGsfClipFormatWindows gsf_clip_data_get_windows_clipboard_format (GsfClipData *clip_data, GError **error); Queries the Windows clipboard data format for a GsfClipData. The clip_data must have been created with GSF_CLIP_FORMAT_WINDOWS_CLIPBOARD. clip_data : A GsfClipData. error : Location to store error, or NULL Returns : A GsfClipFormatWindows value. Possible errors: GSF_ERROR_INVALID_DATA if the data blob in the clip_data is smaller than it should be; in this case GSF_CLIP_FORMAT_WINDOWS_ERROR will be returned. <anchor id="gsf-clip-data-peek-real-data" role="function"/>gsf_clip_data_peek_real_data () gsf_clip_data_peek_real_datagconstpointer gsf_clip_data_peek_real_data (GsfClipData *clip_data, gsize *ret_size, GError **error); Queries a pointer directly to the clipboard data of a GsfClipData. The resulting pointer is not necessarily the same data pointer that was passed to gsf_blob_new() prior to creating the clip_data. For example, if the data is in GSF_CLIP_FORMAT_WINDOWS_CLIPBOARD format, then it will have extra header bytes in front of the actual metafile data. This function will skip over those header bytes if necessary and return a pointer to the "real" data. clip_data : A GsfClipData. ret_size : Location to return the size of the returned data buffer. error : Location to store error, or NULL. Returns : Pointer to the real clipboard data. The size in bytes of this buffer is returned in the ret_size argument. See Also GsfBlob, GsfDocMetaData libgsf-1.13.99/doc/xml/gsf-opendoc-utils.xml0000644000076500017500000001200410401600622015507 00000000000000 gsf-opendoc-utils 3 GSF Library gsf-opendoc-utils OpenDocument format Synopsis GError* gsf_opendoc_metadata_read (GsfInput *input, GsfDocMetaData *md); void gsf_opendoc_metadata_subtree (GsfXMLIn *doc, GsfDocMetaData *md); gboolean gsf_opendoc_metadata_write (GsfXMLOut *output, GsfDocMetaData const *md); Description The OASIS Open Document Format for Office Applications or OpenDocument for short is an XML-based file format specification for office applications overseen by the OASIS standards consortium. These routines handle the application neutral portions of the OpenDocument format. Details <anchor id="gsf-opendoc-metadata-read" role="function"/>gsf_opendoc_metadata_read () gsf_opendoc_metadata_readGError* gsf_opendoc_metadata_read (GsfInput *input, GsfDocMetaData *md); Read an OpenDocument metadata stream from input and store the properties into md. Overwrite any existing properties with the same id. input : GsfInput md : GsfDocMetaData Returns :a GError if there is a problem. <anchor id="gsf-opendoc-metadata-subtree" role="function"/>gsf_opendoc_metadata_subtree () gsf_opendoc_metadata_subtreevoid gsf_opendoc_metadata_subtree (GsfXMLIn *doc, GsfDocMetaData *md); Extend xin so that it can parse a subtree in OpenDoc metadata format doc : GsfXMLInDoc md : GsfDocMetaData <anchor id="gsf-opendoc-metadata-write" role="function"/>gsf_opendoc_metadata_write () gsf_opendoc_metadata_writegboolean gsf_opendoc_metadata_write (GsfXMLOut *output, GsfDocMetaData const *md); output : md : Returns : See Also The Wikipedia article "OpenDocument". libgsf-1.13.99/doc/xml/gsf.xml0000644000076500017500000000127310401600622012732 00000000000000 gsf 3 GSF Library gsf Synopsis typedef gsf_off_t; Description Details <anchor id="gsf-off-t"/>gsf_off_t gsf_off_ttypedef gint64 gsf_off_t; libgsf-1.13.99/doc/xml/infile.xml0000644000076500017500000001671310401600622013426 00000000000000 Infile reading structed files 3 GSF Library Infile reading structed files Synopsis GsfInfile; int gsf_infile_num_children (GsfInfile *infile); GsfInput* gsf_infile_child_by_index (GsfInfile *infile, int i); GsfInput* gsf_infile_child_by_name (GsfInfile *infile, char const *name); GsfInput* gsf_infile_child_by_vname (GsfInfile *infile, char const *name, ...); charconst * gsf_infile_name_by_index (GsfInfile *infile, int i); Object Hierarchy GObject +----GsfInput +----GsfInfile +----GsfInfileMSOle +----GsfInfileStdio +----GsfInfileZip +----GsfStructuredBlob Description Details <anchor id="GsfInfile-struct" role="struct"/>GsfInfile GsfInfiletypedef struct _GsfInfile GsfInfile; <anchor id="gsf-infile-num-children" role="function"/>gsf_infile_num_children () gsf_infile_num_childrenint gsf_infile_num_children (GsfInfile *infile); infile : the structured storage Returns :the number of children the storage has, or -1 if the storage can not have children. <anchor id="gsf-infile-child-by-index" role="function"/>gsf_infile_child_by_index () gsf_infile_child_by_indexGsfInput* gsf_infile_child_by_index (GsfInfile *infile, int i); TODO : For 2.0 api will change to include a GError. infile : i : Returns :a newly created child which must be unrefed. <anchor id="gsf-infile-child-by-name" role="function"/>gsf_infile_child_by_name () gsf_infile_child_by_nameGsfInput* gsf_infile_child_by_name (GsfInfile *infile, char const *name); TODO : For 2.0 api will change to include a GError. infile : name : Returns :a newly created child which must be unrefed. <anchor id="gsf-infile-child-by-vname" role="function"/>gsf_infile_child_by_vname () gsf_infile_child_by_vnameGsfInput* gsf_infile_child_by_vname (GsfInfile *infile, char const *name, ...); infile : name : A null terminated list of names ... : the rest of the names Returns :a newly created child which must be unrefed. <anchor id="gsf-infile-name-by-index" role="function"/>gsf_infile_name_by_index () gsf_infile_name_by_indexcharconst * gsf_infile_name_by_index (GsfInfile *infile, int i); infile : i : Returns :the utf8 encoded name of the i-th child DO NOT FREE THE STRING. libgsf-1.13.99/doc/xml/input.xml0000644000076500017500000005727710401600622013331 00000000000000 Input from unstructured files 3 GSF Library Input from unstructured files Synopsis GsfInput; guint8const * gsf_input_read (GsfInput *input, size_t num_bytes, guint8 *optional_buffer); gsf_off_t gsf_input_tell (GsfInput *input); gboolean gsf_input_seek (GsfInput *input, gsf_off_t offset, GSeekType whence); GsfInfile* gsf_input_container (GsfInput *input); GsfInput* gsf_input_dup (GsfInput *input, GError **err); gsf_off_t gsf_input_size (GsfInput *input); gboolean gsf_input_eof (GsfInput *input); gsf_off_t gsf_input_remaining (GsfInput *input); GQuark gsf_input_error_id (void); GsfInput* gsf_input_sibling (GsfInput const *input, char const *name, GError **err); GQuark gsf_input_error (void); charconst * gsf_input_name (GsfInput *input); gboolean gsf_input_set_name_from_filename (GsfInput *input, char const *filename); GsfInputProxy; GsfInput* gsf_input_proxy_new (GsfInput *source); GsfInput* gsf_input_proxy_new_section (GsfInput *source, gsf_off_t offset, gsf_off_t size); gboolean gsf_input_copy (GsfInput *input, GsfOutput *output); GsfInput* gsf_input_uncompress (GsfInput *src); Object Hierarchy GObject +----GsfInput +----GsfInfile +----GsfInputGZip +----GsfInputMemory +----GsfInputProxy +----GsfInputStdio +----GsfInputTextline GObject +----GsfInput +----GsfInputProxy Properties "eof" gboolean : Read "name" gchararray : Read "position" gint64 : Read "remaining" gint64 : Read "size" gint64 : Read Description Details <anchor id="GsfInput-struct" role="struct"/>GsfInput GsfInputtypedef struct _GsfInput GsfInput; <anchor id="gsf-input-read" role="function"/>gsf_input_read () gsf_input_readguint8const * gsf_input_read (GsfInput *input, size_t num_bytes, guint8 *optional_buffer); Read at least num_bytes. Does not change the current position if there is an error. Will only read if the entire amount can be read. Invalidates the buffer associated with previous calls to gsf_input_read. input : the input stream num_bytes : number of bytes to read optional_buffer : NULL, or pointer to destination memory area Returns : pointer to the buffer or NULL if there is an error or 0 bytes are requested. <anchor id="gsf-input-tell" role="function"/>gsf_input_tell () gsf_input_tellgsf_off_t gsf_input_tell (GsfInput *input); input : the input stream Returns : the current offset in the file. <anchor id="gsf-input-seek" role="function"/>gsf_input_seek () gsf_input_seekgboolean gsf_input_seek (GsfInput *input, gsf_off_t offset, GSeekType whence); Move the current location in the input stream. input : the input stream offset : target offset whence : determines whether the offset is relative to the beginning or the end of the stream, or to the current location. Returns : TRUE on error. <anchor id="gsf-input-container" role="function"/>gsf_input_container () gsf_input_containerGsfInfile* gsf_input_container (GsfInput *input); input : the input stream Returns :, but does not add a reference to input's container. Potentially NULL <anchor id="gsf-input-dup" role="function"/>gsf_input_dup () gsf_input_dupGsfInput* gsf_input_dup (GsfInput *input, GError **err); Duplicates input src leaving the new one at the same offset. input : The input to duplicate err : optionally NULL Returns : the duplicate, or NULL on error <anchor id="gsf-input-size" role="function"/>gsf_input_size () gsf_input_sizegsf_off_t gsf_input_size (GsfInput *input); Looks up and caches the number of bytes in the input input : The input Returns : the size or -1 on error <anchor id="gsf-input-eof" role="function"/>gsf_input_eof () gsf_input_eofgboolean gsf_input_eof (GsfInput *input); Are we at the end of the file ? input : the input Returns : TRUE if the input is at the eof. <anchor id="gsf-input-remaining" role="function"/>gsf_input_remaining () gsf_input_remaininggsf_off_t gsf_input_remaining (GsfInput *input); input : the input stream Returns : the number of bytes left in the file. <anchor id="gsf-input-error-id" role="function"/>gsf_input_error_id () gsf_input_error_idGQuark gsf_input_error_id (void); Returns : A utility quark to flag a GError as being an input problem. <anchor id="gsf-input-sibling" role="function"/>gsf_input_sibling () gsf_input_siblingGsfInput* gsf_input_sibling (GsfInput const *input, char const *name, GError **err); input : name : err : Returns : <anchor id="gsf-input-error" role="function"/>gsf_input_error () gsf_input_errorGQuark gsf_input_error (void); Deprecated as of GSF 1.12.0; use gsf_input_error_id() instead. Returns : A utility quark to flag a GError as being an input problem. <anchor id="gsf-input-name" role="function"/>gsf_input_name () gsf_input_namecharconst * gsf_input_name (GsfInput *input); The name of the input stream. input : the input stream Returns : input's name in utf8 form, or NULL if it has no name. <anchor id="gsf-input-set-name-from-filename" role="function"/>gsf_input_set_name_from_filename () gsf_input_set_name_from_filenamegboolean gsf_input_set_name_from_filename (GsfInput *input, char const *filename); protected. input : the input stream filename : the (fs-sys encoded) filename Returns : TRUE if the assignment was ok. <anchor id="GsfInputProxy-struct" role="struct"/>GsfInputProxy GsfInputProxytypedef struct _GsfInputProxy GsfInputProxy; <anchor id="gsf-input-proxy-new" role="function"/>gsf_input_proxy_new () gsf_input_proxy_newGsfInput* gsf_input_proxy_new (GsfInput *source); This creates a new proxy to the entire, given input source. See gsf_input_proxy_new_section for details. source : The underlying data source. Returns :a new input object. <anchor id="gsf-input-proxy-new-section" role="function"/>gsf_input_proxy_new_section () gsf_input_proxy_new_sectionGsfInput* gsf_input_proxy_new_section (GsfInput *source, gsf_off_t offset, gsf_off_t size); This creates a new proxy to a section of the given source. The new object will have its own current position, but any operation on it can change the source's position. If a proxy to a proxy is created, the intermediate proxy is short- circuited. This function will ref the source. source : The underlying data source. offset : Offset into source for start of section. size : Length of section. Returns :a new input object. <anchor id="gsf-input-copy" role="function"/>gsf_input_copy () gsf_input_copygboolean gsf_input_copy (GsfInput *input, GsfOutput *output); Copy the contents from input to output from their respective current positions. So if you want to be sure to copy *everything*, make sure to call gsf_input_seek (input, 0, G_SEEK_SET) and gsf_output_seek (output, 0, G_SEEK_SET) first, if applicable. input : a non-null GsfInput output : a non-null GsfOutput Returns : TRUE on Success <anchor id="gsf-input-uncompress" role="function"/>gsf_input_uncompress () gsf_input_uncompressGsfInput* gsf_input_uncompress (GsfInput *src); src : stream to be uncompressed. Returns : A stream equivalent to the source stream, but uncompressed if the source was compressed. This functions takes ownership of the incoming reference and yields a new one as its output. Property Details <anchor id="GsfInput--eof"/>The "<literal>eof</literal>" property "eof" gboolean : Read End Of File.Default value: FALSE <anchor id="GsfInput--name"/>The "<literal>name</literal>" property "name" gchararray : Read The Input's Name.Default value: NULL <anchor id="GsfInput--position"/>The "<literal>position</literal>" property "position" gint64 : Read The Output's Current Position.Allowed values: >= 0 Default value: 0 <anchor id="GsfInput--remaining"/>The "<literal>remaining</literal>" property "remaining" gint64 : Read Amount of Data Remaining.Allowed values: >= 0 Default value: 0 <anchor id="GsfInput--size"/>The "<literal>size</literal>" property "size" gint64 : Read The Input's Size.Allowed values: >= 0 Default value: 0 libgsf-1.13.99/doc/xml/iochannel.xml0000644000076500017500000000423410401600622014113 00000000000000 GIOChannel 3 GSF Library GIOChannel Synopsis GsfOutputIOChannel; GsfOutput* gsf_output_iochannel_new (GIOChannel *channel); Object Hierarchy GObject +----GsfOutput +----GsfOutputIOChannel Description Details <anchor id="GsfOutputIOChannel-struct" role="struct"/>GsfOutputIOChannel GsfOutputIOChanneltypedef struct _GsfOutputIOChannel GsfOutputIOChannel; <anchor id="gsf-output-iochannel-new" role="function"/>gsf_output_iochannel_new () gsf_output_iochannel_newGsfOutput* gsf_output_iochannel_new (GIOChannel *channel); channel : A GIOChannel Returns :a new file or NULL. libgsf-1.13.99/doc/xml/memory.xml0000644000076500017500000002273110401600622013465 00000000000000 memory 3 GSF Library memory Synopsis GsfInputMemory; GsfInput* gsf_input_mmap_new (char const *filename, GError **err); GsfInput* gsf_input_memory_new (guint8 const *buf, gsf_off_t length, gboolean needs_free); GsfInput* gsf_input_memory_new_clone (guint8 const *buf, gsf_off_t length); GsfInput* gsf_input_memory_new_from_iochannel (GIOChannel *channel, GError **error); GsfOutputMemory; const guint8* gsf_output_memory_get_bytes (GsfOutputMemory *mem); GType gsf_output_memory_get_type (void); GsfOutput* gsf_output_memory_new (void); Object Hierarchy GObject +----GsfInput +----GsfInputMemory GObject +----GsfOutput +----GsfOutputMemory Description Details <anchor id="GsfInputMemory-struct" role="struct"/>GsfInputMemory GsfInputMemorytypedef struct _GsfInputMemory GsfInputMemory; <anchor id="gsf-input-mmap-new" role="function"/>gsf_input_mmap_new () gsf_input_mmap_newGsfInput* gsf_input_mmap_new (char const *filename, GError **err); filename : The file on disk that you want to mmap err : A GError, or optionally null Returns : A new GsfInputMemory <anchor id="gsf-input-memory-new" role="function"/>gsf_input_memory_new () gsf_input_memory_newGsfInput* gsf_input_memory_new (guint8 const *buf, gsf_off_t length, gboolean needs_free); buf : The input bytes length : The length of buf needs_free : Whether you want this memory to be free'd at object destruction Returns : A new GsfInputMemory <anchor id="gsf-input-memory-new-clone" role="function"/>gsf_input_memory_new_clone () gsf_input_memory_new_cloneGsfInput* gsf_input_memory_new_clone (guint8 const *buf, gsf_off_t length); buf : The input bytes length : The length of buf Returns : A new GsfInputMemory <anchor id="gsf-input-memory-new-from-iochannel" role="function"/>gsf_input_memory_new_from_iochannel () gsf_input_memory_new_from_iochannelGsfInput* gsf_input_memory_new_from_iochannel (GIOChannel *channel, GError **error); channel : a GIOChannel. error : a GError Returns :a new GsfInputMemory or NULL. <anchor id="GsfOutputMemory-struct" role="struct"/>GsfOutputMemory GsfOutputMemorytypedef struct _GsfOutputMemory GsfOutputMemory; <anchor id="gsf-output-memory-get-bytes" role="function"/>gsf_output_memory_get_bytes () gsf_output_memory_get_bytesconst guint8* gsf_output_memory_get_bytes (GsfOutputMemory *mem); mem : the output device. Returns : The data that has been written to mem, or null <anchor id="gsf-output-memory-get-type" role="function"/>gsf_output_memory_get_type () gsf_output_memory_get_typeGType gsf_output_memory_get_type (void); Returns : <anchor id="gsf-output-memory-new" role="function"/>gsf_output_memory_new () gsf_output_memory_newGsfOutput* gsf_output_memory_new (void); Returns :a new file or NULL. libgsf-1.13.99/doc/xml/metadata.xml0000644000076500017500000013605610401600622013743 00000000000000 metadata 3 GSF Library metadata Data about documents Synopsis GsfDocMetaData; GsfDocMetaData* gsf_doc_meta_data_new (void); GsfDocProp* gsf_doc_meta_data_lookup (GsfDocMetaData const *meta, char const *name); void gsf_doc_meta_data_insert (GsfDocMetaData *meta, char *name, GValue *value); void gsf_doc_meta_data_remove (GsfDocMetaData *meta, char const *name); GsfDocProp* gsf_doc_meta_data_steal (GsfDocMetaData *meta, char const *name); void gsf_doc_meta_data_store (GsfDocMetaData *meta, GsfDocProp *prop); void gsf_doc_meta_data_foreach (GsfDocMetaData const *meta, GHFunc func, gpointer user_data); gsize gsf_doc_meta_data_size (GsfDocMetaData const *meta); GsfDocProp; GsfDocProp* gsf_doc_prop_new (char *name); void gsf_doc_prop_free (GsfDocProp *prop); charconst * gsf_doc_prop_get_name (GsfDocProp const *prop); GValueconst * gsf_doc_prop_get_val (GsfDocProp const *prop); void gsf_doc_prop_set_val (GsfDocProp *prop, GValue *val); charconst * gsf_doc_prop_get_link (GsfDocProp const *prop); void gsf_doc_prop_set_link (GsfDocProp *prop, char *link); GsfDocPropVector; GsfDocPropVector* gsf_docprop_vector_new (void); void gsf_docprop_vector_append (GsfDocPropVector *vector, GValue *value); gchar* gsf_docprop_vector_as_string (GsfDocPropVector const *vector); GValueArray* gsf_value_get_docprop_varray (GValue const *value); GsfDocPropVector* gsf_value_get_docprop_vector (GValue const *value); #define GSF_META_NAME_TITLE #define GSF_META_NAME_DESCRIPTION #define GSF_META_NAME_SUBJECT #define GSF_META_NAME_DATE_MODIFIED #define GSF_META_NAME_DATE_CREATED #define GSF_META_NAME_KEYWORDS #define GSF_META_NAME_LANGUAGE #define GSF_META_NAME_REVISION_COUNT #define GSF_META_NAME_EDITING_DURATION #define GSF_META_NAME_TABLE_COUNT #define GSF_META_NAME_IMAGE_COUNT #define GSF_META_NAME_OBJECT_COUNT #define GSF_META_NAME_PAGE_COUNT #define GSF_META_NAME_PARAGRAPH_COUNT #define GSF_META_NAME_WORD_COUNT #define GSF_META_NAME_CHARACTER_COUNT #define GSF_META_NAME_CELL_COUNT #define GSF_META_NAME_SPREADSHEET_COUNT #define GSF_META_NAME_CREATOR #define GSF_META_NAME_TEMPLATE #define GSF_META_NAME_LAST_SAVED_BY #define GSF_META_NAME_LAST_PRINTED #define GSF_META_NAME_SECURITY #define GSF_META_NAME_CATEGORY #define GSF_META_NAME_PRESENTATION_FORMAT #define GSF_META_NAME_THUMBNAIL #define GSF_META_NAME_GENERATOR #define GSF_META_NAME_LINE_COUNT #define GSF_META_NAME_SLIDE_COUNT #define GSF_META_NAME_NOTE_COUNT #define GSF_META_NAME_HIDDEN_SLIDE_COUNT #define GSF_META_NAME_MM_CLIP_COUNT #define GSF_META_NAME_BYTE_COUNT #define GSF_META_NAME_SCALE #define GSF_META_NAME_HEADING_PAIRS #define GSF_META_NAME_DOCUMENT_PARTS #define GSF_META_NAME_MANAGER #define GSF_META_NAME_COMPANY #define GSF_META_NAME_LINKS_DIRTY #define GSF_META_NAME_DICTIONARY #define GSF_META_NAME_MSOLE_UNKNOWN_17 #define GSF_META_NAME_MSOLE_UNKNOWN_18 #define GSF_META_NAME_MSOLE_UNKNOWN_19 #define GSF_META_NAME_MSOLE_UNKNOWN_20 #define GSF_META_NAME_MSOLE_UNKNOWN_21 #define GSF_META_NAME_MSOLE_UNKNOWN_22 #define GSF_META_NAME_MSOLE_UNKNOWN_23 #define GSF_META_NAME_LOCALE_SYSTEM_DEFAULT #define GSF_META_NAME_CASE_SENSITIVE #define GSF_META_NAME_PRINTED_BY #define GSF_META_NAME_INITIAL_CREATOR Object Hierarchy GObject +----GsfDocMetaData GObject +----GsfDocPropVector Description Details <anchor id="GsfDocMetaData-struct" role="struct"/>GsfDocMetaData GsfDocMetaDatatypedef struct _GsfDocMetaData GsfDocMetaData; <anchor id="gsf-doc-meta-data-new" role="function"/>gsf_doc_meta_data_new () gsf_doc_meta_data_newGsfDocMetaData* gsf_doc_meta_data_new (void); Returns :a new metadata property collection <anchor id="gsf-doc-meta-data-lookup" role="function"/>gsf_doc_meta_data_lookup () gsf_doc_meta_data_lookupGsfDocProp* gsf_doc_meta_data_lookup (GsfDocMetaData const *meta, char const *name); meta : GsfDocMetaData name : Returns :the property with name id in meta. The caller can modify the property value and link but not the name. <anchor id="gsf-doc-meta-data-insert" role="function"/>gsf_doc_meta_data_insert () gsf_doc_meta_data_insertvoid gsf_doc_meta_data_insert (GsfDocMetaData *meta, char *name, GValue *value); Take ownership of name and value and insert a property into meta. If a property exists with name, it is replaced (The link is lost) meta : GsfDocMetaData name : value : GValue <anchor id="gsf-doc-meta-data-remove" role="function"/>gsf_doc_meta_data_remove () gsf_doc_meta_data_removevoid gsf_doc_meta_data_remove (GsfDocMetaData *meta, char const *name); If name does not exist in the collection, do nothing. If name does exist, remove it and its value from the collection meta : the collection name : the non-null string name of the property <anchor id="gsf-doc-meta-data-steal" role="function"/>gsf_doc_meta_data_steal () gsf_doc_meta_data_stealGsfDocProp* gsf_doc_meta_data_steal (GsfDocMetaData *meta, char const *name); meta : name : Returns : <anchor id="gsf-doc-meta-data-store" role="function"/>gsf_doc_meta_data_store () gsf_doc_meta_data_storevoid gsf_doc_meta_data_store (GsfDocMetaData *meta, GsfDocProp *prop); meta : GsfDocMetaData prop : GsfDocProp <anchor id="gsf-doc-meta-data-foreach" role="function"/>gsf_doc_meta_data_foreach () gsf_doc_meta_data_foreachvoid gsf_doc_meta_data_foreach (GsfDocMetaData const *meta, GHFunc func, gpointer user_data); Iterate through each (key, value) pair in this collection meta : the collection func : the function called once for each element in the collection user_data : any supplied user data or NULL <anchor id="gsf-doc-meta-data-size" role="function"/>gsf_doc_meta_data_size () gsf_doc_meta_data_sizegsize gsf_doc_meta_data_size (GsfDocMetaData const *meta); meta : the collection Returns :the number of items in this collection <anchor id="GsfDocProp" role="struct"/>GsfDocProp GsfDocProptypedef struct _GsfDocProp GsfDocProp; <anchor id="gsf-doc-prop-new" role="function"/>gsf_doc_prop_new () gsf_doc_prop_newGsfDocProp* gsf_doc_prop_new (char *name); name : Returns :a new GsfDocProp which the caller is responsible for freeing. Takes ownership of name. <anchor id="gsf-doc-prop-free" role="function"/>gsf_doc_prop_free () gsf_doc_prop_freevoid gsf_doc_prop_free (GsfDocProp *prop); If prop is non NULL free the memory assosociated with it prop : GsfDocProp <anchor id="gsf-doc-prop-get-name" role="function"/>gsf_doc_prop_get_name () gsf_doc_prop_get_namecharconst * gsf_doc_prop_get_name (GsfDocProp const *prop); prop : GsfDocProp Returns :the name of the property, the caller should not modify the result. <anchor id="gsf-doc-prop-get-val" role="function"/>gsf_doc_prop_get_val () gsf_doc_prop_get_valGValueconst * gsf_doc_prop_get_val (GsfDocProp const *prop); prop : the property Returns :the value of the property, the caller should not modify the result. <anchor id="gsf-doc-prop-set-val" role="function"/>gsf_doc_prop_set_val () gsf_doc_prop_set_valvoid gsf_doc_prop_set_val (GsfDocProp *prop, GValue *val); Assigns val to prop, and unsets and frees the current value. prop : GsfDocProp val : GValue <anchor id="gsf-doc-prop-get-link" role="function"/>gsf_doc_prop_get_link () gsf_doc_prop_get_linkcharconst * gsf_doc_prop_get_link (GsfDocProp const *prop); prop : GsfDocProp Returns :the current link descriptor of prop. The result should not be freed or modified. <anchor id="gsf-doc-prop-set-link" role="function"/>gsf_doc_prop_set_link () gsf_doc_prop_set_linkvoid gsf_doc_prop_set_link (GsfDocProp *prop, char *link); prop : GsfDocProp link : <anchor id="GsfDocPropVector-struct" role="struct"/>GsfDocPropVector GsfDocPropVectortypedef struct _GsfDocPropVector GsfDocPropVector; <anchor id="gsf-docprop-vector-new" role="function"/>gsf_docprop_vector_new () gsf_docprop_vector_newGsfDocPropVector* gsf_docprop_vector_new (void); This function creates a new gsf_docprop_vector object. Returns : GsfDocPropVector* <anchor id="gsf-docprop-vector-append" role="function"/>gsf_docprop_vector_append () gsf_docprop_vector_appendvoid gsf_docprop_vector_append (GsfDocPropVector *vector, GValue *value); Insert a copy of value as the last element of vector. vector : The vector to which the GValue will be added value : The GValue to add to vector <anchor id="gsf-docprop-vector-as-string" role="function"/>gsf_docprop_vector_as_string () gsf_docprop_vector_as_stringgchar* gsf_docprop_vector_as_string (GsfDocPropVector const *vector); This function returns a string which represents all the GValues in vector. The caller is responsible for freeing the result. vector : The GsfDocPropVector from which GValues will be extracted. Returns : a string of comma-separated values <anchor id="gsf-value-get-docprop-varray" role="function"/>gsf_value_get_docprop_varray () gsf_value_get_docprop_varrayGValueArray* gsf_value_get_docprop_varray (GValue const *value); value : Returns : <anchor id="gsf-value-get-docprop-vector" role="function"/>gsf_value_get_docprop_vector () gsf_value_get_docprop_vectorGsfDocPropVector* gsf_value_get_docprop_vector (GValue const *value); value : Returns : <anchor id="GSF-META-NAME-TITLE:CAPS" role="macro"/>GSF_META_NAME_TITLE GSF_META_NAME_TITLE#define GSF_META_NAME_TITLE "dc:title" (String) A formal name given to the resource. <anchor id="GSF-META-NAME-DESCRIPTION:CAPS" role="macro"/>GSF_META_NAME_DESCRIPTION GSF_META_NAME_DESCRIPTION#define GSF_META_NAME_DESCRIPTION "dc:description" (String) An account of the content of the resource. <anchor id="GSF-META-NAME-SUBJECT:CAPS" role="macro"/>GSF_META_NAME_SUBJECT GSF_META_NAME_SUBJECT#define GSF_META_NAME_SUBJECT "dc:subject" (String) The topic of the content of the resource, typically including keywords. <anchor id="GSF-META-NAME-DATE-MODIFIED:CAPS" role="macro"/>GSF_META_NAME_DATE_MODIFIED GSF_META_NAME_DATE_MODIFIED#define GSF_META_NAME_DATE_MODIFIED "dc:date" (GsfTimestamp) The last time this document was saved. 1.14.0 Moved from dc:date-modified to dc:date. <anchor id="GSF-META-NAME-DATE-CREATED:CAPS" role="macro"/>GSF_META_NAME_DATE_CREATED GSF_META_NAME_DATE_CREATED#define GSF_META_NAME_DATE_CREATED "meta:creation-date" (Date as ISO String) A date associated with an event in the life cycle of the resource (creation/publication date). Moved from gsf:date-created to meta:creation-date. This way can be used correctly by OpenDocument and Gnumeric. <anchor id="GSF-META-NAME-KEYWORDS:CAPS" role="macro"/>GSF_META_NAME_KEYWORDS GSF_META_NAME_KEYWORDS#define GSF_META_NAME_KEYWORDS "dc:keywords" (GsfDocPropVector of String) Searchable, indexable keywords. Similar to PDF keywords or HTML's meta block. <anchor id="GSF-META-NAME-LANGUAGE:CAPS" role="macro"/>GSF_META_NAME_LANGUAGE GSF_META_NAME_LANGUAGE#define GSF_META_NAME_LANGUAGE "dc:language" (String) The locale language of the intellectual content of the resource (basically xx_YY form for us). 1.14.0 Clarified that this is unique from _NAME_CODEPAGE in msole <anchor id="GSF-META-NAME-REVISION-COUNT:CAPS" role="macro"/>GSF_META_NAME_REVISION_COUNT GSF_META_NAME_REVISION_COUNT#define GSF_META_NAME_REVISION_COUNT "meta:editing-cycles" (Integer) Count of revision on the document, if appropriate. Moved from gsf:revision-count to meta:editing-cycles. This way can be used correctly by OpenDocument and Gnumeric. <anchor id="GSF-META-NAME-EDITING-DURATION:CAPS" role="macro"/>GSF_META_NAME_EDITING_DURATION GSF_META_NAME_EDITING_DURATION#define GSF_META_NAME_EDITING_DURATION "meta:editing-duration" (Date as ISO String) The total-time taken until the last modification. Moved from "gsf" to "meta". This way can be used correctly by OpenDocument and Gnumeric. <anchor id="GSF-META-NAME-TABLE-COUNT:CAPS" role="macro"/>GSF_META_NAME_TABLE_COUNT GSF_META_NAME_TABLE_COUNT#define GSF_META_NAME_TABLE_COUNT "gsf:table-count" (Integer) Count of tables in the document, if appropriate. <anchor id="GSF-META-NAME-IMAGE-COUNT:CAPS" role="macro"/>GSF_META_NAME_IMAGE_COUNT GSF_META_NAME_IMAGE_COUNT#define GSF_META_NAME_IMAGE_COUNT "gsf:image-count" (Integer) Count of images in the document, if appropriate. <anchor id="GSF-META-NAME-OBJECT-COUNT:CAPS" role="macro"/>GSF_META_NAME_OBJECT_COUNT GSF_META_NAME_OBJECT_COUNT#define GSF_META_NAME_OBJECT_COUNT "gsf:object-count" (Integer) Count of objects (OLE and other graphics) in the document, if appropriate. <anchor id="GSF-META-NAME-PAGE-COUNT:CAPS" role="macro"/>GSF_META_NAME_PAGE_COUNT GSF_META_NAME_PAGE_COUNT#define GSF_META_NAME_PAGE_COUNT "gsf:page-count" (Integer) Count of pages in the document, if appropriate. <anchor id="GSF-META-NAME-PARAGRAPH-COUNT:CAPS" role="macro"/>GSF_META_NAME_PARAGRAPH_COUNT GSF_META_NAME_PARAGRAPH_COUNT#define GSF_META_NAME_PARAGRAPH_COUNT "gsf:paragraph-count" (Integer) Count of paragraphs in the document, if appropriate. <anchor id="GSF-META-NAME-WORD-COUNT:CAPS" role="macro"/>GSF_META_NAME_WORD_COUNT GSF_META_NAME_WORD_COUNT#define GSF_META_NAME_WORD_COUNT "gsf:word-count" (Integer) Count of words in the document. <anchor id="GSF-META-NAME-CHARACTER-COUNT:CAPS" role="macro"/>GSF_META_NAME_CHARACTER_COUNT GSF_META_NAME_CHARACTER_COUNT#define GSF_META_NAME_CHARACTER_COUNT "gsf:character-count" (Integer) Count of characters in the document. TODO See how to sync this with ODF's document-statistic <anchor id="GSF-META-NAME-CELL-COUNT:CAPS" role="macro"/>GSF_META_NAME_CELL_COUNT GSF_META_NAME_CELL_COUNT#define GSF_META_NAME_CELL_COUNT "gsf:cell-count" (Integer) Count of cells in the spread-sheet document, if appropriate. <anchor id="GSF-META-NAME-SPREADSHEET-COUNT:CAPS" role="macro"/>GSF_META_NAME_SPREADSHEET_COUNT GSF_META_NAME_SPREADSHEET_COUNT#define GSF_META_NAME_SPREADSHEET_COUNT "gsf:spreadsheet-count" (Integer) Count of pages in the document, if appropriate. <anchor id="GSF-META-NAME-CREATOR:CAPS" role="macro"/>GSF_META_NAME_CREATOR GSF_META_NAME_CREATOR#define GSF_META_NAME_CREATOR "dc:creator" (String) An entity primarily responsible for making the content of the resource typically a person, organization, or service. 1.14.0 Moved from "gsf" to "dc". <anchor id="GSF-META-NAME-TEMPLATE:CAPS" role="macro"/>GSF_META_NAME_TEMPLATE GSF_META_NAME_TEMPLATE#define GSF_META_NAME_TEMPLATE "meta:template" (String) The template file that is been used to generate this document. Moved from "gsf" to "meta". This way can be used correctly by OpenDocument and Gnumeric. <anchor id="GSF-META-NAME-LAST-SAVED-BY:CAPS" role="macro"/>GSF_META_NAME_LAST_SAVED_BY GSF_META_NAME_LAST_SAVED_BY#define GSF_META_NAME_LAST_SAVED_BY "gsf:last-saved-by" <anchor id="GSF-META-NAME-LAST-PRINTED:CAPS" role="macro"/>GSF_META_NAME_LAST_PRINTED GSF_META_NAME_LAST_PRINTED#define GSF_META_NAME_LAST_PRINTED "dc:last-printed" (Date as ISO String) The last time this document was printed. 1.14.0 Moved from "gsf" to "dc". <anchor id="GSF-META-NAME-SECURITY:CAPS" role="macro"/>GSF_META_NAME_SECURITY GSF_META_NAME_SECURITY#define GSF_META_NAME_SECURITY "gsf:security" (Integer) Level of security. LevelValue None0 Password protected1 Read-only recommended2 Read-only enforced3 Locked for annotations4 <anchor id="GSF-META-NAME-CATEGORY:CAPS" role="macro"/>GSF_META_NAME_CATEGORY GSF_META_NAME_CATEGORY#define GSF_META_NAME_CATEGORY "gsf:category" (String) Category of the document. example??? <anchor id="GSF-META-NAME-PRESENTATION-FORMAT:CAPS" role="macro"/>GSF_META_NAME_PRESENTATION_FORMAT GSF_META_NAME_PRESENTATION_FORMAT#define GSF_META_NAME_PRESENTATION_FORMAT "gsf:presentation-format" (String) Type of presentation, like "On-screen Show", "SlideView" etc. <anchor id="GSF-META-NAME-THUMBNAIL:CAPS" role="macro"/>GSF_META_NAME_THUMBNAIL GSF_META_NAME_THUMBNAIL#define GSF_META_NAME_THUMBNAIL "gsf:thumbnail" (Clipboard Format (VT_CF)) Thumbnail data of the document, typically a preview image of the document. <anchor id="GSF-META-NAME-GENERATOR:CAPS" role="macro"/>GSF_META_NAME_GENERATOR GSF_META_NAME_GENERATOR#define GSF_META_NAME_GENERATOR "meta:generator" (String) The creator (product) of this document. AbiWord, Gnumeric, etc... Moved from "gsf" to "meta". This way can be used correctly by OpenDocument and Gnumeric. <anchor id="GSF-META-NAME-LINE-COUNT:CAPS" role="macro"/>GSF_META_NAME_LINE_COUNT GSF_META_NAME_LINE_COUNT#define GSF_META_NAME_LINE_COUNT "gsf:line-count" (Integer) Count of liness in the document. <anchor id="GSF-META-NAME-SLIDE-COUNT:CAPS" role="macro"/>GSF_META_NAME_SLIDE_COUNT GSF_META_NAME_SLIDE_COUNT#define GSF_META_NAME_SLIDE_COUNT "gsf:slide-count" (Integer) Count of slides in the presentation document. <anchor id="GSF-META-NAME-NOTE-COUNT:CAPS" role="macro"/>GSF_META_NAME_NOTE_COUNT GSF_META_NAME_NOTE_COUNT#define GSF_META_NAME_NOTE_COUNT "gsf:note-count" (Integer) Count of "notes" in the document. <anchor id="GSF-META-NAME-HIDDEN-SLIDE-COUNT:CAPS" role="macro"/>GSF_META_NAME_HIDDEN_SLIDE_COUNT GSF_META_NAME_HIDDEN_SLIDE_COUNT#define GSF_META_NAME_HIDDEN_SLIDE_COUNT "gsf:hidden-slide-count" (Integer) Count of hidden-slides in the presentation document. <anchor id="GSF-META-NAME-MM-CLIP-COUNT:CAPS" role="macro"/>GSF_META_NAME_MM_CLIP_COUNT GSF_META_NAME_MM_CLIP_COUNT#define GSF_META_NAME_MM_CLIP_COUNT "gsf:MM-clip-count" (Integer) Count of "multi-media" clips in the document. <anchor id="GSF-META-NAME-BYTE-COUNT:CAPS" role="macro"/>GSF_META_NAME_BYTE_COUNT GSF_META_NAME_BYTE_COUNT#define GSF_META_NAME_BYTE_COUNT "gsf:byte-count" (Integer) Count of bytes in the document. <anchor id="GSF-META-NAME-SCALE:CAPS" role="macro"/>GSF_META_NAME_SCALE GSF_META_NAME_SCALE#define GSF_META_NAME_SCALE "gsf:scale" <anchor id="GSF-META-NAME-HEADING-PAIRS:CAPS" role="macro"/>GSF_META_NAME_HEADING_PAIRS GSF_META_NAME_HEADING_PAIRS#define GSF_META_NAME_HEADING_PAIRS "gsf:heading-pairs" <anchor id="GSF-META-NAME-DOCUMENT-PARTS:CAPS" role="macro"/>GSF_META_NAME_DOCUMENT_PARTS GSF_META_NAME_DOCUMENT_PARTS#define GSF_META_NAME_DOCUMENT_PARTS "gsf:document-parts" <anchor id="GSF-META-NAME-MANAGER:CAPS" role="macro"/>GSF_META_NAME_MANAGER GSF_META_NAME_MANAGER#define GSF_META_NAME_MANAGER "gsf:manager" (String) Name of the manager of "CREATOR" entity. <anchor id="GSF-META-NAME-COMPANY:CAPS" role="macro"/>GSF_META_NAME_COMPANY GSF_META_NAME_COMPANY#define GSF_META_NAME_COMPANY "gsf:company" (String) Name of the company/organization that the "CREATOR" entity is associated with. <anchor id="GSF-META-NAME-LINKS-DIRTY:CAPS" role="macro"/>GSF_META_NAME_LINKS_DIRTY GSF_META_NAME_LINKS_DIRTY#define GSF_META_NAME_LINKS_DIRTY "gsf:links-dirty" <anchor id="GSF-META-NAME-DICTIONARY:CAPS" role="macro"/>GSF_META_NAME_DICTIONARY GSF_META_NAME_DICTIONARY#define GSF_META_NAME_DICTIONARY "gsf:dictionary" <anchor id="GSF-META-NAME-MSOLE-UNKNOWN-17:CAPS" role="macro"/>GSF_META_NAME_MSOLE_UNKNOWN_17 GSF_META_NAME_MSOLE_UNKNOWN_17#define GSF_META_NAME_MSOLE_UNKNOWN_17 "msole:unknown-doc-17" <anchor id="GSF-META-NAME-MSOLE-UNKNOWN-18:CAPS" role="macro"/>GSF_META_NAME_MSOLE_UNKNOWN_18 GSF_META_NAME_MSOLE_UNKNOWN_18#define GSF_META_NAME_MSOLE_UNKNOWN_18 "msole:unknown-doc-18" <anchor id="GSF-META-NAME-MSOLE-UNKNOWN-19:CAPS" role="macro"/>GSF_META_NAME_MSOLE_UNKNOWN_19 GSF_META_NAME_MSOLE_UNKNOWN_19#define GSF_META_NAME_MSOLE_UNKNOWN_19 "msole:unknown-doc-19" /* bool */ <anchor id="GSF-META-NAME-MSOLE-UNKNOWN-20:CAPS" role="macro"/>GSF_META_NAME_MSOLE_UNKNOWN_20 GSF_META_NAME_MSOLE_UNKNOWN_20#define GSF_META_NAME_MSOLE_UNKNOWN_20 "msole:unknown-doc-20" <anchor id="GSF-META-NAME-MSOLE-UNKNOWN-21:CAPS" role="macro"/>GSF_META_NAME_MSOLE_UNKNOWN_21 GSF_META_NAME_MSOLE_UNKNOWN_21#define GSF_META_NAME_MSOLE_UNKNOWN_21 "msole:unknown-doc-21" <anchor id="GSF-META-NAME-MSOLE-UNKNOWN-22:CAPS" role="macro"/>GSF_META_NAME_MSOLE_UNKNOWN_22 GSF_META_NAME_MSOLE_UNKNOWN_22#define GSF_META_NAME_MSOLE_UNKNOWN_22 "msole:unknown-doc-22" /* bool */ <anchor id="GSF-META-NAME-MSOLE-UNKNOWN-23:CAPS" role="macro"/>GSF_META_NAME_MSOLE_UNKNOWN_23 GSF_META_NAME_MSOLE_UNKNOWN_23#define GSF_META_NAME_MSOLE_UNKNOWN_23 "msole:unknown-doc-23" /* i4 */ <anchor id="GSF-META-NAME-LOCALE-SYSTEM-DEFAULT:CAPS" role="macro"/>GSF_META_NAME_LOCALE_SYSTEM_DEFAULT GSF_META_NAME_LOCALE_SYSTEM_DEFAULT#define GSF_META_NAME_LOCALE_SYSTEM_DEFAULT "gsf:default-locale" (Unsigned Integer) Identifier representing the default system locale. <anchor id="GSF-META-NAME-CASE-SENSITIVE:CAPS" role="macro"/>GSF_META_NAME_CASE_SENSITIVE GSF_META_NAME_CASE_SENSITIVE#define GSF_META_NAME_CASE_SENSITIVE "gsf:case-sensitivity" (Unsigned Integer) Identifier representing the case-sensitiveness. of what ?? why is it an integer ?? <anchor id="GSF-META-NAME-PRINTED-BY:CAPS" role="macro"/>GSF_META_NAME_PRINTED_BY GSF_META_NAME_PRINTED_BY#define GSF_META_NAME_PRINTED_BY "meta:printed-by" (String) Specifies the name of the last person who printed the document. Moved from "gsf" to "meta". This way can be used correctly by OpenDocument and Gnumeric. <anchor id="GSF-META-NAME-INITIAL-CREATOR:CAPS" role="macro"/>GSF_META_NAME_INITIAL_CREATOR GSF_META_NAME_INITIAL_CREATOR#define GSF_META_NAME_INITIAL_CREATOR "meta:initial-creator" (String) Specifies the name of the person who created the document initially. Moved from "gsf" to "meta". This way can be used correctly by OpenDocument and Gnumeric. libgsf-1.13.99/doc/xml/msole.xml0000644000076500017500000006043710401600622013301 00000000000000 MS OLE2 3 GSF Library MS OLE2 Microsoft OLE2 files Synopsis GsfInfileMSOle; GsfInfile* gsf_infile_msole_new (GsfInput *source, GError **err); gboolean gsf_infile_msole_get_class_id (GsfInfileMSOle const *ole, guint8 *res); GsfOutfileMSOle; GsfOutfile* gsf_outfile_msole_new (GsfOutput *sink); GsfOutfile* gsf_outfile_msole_new_full (GsfOutput *sink, guint bb_size, guint sb_size); gboolean gsf_outfile_msole_set_class_id (GsfOutfileMSOle *ole, guint8 const *clsid); GError* gsf_msole_metadata_read (GsfInput *in, GsfDocMetaData *accum); gboolean gsf_msole_metadata_write (GsfOutput *out, GsfDocMetaData const *meta_data, gboolean doc_not_component); GIConv gsf_msole_iconv_open_codepages_for_export (int codepage_to, char const *from); GIConv gsf_msole_iconv_open_codepage_for_import (char const *to, int codepage); GIConv gsf_msole_iconv_open_for_export (void); GIConv gsf_msole_iconv_open_codepage_for_export (int codepage_to); GIConv gsf_msole_iconv_open_for_import (int codepage); int gsf_msole_iconv_win_codepage (void); guint gsf_msole_codepage_to_lid (int codepage); int gsf_msole_lid_to_codepage (guint lid); gchar* gsf_msole_lid_to_codepage_str (guint lid); guint gsf_msole_lid_for_language (char const *lang); charconst * gsf_msole_language_for_lid (guint lid); GByteArray* gsf_msole_inflate (GsfInput *input, gsf_off_t offset); Object Hierarchy GObject +----GsfInput +----GsfInfile +----GsfInfileMSOle GObject +----GsfOutput +----GsfOutfile +----GsfOutfileMSOle Description Object Linking and Embedding 2, or OLE2 was developed by Microsoft and provides ways to create combined documents out of parts from different types of office applications (like spreadsheets and word processor files). These routines handle the OLE2 file format. Details <anchor id="GsfInfileMSOle-struct" role="struct"/>GsfInfileMSOle GsfInfileMSOletypedef struct _GsfInfileMSOle GsfInfileMSOle; <anchor id="gsf-infile-msole-new" role="function"/>gsf_infile_msole_new () gsf_infile_msole_newGsfInfile* gsf_infile_msole_new (GsfInput *source, GError **err); Opens the root directory of an MS OLE file. This adds a reference to source. source : err : Returns : the new ole file handler <anchor id="gsf-infile-msole-get-class-id" role="function"/>gsf_infile_msole_get_class_id () gsf_infile_msole_get_class_idgboolean gsf_infile_msole_get_class_id (GsfInfileMSOle const *ole, guint8 *res); Retrieves the 16 byte indentifier (often a GUID in MS Windows apps) stored within the directory associated with ole and stores it in res. ole : a GsfInfileMSOle res : 16 byte identifier (often a GUID in MS Windows apps) Returns : TRUE on success <anchor id="GsfOutfileMSOle-struct" role="struct"/>GsfOutfileMSOle GsfOutfileMSOletypedef struct _GsfOutfileMSOle GsfOutfileMSOle; <anchor id="gsf-outfile-msole-new" role="function"/>gsf_outfile_msole_new () gsf_outfile_msole_newGsfOutfile* gsf_outfile_msole_new (GsfOutput *sink); Creates the root directory of an MS OLE file and manages the addition of children. This adds a reference to sink. sink : a GsfOutput to hold the OLE2 file Returns : the new ole file handler. <anchor id="gsf-outfile-msole-new-full" role="function"/>gsf_outfile_msole_new_full () gsf_outfile_msole_new_fullGsfOutfile* gsf_outfile_msole_new_full (GsfOutput *sink, guint bb_size, guint sb_size); Creates the root directory of an MS OLE file and manages the addition of children. This adds a reference to sink. sink : a GsfOutput to hold the OLE2 file. bb_size : size of large blocks. sb_size : size of small blocks. Returns : the new ole file handler. <anchor id="gsf-outfile-msole-set-class-id" role="function"/>gsf_outfile_msole_set_class_id () gsf_outfile_msole_set_class_idgboolean gsf_outfile_msole_set_class_id (GsfOutfileMSOle *ole, guint8 const *clsid); Write clsid to the directory associated with ole. ole : a GsfOutfileMSOle clsid : 16 byte identifier (often a GUID in MS Windows apps) Returns : TRUE on success. <anchor id="gsf-msole-metadata-read" role="function"/>gsf_msole_metadata_read () gsf_msole_metadata_readGError* gsf_msole_metadata_read (GsfInput *in, GsfDocMetaData *accum); Read a stream formated as a set of MS OLE properties from in and store the results in accum. in : GsfInput accum : GsfDocMetaData Returns :GError which the caller must free on error. <anchor id="gsf-msole-metadata-write" role="function"/>gsf_msole_metadata_write () gsf_msole_metadata_writegboolean gsf_msole_metadata_write (GsfOutput *out, GsfDocMetaData const *meta_data, gboolean doc_not_component); out : GsfOutput meta_data : GsfDocMetaData doc_not_component : a kludge to differentiate DocumentSummary from Summary Returns :TRUE on success; <anchor id="gsf-msole-iconv-open-codepages-for-export" role="function"/>gsf_msole_iconv_open_codepages_for_export () gsf_msole_iconv_open_codepages_for_exportGIConv gsf_msole_iconv_open_codepages_for_export (int codepage_to, char const *from); codepage_to : from : Returns :an iconv converter to go from utf8 -> to our best guess at a useful windows codepage. <anchor id="gsf-msole-iconv-open-codepage-for-import" role="function"/>gsf_msole_iconv_open_codepage_for_import () gsf_msole_iconv_open_codepage_for_importGIConv gsf_msole_iconv_open_codepage_for_import (char const *to, int codepage); to : codepage : Returns :an iconv converter for codepage -> utf8. <anchor id="gsf-msole-iconv-open-for-export" role="function"/>gsf_msole_iconv_open_for_export () gsf_msole_iconv_open_for_exportGIConv gsf_msole_iconv_open_for_export (void); Returns :an iconv convert to go from utf8 -> to our best guess at a useful windows codepage. <anchor id="gsf-msole-iconv-open-codepage-for-export" role="function"/>gsf_msole_iconv_open_codepage_for_export () gsf_msole_iconv_open_codepage_for_exportGIConv gsf_msole_iconv_open_codepage_for_export (int codepage_to); codepage_to : Returns :an iconv converter to go from utf8 -> to our best guess at a useful windows codepage. <anchor id="gsf-msole-iconv-open-for-import" role="function"/>gsf_msole_iconv_open_for_import () gsf_msole_iconv_open_for_importGIConv gsf_msole_iconv_open_for_import (int codepage); codepage : Returns :an iconv converter for single byte encodings codepage -> utf8. Attempt to handle the semantics of a specification for multibyte encodings since this is only supposed to be used for single bytes. <anchor id="gsf-msole-iconv-win-codepage" role="function"/>gsf_msole_iconv_win_codepage () gsf_msole_iconv_win_codepageint gsf_msole_iconv_win_codepage (void); Returns :our best guess at the applicable windows code page based on an environment variable or the current locale. <anchor id="gsf-msole-codepage-to-lid" role="function"/>gsf_msole_codepage_to_lid () gsf_msole_codepage_to_lidguint gsf_msole_codepage_to_lid (int codepage); codepage : Returns : <anchor id="gsf-msole-lid-to-codepage" role="function"/>gsf_msole_lid_to_codepage () gsf_msole_lid_to_codepageint gsf_msole_lid_to_codepage (guint lid); lid : Returns :our best guess at the codepage for the given language id <anchor id="gsf-msole-lid-to-codepage-str" role="function"/>gsf_msole_lid_to_codepage_str () gsf_msole_lid_to_codepage_strgchar* gsf_msole_lid_to_codepage_str (guint lid); lid : Returns :the Iconv codepage string for the given LID. Return value must be g_free()'d <anchor id="gsf-msole-lid-for-language" role="function"/>gsf_msole_lid_for_language () gsf_msole_lid_for_languageguint gsf_msole_lid_for_language (char const *lang); lang : Returns :the LID (Language Identifier) for the input language. If lang is null, return 0x0400 ("-none-"), and not 0x0000 ("no proofing") <anchor id="gsf-msole-language-for-lid" role="function"/>gsf_msole_language_for_lid () gsf_msole_language_for_lidcharconst * gsf_msole_language_for_lid (guint lid); lid : Returns :the xx_YY style string (can be just xx or xxx) for the given LID. Return value must not be freed. If the LID is not found, is set to 0x0400, or is set to 0x0000, will return "-none-" <anchor id="gsf-msole-inflate" role="function"/>gsf_msole_inflate () gsf_msole_inflateGByteArray* gsf_msole_inflate (GsfInput *input, gsf_off_t offset); Decompresses an LZ compressed stream. input : stream to read from offset : offset into it for start byte of compresse stream Returns : A GByteArray that the caller is responsible for freeing See Also The Wikipedia article "Object linking and embedding". libgsf-1.13.99/doc/xml/outfile.xml0000644000076500017500000001636610401600622013633 00000000000000 Outfile writing structed files 3 GSF Library Outfile writing structed files Synopsis GsfOutfile; GsfOutput* gsf_outfile_new_child (GsfOutfile *outfile, char const *name, gboolean is_dir); GsfOutput* gsf_outfile_new_child_full (GsfOutfile *outfile, char const *name, gboolean is_dir, char const *first_property_name, ...); GsfOutput* gsf_outfile_new_child_varg (GsfOutfile *outfile, char const *name, gboolean is_dir, char const *first_property_name, va_list args); Object Hierarchy GObject +----GsfOutput +----GsfOutfile +----GsfOutfileMSOle +----GsfOutfileStdio +----GsfOutfileZip Description Details <anchor id="GsfOutfile-struct" role="struct"/>GsfOutfile GsfOutfiletypedef struct _GsfOutfile GsfOutfile; <anchor id="gsf-outfile-new-child" role="function"/>gsf_outfile_new_child () gsf_outfile_new_childGsfOutput* gsf_outfile_new_child (GsfOutfile *outfile, char const *name, gboolean is_dir); outfile : A GsfOutfile name : The name of the new child to create is_dir : TRUE to create a directory, FALSE to create a plain file Returns :a newly created child <anchor id="gsf-outfile-new-child-full" role="function"/>gsf_outfile_new_child_full () gsf_outfile_new_child_fullGsfOutput* gsf_outfile_new_child_full (GsfOutfile *outfile, char const *name, gboolean is_dir, char const *first_property_name, ...); outfile : A GsfOutfile name : The name of the new child to create is_dir : TRUE to create a directory, FALSE to create a plain file first_property_name : ... : Returns :a newly created child <anchor id="gsf-outfile-new-child-varg" role="function"/>gsf_outfile_new_child_varg () gsf_outfile_new_child_vargGsfOutput* gsf_outfile_new_child_varg (GsfOutfile *outfile, char const *name, gboolean is_dir, char const *first_property_name, va_list args); outfile : name : is_dir : first_property_name : args : Returns : libgsf-1.13.99/doc/xml/output.xml0000644000076500017500000006070110401600622013514 00000000000000 Output to unstructured files 3 GSF Library Output to unstructured files Synopsis GsfOutput; GsfOutfile* gsf_output_container (GsfOutput const *output); gsf_off_t gsf_output_size (GsfOutput *output); gboolean gsf_output_close (GsfOutput *output); gsf_off_t gsf_output_tell (GsfOutput *output); gboolean gsf_output_seek (GsfOutput *output, gsf_off_t offset, GSeekType whence); gboolean gsf_output_write (GsfOutput *output, size_t num_bytes, guint8 const *data); gboolean gsf_output_puts (GsfOutput *output, char const *line); gboolean gsf_output_printf (GsfOutput *output, char const *format, ...); gsf_off_t gsf_output_vprintf (GsfOutput *output, char const *format, va_list args); charconst * gsf_output_name (GsfOutput const *output); gboolean gsf_output_set_name_from_filename (GsfOutput *output, char const *filename); GQuark gsf_output_error_id (void); gboolean gsf_output_set_error (GsfOutput *output, gint code, char const *format, ...); GErrorconst * gsf_output_error (GsfOutput const *output); gboolean gsf_output_is_closed (GsfOutput const *output); gboolean gsf_output_wrap (GObject *wrapper, GsfOutput *wrapee); gboolean gsf_output_unwrap (GObject *wrapper, GsfOutput *wrapee); Object Hierarchy GObject +----GsfOutput +----GsfOutfile +----GsfOutputBzip +----GsfOutputCsv +----GsfOutputGZip +----GsfOutputIconv +----GsfOutputIOChannel +----GsfOutputMemory +----GsfOutputStdio Properties "is-closed" gboolean : Read "name" gchararray : Read "position" gint64 : Read "size" gint64 : Read Description Details <anchor id="GsfOutput-struct" role="struct"/>GsfOutput GsfOutputtypedef struct _GsfOutput GsfOutput; <anchor id="gsf-output-container" role="function"/>gsf_output_container () gsf_output_containerGsfOutfile* gsf_output_container (GsfOutput const *output); output : Returns :, but does not add a reference to output's container. Potentially NULL <anchor id="gsf-output-size" role="function"/>gsf_output_size () gsf_output_sizegsf_off_t gsf_output_size (GsfOutput *output); Determine the size of the output stream output. output : GsfOutput Returns : the size of the output, or -1 if it does not have a size. <anchor id="gsf-output-close" role="function"/>gsf_output_close () gsf_output_closegboolean gsf_output_close (GsfOutput *output); Close a stream. output : Returns : FALSE on error <anchor id="gsf-output-tell" role="function"/>gsf_output_tell () gsf_output_tellgsf_off_t gsf_output_tell (GsfOutput *output); Tell the current position in output, similar to ftell 3. output : GsfOutput Returns :: the current position in the file <anchor id="gsf-output-seek" role="function"/>gsf_output_seek () gsf_output_seekgboolean gsf_output_seek (GsfOutput *output, gsf_off_t offset, GSeekType whence); Reposition in output stream output. whence specifies what the offset is relative to: the beginning of the stream (G_SEEK_SET), current position in the stream (G_SEEK_CUR) or the end of the stream (G_SEEK_END). This function is similar to fseek 3. output : GsfOutput offset : Relative amount to reposition whence : What the offset is relative to. Returns : FALSE on error. <anchor id="gsf-output-write" role="function"/>gsf_output_write () gsf_output_writegboolean gsf_output_write (GsfOutput *output, size_t num_bytes, guint8 const *data); Write num_bytes of data to output. output : Output stream num_bytes : Number of bytes to write data : Data to write. Returns :: FALSE on error. <anchor id="gsf-output-puts" role="function"/>gsf_output_puts () gsf_output_putsgboolean gsf_output_puts (GsfOutput *output, char const *line); Like fputs, this assumes that the line already ends with a newline output : A GsfOutput line : null terminated string to write Returns : TRUE if successful, FALSE if not <anchor id="gsf-output-printf" role="function"/>gsf_output_printf () gsf_output_printfgboolean gsf_output_printf (GsfOutput *output, char const *format, ...); Output Varargs to output using the format string format, similar to printf 3. output : A GsfOutput format : The printf-style format string ... : the arguments for format Returns :: TRUE if successful, FALSE if not <anchor id="gsf-output-vprintf" role="function"/>gsf_output_vprintf () gsf_output_vprintfgsf_off_t gsf_output_vprintf (GsfOutput *output, char const *format, va_list args); Output args to output using the format string format, similar to vprintf 3. output : A GsfOutput format : The printf-style format string args : the arguments for format Returns :: number of bytes printed, a negative value if not successful <anchor id="gsf-output-name" role="function"/>gsf_output_name () gsf_output_namecharconst * gsf_output_name (GsfOutput const *output); Give the name of output. output : GsfOutput Returns :: output's name in utf8 form, DO NOT FREE THIS STRING <anchor id="gsf-output-set-name-from-filename" role="function"/>gsf_output_set_name_from_filename () gsf_output_set_name_from_filenamegboolean gsf_output_set_name_from_filename (GsfOutput *output, char const *filename); This is a utility routine that should only be used by derived outputs. output : the output stream filename : the (fs-sys encoded) filename Returns : TRUE if the assignment was ok. <anchor id="gsf-output-error-id" role="function"/>gsf_output_error_id () gsf_output_error_idGQuark gsf_output_error_id (void); Returns : <anchor id="gsf-output-set-error" role="function"/>gsf_output_set_error () gsf_output_set_errorgboolean gsf_output_set_error (GsfOutput *output, gint code, char const *format, ...); This is a utility routine that should only be used by derived outputs. output : code : format : ... : Returns : Always returns FALSE to facilitate its use. <anchor id="gsf-output-error" role="function"/>gsf_output_error () gsf_output_errorGErrorconst * gsf_output_error (GsfOutput const *output); output : Returns : the last error logged on the output, or NULL. <anchor id="gsf-output-is-closed" role="function"/>gsf_output_is_closed () gsf_output_is_closedgboolean gsf_output_is_closed (GsfOutput const *output); output : Returns : TRUE if output has already been closed. <anchor id="gsf-output-wrap" role="function"/>gsf_output_wrap () gsf_output_wrapgboolean gsf_output_wrap (GObject *wrapper, GsfOutput *wrapee); wrapper : wrapee : Returns : TRUE if the wrapping succeeded. <anchor id="gsf-output-unwrap" role="function"/>gsf_output_unwrap () gsf_output_unwrapgboolean gsf_output_unwrap (GObject *wrapper, GsfOutput *wrapee); wrapper : wrapee : Returns : TRUE if the unwrapping succeeded. Property Details <anchor id="GsfOutput--is-closed"/>The "<literal>is-closed</literal>" property "is-closed" gboolean : Read Whether the Output is Closed.Default value: FALSE <anchor id="GsfOutput--name"/>The "<literal>name</literal>" property "name" gchararray : Read The Output's Name.Default value: NULL <anchor id="GsfOutput--position"/>The "<literal>position</literal>" property "position" gint64 : Read The Output's Current Position.Allowed values: >= 0 Default value: 0 <anchor id="GsfOutput--size"/>The "<literal>size</literal>" property "size" gint64 : Read The Output's Size.Allowed values: >= 0 Default value: 0 libgsf-1.13.99/doc/xml/stdio.xml0000644000076500017500000004455410401600622013306 00000000000000 Reading and Writing from local files and directories 3 GSF Library Reading and Writing from local files and directories Synopsis GsfInputStdio; GsfInput* gsf_input_stdio_new (char const *filename, GError **err); GsfInput* gsf_input_stdio_new_FILE (char const *filename, FILE *file, gboolean keep_open); GsfOutputStdio; GsfOutput* gsf_output_stdio_new (char const *filename, GError **err); GsfOutput* gsf_output_stdio_new_full (char const *filename, GError **err, char const *first_property_name, ...); GsfOutput* gsf_output_stdio_new_valist (char const *filename, GError **err, char const *first_property_name, va_list var_args); GsfOutput* gsf_output_stdio_new_FILE (char const *filename, FILE *file, gboolean keep_open); GsfOutfileStdio; GsfOutfile* gsf_outfile_stdio_new (char const *root, GError **err); GsfOutfile* gsf_outfile_stdio_new_full (char const *root, GError **err, char const *first_property_name, ...); GsfOutfile* gsf_outfile_stdio_new_valist (char const *root, GError **err, char const *first_property_name, va_list var_args); GsfInfileStdio; GsfInfile* gsf_infile_stdio_new (char const *root, GError **err); Object Hierarchy GObject +----GsfInput +----GsfInputStdio GObject +----GsfOutput +----GsfOutputStdio GObject +----GsfOutput +----GsfOutfile +----GsfOutfileStdio GObject +----GsfInput +----GsfInfile +----GsfInfileStdio Description Details <anchor id="GsfInputStdio-struct" role="struct"/>GsfInputStdio GsfInputStdiotypedef struct _GsfInputStdio GsfInputStdio; <anchor id="gsf-input-stdio-new" role="function"/>gsf_input_stdio_new () gsf_input_stdio_newGsfInput* gsf_input_stdio_new (char const *filename, GError **err); filename : in utf8. err : optionally NULL. Returns :a new file or NULL. <anchor id="gsf-input-stdio-new-FILE" role="function"/>gsf_input_stdio_new_FILE () gsf_input_stdio_new_FILEGsfInput* gsf_input_stdio_new_FILE (char const *filename, FILE *file, gboolean keep_open); Assumes ownership of file. If keep_open is true, ownership reverts to caller when the GsfObject is closed. filename : The filename corresponding to file. file : an existing stdio FILE * keep_open : Should file be closed when the wrapper is closed Returns :a new GsfInput wrapper for file. Note: the file must be seekable, so this will not work for stdin when that is a tty or pipe. <anchor id="GsfOutputStdio-struct" role="struct"/>GsfOutputStdio GsfOutputStdiotypedef struct _GsfOutputStdio GsfOutputStdio; <anchor id="gsf-output-stdio-new" role="function"/>gsf_output_stdio_new () gsf_output_stdio_newGsfOutput* gsf_output_stdio_new (char const *filename, GError **err); filename : name of file to create or replace. err : optionally NULL. Returns :a new file or NULL. <anchor id="gsf-output-stdio-new-full" role="function"/>gsf_output_stdio_new_full () gsf_output_stdio_new_fullGsfOutput* gsf_output_stdio_new_full (char const *filename, GError **err, char const *first_property_name, ...); filename : name of file to create or replace. err : optionally NULL. first_property_name : NULL terminated list of properties ... : Returns :a new file or NULL. <anchor id="gsf-output-stdio-new-valist" role="function"/>gsf_output_stdio_new_valist () gsf_output_stdio_new_valistGsfOutput* gsf_output_stdio_new_valist (char const *filename, GError **err, char const *first_property_name, va_list var_args); filename : err : first_property_name : var_args : Returns : <anchor id="gsf-output-stdio-new-FILE" role="function"/>gsf_output_stdio_new_FILE () gsf_output_stdio_new_FILEGsfOutput* gsf_output_stdio_new_FILE (char const *filename, FILE *file, gboolean keep_open); Assumes ownership of file. If keep_open is true, ownership reverts to caller when the GsfObject is closed. filename : The filename corresponding to file. file : an existing stdio FILE * keep_open : Should file be closed when the wrapper is closed Returns :a new GsfOutput wrapper for file. Warning: the result will be seekable only if file is seekable. If it is seekable, the resulting GsfOutput object will seek relative to file's beginning, not its current location at the time the GsfOutput object is created. <anchor id="GsfOutfileStdio-struct" role="struct"/>GsfOutfileStdio GsfOutfileStdiotypedef struct _GsfOutfileStdio GsfOutfileStdio; <anchor id="gsf-outfile-stdio-new" role="function"/>gsf_outfile_stdio_new () gsf_outfile_stdio_newGsfOutfile* gsf_outfile_stdio_new (char const *root, GError **err); root : root directory in utf8. err : optionally NULL. Returns :a new outfile or NULL. <anchor id="gsf-outfile-stdio-new-full" role="function"/>gsf_outfile_stdio_new_full () gsf_outfile_stdio_new_fullGsfOutfile* gsf_outfile_stdio_new_full (char const *root, GError **err, char const *first_property_name, ...); root : err : first_property_name : ... : Returns : <anchor id="gsf-outfile-stdio-new-valist" role="function"/>gsf_outfile_stdio_new_valist () gsf_outfile_stdio_new_valistGsfOutfile* gsf_outfile_stdio_new_valist (char const *root, GError **err, char const *first_property_name, va_list var_args); root : err : first_property_name : var_args : Returns : <anchor id="GsfInfileStdio-struct" role="struct"/>GsfInfileStdio GsfInfileStdiotypedef struct _GsfInfileStdio GsfInfileStdio; <anchor id="gsf-infile-stdio-new" role="function"/>gsf_infile_stdio_new () gsf_infile_stdio_newGsfInfile* gsf_infile_stdio_new (char const *root, GError **err); root : in locale dependent encoding err : optionally NULL. Returns :a new file or NULL. libgsf-1.13.99/doc/xml/text.xml0000644000076500017500000003617010401600622013143 00000000000000 Text 3 GSF Library Text Synopsis GsfInputTextline; GsfInput* gsf_input_textline_new (GsfInput *source); unsigned char* gsf_input_textline_ascii_gets (GsfInputTextline *textline); guint8* gsf_input_textline_utf8_gets (GsfInputTextline *textline); GsfOutputIconv; GsfOutput* gsf_output_iconv_new (GsfOutput *sink, char const *dst, char const *src); GsfOutputCsv; gboolean gsf_output_csv_write_eol (GsfOutputCsv *csv); gboolean gsf_output_csv_write_field (GsfOutputCsv *csv, char const *field, size_t len); enum GsfOutputCsvQuotingMode; Object Hierarchy GObject +----GsfInput +----GsfInputTextline GObject +----GsfOutput +----GsfOutputIconv GObject +----GsfOutput +----GsfOutputCsv Properties "fallback" gchararray : Read / Write "input-charset" gchararray : Read / Write / Construct Only "output-charset" gchararray : Read / Write / Construct Only "sink" GsfOutput : Read / Write / Construct Only "eol" gchararray : Read / Write / Construct "quote" gchararray : Read / Write / Construct "quoting-mode" GsfOutputCsvQuotingMode : Read / Write / Construct "quoting-triggers" gchararray : Read / Write "separator" gchararray : Read / Write / Construct "sink" GsfOutput : Read / Write Description Details <anchor id="GsfInputTextline-struct" role="struct"/>GsfInputTextline GsfInputTextlinetypedef struct _GsfInputTextline GsfInputTextline; <anchor id="gsf-input-textline-new" role="function"/>gsf_input_textline_new () gsf_input_textline_newGsfInput* gsf_input_textline_new (GsfInput *source); This adds a reference to source. source : in some combination of ascii and utf8 Returns :a new file or NULL. <anchor id="gsf-input-textline-ascii-gets" role="function"/>gsf_input_textline_ascii_gets () gsf_input_textline_ascii_getsunsigned char* gsf_input_textline_ascii_gets (GsfInputTextline *textline); A utility routine to read things line by line from the underlying source. Trailing newlines and carriage returns are stripped, and the resultant buffer can be edited. textline : GsfInputTextline Returns :: the string read, or NULL on eof. <anchor id="gsf-input-textline-utf8-gets" role="function"/>gsf_input_textline_utf8_gets () gsf_input_textline_utf8_getsguint8* gsf_input_textline_utf8_gets (GsfInputTextline *textline); A utility routine to read things line by line from the underlying source. Trailing newlines and carriage returns are stripped, and the resultant buffer can be edited. textline : GsfInputTextline Returns : the string read, or NULL on eof. <anchor id="GsfOutputIconv-struct" role="struct"/>GsfOutputIconv GsfOutputIconvtypedef struct _GsfOutputIconv GsfOutputIconv; <anchor id="gsf-output-iconv-new" role="function"/>gsf_output_iconv_new () gsf_output_iconv_newGsfOutput* gsf_output_iconv_new (GsfOutput *sink, char const *dst, char const *src); Adds a reference to sink. sink : The underlying data source. dst : The target character set. src : The source character set. Returns :a new GsfOutput object or NULL. <anchor id="GsfOutputCsv-struct" role="struct"/>GsfOutputCsv GsfOutputCsvtypedef struct _GsfOutputCsv GsfOutputCsv; <anchor id="gsf-output-csv-write-eol" role="function"/>gsf_output_csv_write_eol () gsf_output_csv_write_eolgboolean gsf_output_csv_write_eol (GsfOutputCsv *csv); csv : Returns : <anchor id="gsf-output-csv-write-field" role="function"/>gsf_output_csv_write_field () gsf_output_csv_write_fieldgboolean gsf_output_csv_write_field (GsfOutputCsv *csv, char const *field, size_t len); csv : field : len : Returns : <anchor id="GsfOutputCsvQuotingMode" role="enum"/>enum GsfOutputCsvQuotingMode GsfOutputCsvQuotingModetypedef enum { GSF_OUTPUT_CSV_QUOTING_MODE_NEVER, GSF_OUTPUT_CSV_QUOTING_MODE_AUTO, GSF_OUTPUT_CSV_QUOTING_MODE_ALWAYS } GsfOutputCsvQuotingMode; Property Details <anchor id="GsfOutputIconv--fallback"/>The "<literal>fallback</literal>" property "fallback" gchararray : Read / Write Either NULL or a UTF-8 string (representable in the target encoding) to convert and output in place of characters that cannot be represented in the target encoding. NULL means use \u1234 or \U12345678 format. Default value: NULL <anchor id="GsfOutputIconv--input-charset"/>The "<literal>input-charset</literal>" property "input-charset" gchararray : Read / Write / Construct Only The character set to convert from.Default value: "UTF-8" <anchor id="GsfOutputIconv--output-charset"/>The "<literal>output-charset</literal>" property "output-charset" gchararray : Read / Write / Construct Only The character set to convert to.Default value: "UTF-8" <anchor id="GsfOutputIconv--sink"/>The "<literal>sink</literal>" property "sink" GsfOutput : Read / Write / Construct Only Where the converted data is written. <anchor id="GsfOutputCsv--eol"/>The "<literal>eol</literal>" property "eol" gchararray : Read / Write / Construct The end-of-line marker.Default value: "\n" <anchor id="GsfOutputCsv--quote"/>The "<literal>quote</literal>" property "quote" gchararray : Read / Write / Construct The string used for quoting fields.Default value: "\"" <anchor id="GsfOutputCsv--quoting-mode"/>The "<literal>quoting-mode</literal>" property "quoting-mode" GsfOutputCsvQuotingMode : Read / Write / Construct When to quote fields.Default value: GSF_OUTPUT_CSV_QUOTING_MODE_NEVER <anchor id="GsfOutputCsv--quoting-triggers"/>The "<literal>quoting-triggers</literal>" property "quoting-triggers" gchararray : Read / Write Characters that cause field quoting.Default value: NULL <anchor id="GsfOutputCsv--separator"/>The "<literal>separator</literal>" property "separator" gchararray : Read / Write / Construct The field separator.Default value: "," <anchor id="GsfOutputCsv--sink"/>The "<literal>sink</literal>" property "sink" GsfOutput : Read / Write Where the compressed data is written. libgsf-1.13.99/doc/xml/utils.xml0000644000076500017500000020722310401600622013316 00000000000000 utils 3 GSF Library utils Synopsis void gsf_init (void); void gsf_shutdown (void); void gsf_init_dynamic (GTypeModule *module); void gsf_shutdown_dynamic (GTypeModule *module); extern int libgsf_major_version; extern int libgsf_minor_version; extern int libgsf_micro_version; #define GSF_CLASS (name, prefix, class_init, instance_init, parent) #define GSF_CLASS_FULL (name, prefix, base_init, base_finalize, \ class_init, class_finalize, instance_init, parent_type, \ abstract, interface_decl) #define GSF_CLASS_ABSTRACT (name, prefix, class_init, instance_init, parent) #define GSF_INTERFACE (init_func, iface_type) #define GSF_INTERFACE_FULL (type, init_func, iface_type) #define GSF_DYNAMIC_CLASS (name, prefix, class_init, instance_init, parent) #define GSF_DYNAMIC_CLASS_FULL (name, prefix, base_init, base_finalize, \ class_init, class_finalize, instance_init, parent_type, \ abstract, interface_decl) #define GSF_DYNAMIC_CLASS_ABSTRACT (name, prefix, class_init, instance_init, parent) #define GSF_DYNAMIC_INTERFACE (init_func, iface_type, module) #define GSF_DYNAMIC_INTERFACE_FULL (type, init_func, iface_type, module) #define GSF_PARAM_STATIC #define GSF_ERROR enum GsfError; GQuark gsf_error_quark (void); void gsf_mem_dump (guint8 const *ptr, size_t len); void gsf_input_dump (GsfInput *input, gboolean dump_as_hex); #define GSF_OFF_T_FORMAT typedef gsf_off_t; char* gsf_filename_to_utf8 (char const *filename, gboolean quoted); void gsf_iconv_close (GIConv handle); charconst * gsf_extension_pointer (char const *path); guint8* gsf_base64_encode_simple (guint8 const *data, size_t len); size_t gsf_base64_encode_close (guint8 const *in, size_t inlen, gboolean break_lines, guint8 *out, int *state, guint *save); size_t gsf_base64_encode_step (guint8 const *in, size_t len, gboolean break_lines, guint8 *out, int *state, guint *save); size_t gsf_base64_decode_simple (guint8 *data, size_t len); size_t gsf_base64_decode_step (guint8 const *in, size_t len, guint8 *out, int *state, guint *save); #define GSF_LE_GET_GINT8 (p) #define GSF_LE_GET_GUINT64 (p) #define GSF_LE_GET_GINT16 (p) #define GSF_LE_GET_GUINT8 (p) #define GSF_LE_GET_GINT32 (p) #define GSF_LE_GET_GUINT16 (p) #define GSF_LE_GET_GUINT32 (p) #define GSF_LE_GET_GINT64 (p) guint64 gsf_le_get_guint64 (void const *p); #define GSF_LE_GET_FLOAT (p) float gsf_le_get_float (void const *p); #define GSF_LE_GET_DOUBLE (p) double gsf_le_get_double (void const *p); #define GSF_LE_SET_GUINT8 (p, dat) #define GSF_LE_SET_GUINT16 (p, dat) #define GSF_LE_SET_GUINT32 (p, dat) #define GSF_LE_SET_GINT8 (p,dat) #define GSF_LE_SET_GINT16 (p,dat) #define GSF_LE_SET_GINT32 (p,dat) #define GSF_LE_SET_GINT64 (p,dat) #define GSF_LE_SET_GUINT64 (p, dat) #define GSF_LE_SET_FLOAT (p,dat) #define GSF_LE_SET_DOUBLE (p,dat) void gsf_le_set_float (void *p, float f); void gsf_le_set_double (void *p, double d); GsfTimestamp; GsfTimestamp* gsf_timestamp_copy (GsfTimestamp const *stamp); void gsf_timestamp_free (GsfTimestamp *stamp); char* gsf_timestamp_as_string (GsfTimestamp const *stamp); int gsf_timestamp_parse (char const *spec, GsfTimestamp *stamp); guint gsf_timestamp_hash (GsfTimestamp const *stamp); gboolean gsf_timestamp_equal (GsfTimestamp const *a, GsfTimestamp const *b); void gsf_value_set_timestamp (GValue *value, GsfTimestamp const *stamp); #define VAL_IS_GSF_TIMESTAMP (v) GValue* gsf_doc_prop_swap_val (GsfDocProp *prop, GValue *val); void gsf_property_settings_collect (GType object_type, GParameter **p_params, size_t *p_n_params, const gchar *first_property_name, ...); void gsf_property_settings_collect_valist (GType object_type, GParameter **p_params, size_t *p_n_params, const gchar *first_property_name, va_list var_args); void gsf_property_settings_free (GParameter *params, size_t n_params); Description Details <anchor id="gsf-init" role="function"/>gsf_init () gsf_initvoid gsf_init (void); Initializes the GSF library <anchor id="gsf-shutdown" role="function"/>gsf_shutdown () gsf_shutdownvoid gsf_shutdown (void); De-intializes the GSF library <anchor id="gsf-init-dynamic" role="function"/>gsf_init_dynamic () gsf_init_dynamicvoid gsf_init_dynamic (GTypeModule *module); module : <anchor id="gsf-shutdown-dynamic" role="function"/>gsf_shutdown_dynamic () gsf_shutdown_dynamicvoid gsf_shutdown_dynamic (GTypeModule *module); module : <anchor id="libgsf-major-version" role="variable"/>libgsf_major_version libgsf_major_versionextern int libgsf_major_version; The major version number of the GSF library. (e.g. in GSF version 1.2.5 this is 1.) This variable is in the library and thus represents the GSF library you have linked against (which may be different from the version of the GSF library from which you have included the headers). <anchor id="libgsf-minor-version" role="variable"/>libgsf_minor_version libgsf_minor_versionextern int libgsf_minor_version; The minor version number of the GLib library. (e.g. in GLib version 1.2.5 this is 2.) This variable is in the library and thus represents the GSF library you have linked against (which may be different from the version of the GSF library from which you have included the headers). <anchor id="libgsf-micro-version" role="variable"/>libgsf_micro_version libgsf_micro_versionextern int libgsf_micro_version; The micro version number of the GSF library. (e.g. in GSF version 1.2.5 this is 5.) This variable is in the library and thus represents the GSF library you have linked against (which may be different from the version of the GSF library from which you have included the headers). <anchor id="GSF-CLASS:CAPS" role="macro"/>GSF_CLASS() GSF_CLASS#define GSF_CLASS(name, prefix, class_init, instance_init, parent) name : prefix : class_init : instance_init : parent : <anchor id="GSF-CLASS-FULL:CAPS" role="macro"/>GSF_CLASS_FULL() GSF_CLASS_FULL#define GSF_CLASS_FULL(name, prefix, base_init, base_finalize, \ class_init, class_finalize, instance_init, parent_type, \ abstract, interface_decl) name : prefix : base_init : base_finalize : @\ class_init: class_init : class_finalize : instance_init : parent_type : @\ abstract: abstract : interface_decl : <anchor id="GSF-CLASS-ABSTRACT:CAPS" role="macro"/>GSF_CLASS_ABSTRACT() GSF_CLASS_ABSTRACT#define GSF_CLASS_ABSTRACT(name, prefix, class_init, instance_init, parent) name : prefix : class_init : instance_init : parent : <anchor id="GSF-INTERFACE:CAPS" role="macro"/>GSF_INTERFACE() GSF_INTERFACE#define GSF_INTERFACE(init_func, iface_type) init_func : iface_type : <anchor id="GSF-INTERFACE-FULL:CAPS" role="macro"/>GSF_INTERFACE_FULL() GSF_INTERFACE_FULL#define GSF_INTERFACE_FULL(type, init_func, iface_type) type : init_func : iface_type : <anchor id="GSF-DYNAMIC-CLASS:CAPS" role="macro"/>GSF_DYNAMIC_CLASS() GSF_DYNAMIC_CLASS#define GSF_DYNAMIC_CLASS(name, prefix, class_init, instance_init, parent) name : prefix : class_init : instance_init : parent : <anchor id="GSF-DYNAMIC-CLASS-FULL:CAPS" role="macro"/>GSF_DYNAMIC_CLASS_FULL() GSF_DYNAMIC_CLASS_FULL#define GSF_DYNAMIC_CLASS_FULL(name, prefix, base_init, base_finalize, \ class_init, class_finalize, instance_init, parent_type, \ abstract, interface_decl) name : prefix : base_init : base_finalize : @\ class_init: class_init : class_finalize : instance_init : parent_type : @\ abstract: abstract : interface_decl : <anchor id="GSF-DYNAMIC-CLASS-ABSTRACT:CAPS" role="macro"/>GSF_DYNAMIC_CLASS_ABSTRACT() GSF_DYNAMIC_CLASS_ABSTRACT#define GSF_DYNAMIC_CLASS_ABSTRACT(name, prefix, class_init, instance_init, parent) name : prefix : class_init : instance_init : parent : <anchor id="GSF-DYNAMIC-INTERFACE:CAPS" role="macro"/>GSF_DYNAMIC_INTERFACE() GSF_DYNAMIC_INTERFACE#define GSF_DYNAMIC_INTERFACE(init_func, iface_type, module) init_func : iface_type : module : <anchor id="GSF-DYNAMIC-INTERFACE-FULL:CAPS" role="macro"/>GSF_DYNAMIC_INTERFACE_FULL() GSF_DYNAMIC_INTERFACE_FULL#define GSF_DYNAMIC_INTERFACE_FULL(type, init_func, iface_type, module) type : init_func : iface_type : module : <anchor id="GSF-PARAM-STATIC:CAPS" role="macro"/>GSF_PARAM_STATIC GSF_PARAM_STATIC#define GSF_PARAM_STATIC <anchor id="GSF-ERROR:CAPS" role="macro"/>GSF_ERROR GSF_ERROR#define GSF_ERROR (gsf_error_quark ()) This convenience macro simply calls gsf_error_quark(). You can use it in calls to g_error_matches(), for example. The macro returns the GQuark that is used to identify errors from libgsf functions. Specific error codes come from the GsfError enumeration. <anchor id="GsfError" role="enum"/>enum GsfError GsfErrortypedef enum { GSF_ERROR_OUT_OF_MEMORY, GSF_ERROR_INVALID_DATA } GsfError; Error codes that can be returned from libgsf functions in GError structures. GSF_ERROR_OUT_OF_MEMORY Not enough memory could be allocated to hold a structure or object. GSF_ERROR_INVALID_DATA A file being read contained invalid or inconsistent data. <anchor id="gsf-error-quark" role="function"/>gsf_error_quark () gsf_error_quarkGQuark gsf_error_quark (void); Returns the GQuark used to identify libgsf errors in GError structures. Specific error codes come from the GsfError enumeration. Returns : A GQuark. <anchor id="gsf-mem-dump" role="function"/>gsf_mem_dump () gsf_mem_dumpvoid gsf_mem_dump (guint8 const *ptr, size_t len); Dump len bytes from the memory location given by ptr. ptr : memory area to be dumped. len : how many bytes will be dumped. <anchor id="gsf-input-dump" role="function"/>gsf_input_dump () gsf_input_dumpvoid gsf_input_dump (GsfInput *input, gboolean dump_as_hex); Dumps input's contents to STDOUT, optionally in hex format. input : a GsfInput dump_as_hex : If TRUE, dump in hexidecmal format <anchor id="GSF-OFF-T-FORMAT:CAPS" role="macro"/>GSF_OFF_T_FORMAT GSF_OFF_T_FORMAT#define GSF_OFF_T_FORMAT G_GINT64_FORMAT <anchor id="gsf-off-t" role="typedef"/>gsf_off_t gsf_off_ttypedef gint64 gsf_off_t; <anchor id="gsf-filename-to-utf8" role="function"/>gsf_filename_to_utf8 () gsf_filename_to_utf8char* gsf_filename_to_utf8 (char const *filename, gboolean quoted); A utility wrapper to make sure filenames are valid utf8. Caller must g_free the result. filename : file name suitable for open(2). quoted : if TRUE, the resulting utf8 file name will be quoted (unless it is invalid). Returns :filename using utf-8 encoding for display <anchor id="gsf-iconv-close" role="function"/>gsf_iconv_close () gsf_iconv_closevoid gsf_iconv_close (GIConv handle); A utility wrapper to safely close an iconv handle. handle : handle to be closed. <anchor id="gsf-extension-pointer" role="function"/>gsf_extension_pointer () gsf_extension_pointercharconst * gsf_extension_pointer (char const *path); Extracts the extension from the end of a filename (the part after the final '.' in the filename). path : A filename or file path. Returns : A pointer to the extension part of the filename, or a pointer to the end of the string if the filename does not have an extension. <anchor id="gsf-base64-encode-simple" role="function"/>gsf_base64_encode_simple () gsf_base64_encode_simpleguint8* gsf_base64_encode_simple (guint8 const *data, size_t len); Encodes data from data back into data using base64 encoding. data : data stream len : max length of data to encode Returns :: the number of bytes encoded <anchor id="gsf-base64-encode-close" role="function"/>gsf_base64_encode_close () gsf_base64_encode_closesize_t gsf_base64_encode_close (guint8 const *in, size_t inlen, gboolean break_lines, guint8 *out, int *state, guint *save); This funcion should be called to when finished encoding everything, to flush off the last little bit. in : Data to be encoded inlen : Length of data to be encoded break_lines : Whether to use line breaks out : Encoded data. state : holds the number of bits that are stored in save save : leftover bits that have not yet been decoded Returns :: <anchor id="gsf-base64-encode-step" role="function"/>gsf_base64_encode_step () gsf_base64_encode_stepsize_t gsf_base64_encode_step (guint8 const *in, size_t len, gboolean break_lines, guint8 *out, int *state, guint *save); Performs an 'encode step', only encodes blocks of 3 characters from in into the output out at a time, saves left-over state in state and save (initialise to 0 on first invocation). in : input stream len : max length of data to decode break_lines : Whether to use line breaks out : output stream state : holds the number of bits that are stored in save save : leftover bits that have not yet been decoded Returns :: the number of bytes encoded <anchor id="gsf-base64-decode-simple" role="function"/>gsf_base64_decode_simple () gsf_base64_decode_simplesize_t gsf_base64_decode_simple (guint8 *data, size_t len); Decodes a chunk of base64 encoded data from data back into data. data : data stream len : max length of data to decode Returns :: the number of bytes converted <anchor id="gsf-base64-decode-step" role="function"/>gsf_base64_decode_step () gsf_base64_decode_stepsize_t gsf_base64_decode_step (guint8 const *in, size_t len, guint8 *out, int *state, guint *save); Decodes a chunk of base64 encoded data in : input stream len : max length of data to decode out : output stream state : holds the number of bits that are stored in save save : leftover bits that have not yet been decoded Returns :the number of bytes converted <anchor id="GSF-LE-GET-GINT8:CAPS" role="macro"/>GSF_LE_GET_GINT8() GSF_LE_GET_GINT8#define GSF_LE_GET_GINT8(p) ((gint8)GSF_LE_GET_GUINT8(p)) Interpret data as an 8 bit integer value in little endian order. p : Pointer to storage <anchor id="GSF-LE-GET-GUINT64:CAPS" role="macro"/>GSF_LE_GET_GUINT64() GSF_LE_GET_GUINT64#define GSF_LE_GET_GUINT64(p) (gsf_le_get_guint64 (p)) Interpret data as a 64 bit unsigned integer value in little endian order. p : Pointer to storage <anchor id="GSF-LE-GET-GINT16:CAPS" role="macro"/>GSF_LE_GET_GINT16() GSF_LE_GET_GINT16#define GSF_LE_GET_GINT16(p) ((gint16)GSF_LE_GET_GUINT16(p)) Interpret data as a 16 bit integer value in little endian order. p : Pointer to storage <anchor id="GSF-LE-GET-GUINT8:CAPS" role="macro"/>GSF_LE_GET_GUINT8() GSF_LE_GET_GUINT8#define GSF_LE_GET_GUINT8(p) (*(guint8 const *)(p)) Interpret data as an 8 bit unsigned integer value in little endian order. p : Pointer to storage <anchor id="GSF-LE-GET-GINT32:CAPS" role="macro"/>GSF_LE_GET_GINT32() GSF_LE_GET_GINT32#define GSF_LE_GET_GINT32(p) ((gint32)GSF_LE_GET_GUINT32(p)) Interpret data as a 32 bit integer value in little endian order. p : Pointer to storage <anchor id="GSF-LE-GET-GUINT16:CAPS" role="macro"/>GSF_LE_GET_GUINT16() GSF_LE_GET_GUINT16#define GSF_LE_GET_GUINT16(p) Interpret data as a 16 bit unsigned integer value in little endian order. p : Pointer to storage <anchor id="GSF-LE-GET-GUINT32:CAPS" role="macro"/>GSF_LE_GET_GUINT32() GSF_LE_GET_GUINT32#define GSF_LE_GET_GUINT32(p) Interpret data as a 32 bit unsigned integer value in little endian order. p : Pointer to storage <anchor id="GSF-LE-GET-GINT64:CAPS" role="macro"/>GSF_LE_GET_GINT64() GSF_LE_GET_GINT64#define GSF_LE_GET_GINT64(p) ((gint64)GSF_LE_GET_GUINT64(p)) Interpret data as a 64 bit integer value in little endian order. p : Pointer to storage <anchor id="gsf-le-get-guint64" role="function"/>gsf_le_get_guint64 () gsf_le_get_guint64guint64 gsf_le_get_guint64 (void const *p); Interpret binary data as a guint64 (8 byte unsigned integer type) in little endian order. p : pointer to storage Returns : interpreted data <anchor id="GSF-LE-GET-FLOAT:CAPS" role="macro"/>GSF_LE_GET_FLOAT() GSF_LE_GET_FLOAT#define GSF_LE_GET_FLOAT(p) (gsf_le_get_float (p)) Interpret data as a float value in little endian order. p : Pointer to storage <anchor id="gsf-le-get-float" role="function"/>gsf_le_get_float () gsf_le_get_floatfloat gsf_le_get_float (void const *p); Interpret binary data as a float in little endian order. p : pointer to storage Returns : interpreted data <anchor id="GSF-LE-GET-DOUBLE:CAPS" role="macro"/>GSF_LE_GET_DOUBLE() GSF_LE_GET_DOUBLE#define GSF_LE_GET_DOUBLE(p) (gsf_le_get_double (p)) Interpret data as a double value in little endian order. p : Pointer to storage <anchor id="gsf-le-get-double" role="function"/>gsf_le_get_double () gsf_le_get_doubledouble gsf_le_get_double (void const *p); Interpret binary data as a double in little endian order. p : pointer to storage Returns : interpreted data <anchor id="GSF-LE-SET-GUINT8:CAPS" role="macro"/>GSF_LE_SET_GUINT8() GSF_LE_SET_GUINT8#define GSF_LE_SET_GUINT8(p, dat) Store an 8 bit unsigned integer value in memory in little endian order. p : Pointer to storage dat : Value to be stored <anchor id="GSF-LE-SET-GUINT16:CAPS" role="macro"/>GSF_LE_SET_GUINT16() GSF_LE_SET_GUINT16#define GSF_LE_SET_GUINT16(p, dat) Store a 16 bit unsigned integer value in memory in little endian order. p : Pointer to storage dat : Value to be stored <anchor id="GSF-LE-SET-GUINT32:CAPS" role="macro"/>GSF_LE_SET_GUINT32() GSF_LE_SET_GUINT32#define GSF_LE_SET_GUINT32(p, dat) Store a 32 bit unsigned integer value in memory in little endian order. p : Pointer to storage dat : Value to be stored <anchor id="GSF-LE-SET-GINT8:CAPS" role="macro"/>GSF_LE_SET_GINT8() GSF_LE_SET_GINT8#define GSF_LE_SET_GINT8(p,dat) GSF_LE_SET_GUINT8((p),(dat)) Store an 8 bit integer value in memory in little endian order. p : Pointer to storage dat : Value to be stored <anchor id="GSF-LE-SET-GINT16:CAPS" role="macro"/>GSF_LE_SET_GINT16() GSF_LE_SET_GINT16#define GSF_LE_SET_GINT16(p,dat) GSF_LE_SET_GUINT16((p),(dat)) Store a 16 bit integer value in memory in little endian order. p : Pointer to storage dat : Value to be stored <anchor id="GSF-LE-SET-GINT32:CAPS" role="macro"/>GSF_LE_SET_GINT32() GSF_LE_SET_GINT32#define GSF_LE_SET_GINT32(p,dat) GSF_LE_SET_GUINT32((p),(dat)) Store a 32 bit integer value in memory in little endian order. p : Pointer to storage dat : Value to be stored <anchor id="GSF-LE-SET-GINT64:CAPS" role="macro"/>GSF_LE_SET_GINT64() GSF_LE_SET_GINT64#define GSF_LE_SET_GINT64(p,dat) GSF_LE_SET_GUINT64((p),(dat)) Store a 64 bit integer value in memory in little endian order. p : Pointer to storage dat : Value to be stored <anchor id="GSF-LE-SET-GUINT64:CAPS" role="macro"/>GSF_LE_SET_GUINT64() GSF_LE_SET_GUINT64#define GSF_LE_SET_GUINT64(p, dat) Store a 64 bit unsigned integer value in memory in little endian order. p : Pointer to storage dat : Value to be stored <anchor id="GSF-LE-SET-FLOAT:CAPS" role="macro"/>GSF_LE_SET_FLOAT() GSF_LE_SET_FLOAT#define GSF_LE_SET_FLOAT(p,dat) gsf_le_set_float((p),(dat)) Store a float value in memory in little endian order. p : Pointer to storage dat : Value to be stored <anchor id="GSF-LE-SET-DOUBLE:CAPS" role="macro"/>GSF_LE_SET_DOUBLE() GSF_LE_SET_DOUBLE#define GSF_LE_SET_DOUBLE(p,dat) gsf_le_set_double((p),(dat)) Store a double value in memory in little endian order. p : Pointer to storage dat : Value to be stored <anchor id="gsf-le-set-float" role="function"/>gsf_le_set_float () gsf_le_set_floatvoid gsf_le_set_float (void *p, float f); Store a value of type float in memory in little endian order. p : pointer to storage f : float to be stored <anchor id="gsf-le-set-double" role="function"/>gsf_le_set_double () gsf_le_set_doublevoid gsf_le_set_double (void *p, double d); Store a value of type double in memory in little endian order p : pointer to storage d : double to be stored <anchor id="GsfTimestamp" role="struct"/>GsfTimestamp GsfTimestamptypedef struct { GDate date; /* In local timezone */ glong seconds; /* time of day */ GString time_zone; /* possibly blank */ guint32 timet; } GsfTimestamp; <anchor id="gsf-timestamp-copy" role="function"/>gsf_timestamp_copy () gsf_timestamp_copyGsfTimestamp* gsf_timestamp_copy (GsfTimestamp const *stamp); Copies a timestamp. stamp : timestamp to be copied Returns : a separate copy of stamp. <anchor id="gsf-timestamp-free" role="function"/>gsf_timestamp_free () gsf_timestamp_freevoid gsf_timestamp_free (GsfTimestamp *stamp); Releases the memory in use for stamp (if any). stamp : timestamp to be freed <anchor id="gsf-timestamp-as-string" role="function"/>gsf_timestamp_as_string () gsf_timestamp_as_stringchar* gsf_timestamp_as_string (GsfTimestamp const *stamp); Produce a string representation of stamp. stamp : timestamp to be converted. Returns : a string representation of stamp. When stamp is NULL, the representation is "<invalid>". <anchor id="gsf-timestamp-parse" role="function"/>gsf_timestamp_parse () gsf_timestamp_parseint gsf_timestamp_parse (char const *spec, GsfTimestamp *stamp); Very simple parser for time stamps. Currently requires 'YYYY-MM-DDThh:mm:ss' and does no bounds checking. spec : The string to parse stamp : GsfTimestamp Returns :TRUE on success <anchor id="gsf-timestamp-hash" role="function"/>gsf_timestamp_hash () gsf_timestamp_hashguint gsf_timestamp_hash (GsfTimestamp const *stamp); stamp : Returns : <anchor id="gsf-timestamp-equal" role="function"/>gsf_timestamp_equal () gsf_timestamp_equalgboolean gsf_timestamp_equal (GsfTimestamp const *a, GsfTimestamp const *b); Compare timestamps a and b. a : a timestamp b : another timestamp Returns : true if a and b represent the same point in time; false otherwise. <anchor id="gsf-value-set-timestamp" role="function"/>gsf_value_set_timestamp () gsf_value_set_timestampvoid gsf_value_set_timestamp (GValue *value, GsfTimestamp const *stamp); value : stamp : <anchor id="VAL-IS-GSF-TIMESTAMP:CAPS" role="macro"/>VAL_IS_GSF_TIMESTAMP() VAL_IS_GSF_TIMESTAMP#define VAL_IS_GSF_TIMESTAMP(v) (G_TYPE_CHECK_VALUE_TYPE((v), GSF_TIMESTAMP_TYPE)) v : <anchor id="gsf-doc-prop-swap-val" role="function"/>gsf_doc_prop_swap_val () gsf_doc_prop_swap_valGValue* gsf_doc_prop_swap_val (GsfDocProp *prop, GValue *val); prop : GsfDocProp val : GValue Returns :the current value of prop, and replaces it with val Caller is responsible for unsetting and freeing the result. <anchor id="gsf-property-settings-collect" role="function"/>gsf_property_settings_collect () gsf_property_settings_collectvoid gsf_property_settings_collect (GType object_type, GParameter **p_params, size_t *p_n_params, const gchar *first_property_name, ...); object_type : p_params : p_n_params : first_property_name : ... : <anchor id="gsf-property-settings-collect-valist" role="function"/>gsf_property_settings_collect_valist () gsf_property_settings_collect_valistvoid gsf_property_settings_collect_valist (GType object_type, GParameter **p_params, size_t *p_n_params, const gchar *first_property_name, va_list var_args); This function builds a GParameter array suitable for g_object_newv. object_type : the GType for which the properties are being set. p_params : a pointer to the GParameter array that holds the properties. (Used for both input and output. This may point to a NULL pointer if there are no properties collected yet.) p_n_params : a pointer to the number of properties collected. (Used for both input and output.) first_property_name : the name of the first property being set, or NULL. var_args : a va_list holding the remainder of the property names and values, terminated by a NULL. <anchor id="gsf-property-settings-free" role="function"/>gsf_property_settings_free () gsf_property_settings_freevoid gsf_property_settings_free (GParameter *params, size_t n_params); params : n_params : libgsf-1.13.99/doc/xml/xml.xml0000644000076500017500000014633410401600622012763 00000000000000 XML and libxml 3 GSF Library XML and libxml Synopsis GsfXMLIn; GsfXMLInDoc; gboolean (*GsfXMLInUnknownFunc) (GsfXMLIn *xin, xmlChar const *elem, xmlChar const **attrs); GsfXMLInNS; GsfXMLInNode; void (*GsfXMLInExtDtor) (GsfXMLIn *xin, gpointer old_state); enum GsfXMLContent; GsfXMLBlob; #define GSF_XML_IN_NODE_FULL (parent_id, id, ns, name, has_content, \ share_children_with_parent, check_ns, start, end, user) #define GSF_XML_IN_NODE (parent_id, id, ns, name, has_content, start, end) #define GSF_XML_IN_NODE_END #define GSF_XML_IN_NS (id, uri) GsfXMLInDoc* gsf_xml_in_doc_new (GsfXMLInNode const *nodes, GsfXMLInNS const *ns); void gsf_xml_in_doc_free (GsfXMLInDoc *doc); gboolean gsf_xml_in_doc_parse (GsfXMLInDoc *doc, GsfInput *input, gpointer user_state); void gsf_xml_in_doc_set_unknown_handler (GsfXMLInDoc *doc, GsfXMLInUnknownFunc handler); void gsf_xml_in_push_state (GsfXMLIn *xin, GsfXMLInDoc const *doc, gpointer new_state, GsfXMLInExtDtor dtor, xmlChar const **attrs); gboolean gsf_xml_in_namecmp (GsfXMLIn const *xin, char const *str, unsigned int ns_id, char const *name); charconst * gsf_xml_in_check_ns (GsfXMLIn const *xin, char const *str, unsigned int ns_id); GsfXMLOut; GsfXMLOut* gsf_xml_out_new (GsfOutput *output); void gsf_xml_out_set_doc_type (GsfXMLOut *xml, char const *type); void gsf_xml_out_start_element (GsfXMLOut *xml, char const *id); charconst * gsf_xml_out_end_element (GsfXMLOut *xml); void gsf_xml_out_add_cstr (GsfXMLOut *xml, char const *id, char const *val_utf8); void gsf_xml_out_add_cstr_unchecked (GsfXMLOut *xml, char const *id, char const *val_utf8); void gsf_xml_out_add_bool (GsfXMLOut *xml, char const *id, gboolean val); void gsf_xml_out_add_int (GsfXMLOut *xml, char const *id, int val); void gsf_xml_out_add_uint (GsfXMLOut *xml, char const *id, unsigned int val); void gsf_xml_out_add_float (GsfXMLOut *xml, char const *id, double val, int precision); void gsf_xml_out_add_enum (GsfXMLOut *xml, char const *id, GType etype, gint val); void gsf_xml_out_add_color (GsfXMLOut *xml, char const *id, unsigned int r, unsigned int g, unsigned int b); void gsf_xml_out_add_base64 (GsfXMLOut *xml, char const *id, guint8 const *data, unsigned int len); void gsf_xml_out_add_gvalue (GsfXMLOut *xml, char const *id, GValue const *val); void gsf_xml_out_simple_element (GsfXMLOut *xml, char const *id, char const *content); void gsf_xml_out_simple_float_element (GsfXMLOut *xml, char const *id, double val, int precision); void gsf_xml_out_simple_int_element (GsfXMLOut *xml, char const *id, int val); xmlParserCtxt* gsf_xml_parser_context (GsfInput *input); gboolean gsf_xml_gvalue_from_str (GValue *res, GType t, char const *str); int gsf_xmlDocFormatDump (GsfOutput *output, xmlDoc *cur, char const *encoding, gboolean format); Object Hierarchy GObject +----GsfXMLOut Description Details <anchor id="GsfXMLIn" role="struct"/>GsfXMLIn GsfXMLIntypedef struct { /* public state : read only */ gpointer user_state; GString *content; GsfXMLInDoc const *doc; GsfXMLInNode const *node; /* current node (not on the stack) */ GSList *node_stack; /* stack of GsfXMLInNode */ } GsfXMLIn; <anchor id="GsfXMLInDoc" role="struct"/>GsfXMLInDoc GsfXMLInDoctypedef struct _GsfXMLInDoc GsfXMLInDoc; <anchor id="GsfXMLInUnknownFunc" role="function"/>GsfXMLInUnknownFunc () GsfXMLInUnknownFuncgboolean (*GsfXMLInUnknownFunc) (GsfXMLIn *xin, xmlChar const *elem, xmlChar const **attrs); xin : elem : attrs : Returns : <anchor id="GsfXMLInNS" role="struct"/>GsfXMLInNS GsfXMLInNStypedef struct { char const *uri; unsigned ns_id; } GsfXMLInNS; <anchor id="GsfXMLInNode" role="struct"/>GsfXMLInNode GsfXMLInNodetypedef struct { char const *id; /* unique in the entire tree */ int ns_id; char const *name; char const *parent_id; void (*start) (GsfXMLIn *xin, xmlChar const **attrs); void (*end) (GsfXMLIn *xin, GsfXMLBlob *unknown); union { int v_int; gboolean v_bool; gpointer v_blob; char const *v_str; } user_data; GsfXMLContent has_content; unsigned int check_children_for_ns : 1; unsigned int share_children_with_parent : 1; } GsfXMLInNode; <anchor id="GsfXMLInExtDtor" role="function"/>GsfXMLInExtDtor () GsfXMLInExtDtorvoid (*GsfXMLInExtDtor) (GsfXMLIn *xin, gpointer old_state); xin : old_state : <anchor id="GsfXMLContent" role="enum"/>enum GsfXMLContent GsfXMLContenttypedef enum { GSF_XML_NO_CONTENT = FALSE, GSF_XML_CONTENT, GSF_XML_SHARED_CONTENT } GsfXMLContent; <anchor id="GsfXMLBlob" role="struct"/>GsfXMLBlob GsfXMLBlobtypedef struct _GsfXMLBlob GsfXMLBlob; <anchor id="GSF-XML-IN-NODE-FULL:CAPS" role="macro"/>GSF_XML_IN_NODE_FULL() GSF_XML_IN_NODE_FULL#define GSF_XML_IN_NODE_FULL(parent_id, id, ns, name, has_content, \ share_children_with_parent, check_ns, start, end, user) parent_id : id : ns : name : has_content : @\ share_children_with_parent: share_children_with_parent : check_ns : start : end : user : <anchor id="GSF-XML-IN-NODE:CAPS" role="macro"/>GSF_XML_IN_NODE() GSF_XML_IN_NODE#define GSF_XML_IN_NODE(parent_id, id, ns, name, has_content, start, end) parent_id : id : ns : name : has_content : start : end : <anchor id="GSF-XML-IN-NODE-END:CAPS" role="macro"/>GSF_XML_IN_NODE_END GSF_XML_IN_NODE_END#define GSF_XML_IN_NODE_END <anchor id="GSF-XML-IN-NS:CAPS" role="macro"/>GSF_XML_IN_NS() GSF_XML_IN_NS#define GSF_XML_IN_NS(id, uri) id : uri : <anchor id="gsf-xml-in-doc-new" role="function"/>gsf_xml_in_doc_new () gsf_xml_in_doc_newGsfXMLInDoc* gsf_xml_in_doc_new (GsfXMLInNode const *nodes, GsfXMLInNS const *ns); Combine the nodes in the NULL terminated array starting at nodes with the name spaces in the NULL terminated array starting at ns. Prepare the data structures necessary to validate a doument based on that description. nodes : an array of node descriptors ns : an array of namespace identifiers Returns :NULL on error <anchor id="gsf-xml-in-doc-free" role="function"/>gsf_xml_in_doc_free () gsf_xml_in_doc_freevoid gsf_xml_in_doc_free (GsfXMLInDoc *doc); Free up resources doc : <anchor id="gsf-xml-in-doc-parse" role="function"/>gsf_xml_in_doc_parse () gsf_xml_in_doc_parsegboolean gsf_xml_in_doc_parse (GsfXMLInDoc *doc, GsfInput *input, gpointer user_state); Read an xml document from input and parse based on the the descriptor in doc doc : input : user_state : Returns :FALSE on error <anchor id="gsf-xml-in-doc-set-unknown-handler" role="function"/>gsf_xml_in_doc_set_unknown_handler () gsf_xml_in_doc_set_unknown_handlervoid gsf_xml_in_doc_set_unknown_handler (GsfXMLInDoc *doc, GsfXMLInUnknownFunc handler); Call the function handler when an unexpected child node is found doc : GsfXMLInDoc handler : The function to call <anchor id="gsf-xml-in-push-state" role="function"/>gsf_xml_in_push_state () gsf_xml_in_push_statevoid gsf_xml_in_push_state (GsfXMLIn *xin, GsfXMLInDoc const *doc, gpointer new_state, GsfXMLInExtDtor dtor, xmlChar const **attrs); Take the first node from doc as the current node and call it's start handler. xin : GsfXMLIn doc : GsfXMLInDoc new_state : dtor : GsfXMLInExtDtor attrs : <anchor id="gsf-xml-in-namecmp" role="function"/>gsf_xml_in_namecmp () gsf_xml_in_namecmpgboolean gsf_xml_in_namecmp (GsfXMLIn const *xin, char const *str, unsigned int ns_id, char const *name); xin : The GsfXMLIn we are reading from. str : The potentially namespace qualified node name. ns_id : The name space id to check name : The target node name Returns :TRUE if str == ns_id:name according to state. <anchor id="gsf-xml-in-check-ns" role="function"/>gsf_xml_in_check_ns () gsf_xml_in_check_nscharconst * gsf_xml_in_check_ns (GsfXMLIn const *xin, char const *str, unsigned int ns_id); According to state is str in the namespace ns_id ? xin : str : ns_id : Returns :a pointer to str after the namespace if successful, otherwise NULL. <anchor id="GsfXMLOut-struct" role="struct"/>GsfXMLOut GsfXMLOuttypedef struct _GsfXMLOut GsfXMLOut; <anchor id="gsf-xml-out-new" role="function"/>gsf_xml_out_new () gsf_xml_out_newGsfXMLOut* gsf_xml_out_new (GsfOutput *output); Create an XML output stream. output : GsfOutput Returns : GsfXMLOut <anchor id="gsf-xml-out-set-doc-type" role="function"/>gsf_xml_out_set_doc_type () gsf_xml_out_set_doc_typevoid gsf_xml_out_set_doc_type (GsfXMLOut *xml, char const *type); Store some optional some <!DOCTYPE .. > content xml : GsfXMLOut type : the document type declaration <anchor id="gsf-xml-out-start-element" role="function"/>gsf_xml_out_start_element () gsf_xml_out_start_elementvoid gsf_xml_out_start_element (GsfXMLOut *xml, char const *id); Output a start element id, if necessary preceeded by an XML declaration. xml : GsfXMLOut id : Element name <anchor id="gsf-xml-out-end-element" role="function"/>gsf_xml_out_end_element () gsf_xml_out_end_elementcharconst * gsf_xml_out_end_element (GsfXMLOut *xml); Closes/ends an XML element. xml : GsfXMLOut Returns : the element that has been closed. <anchor id="gsf-xml-out-add-cstr" role="function"/>gsf_xml_out_add_cstr () gsf_xml_out_add_cstrvoid gsf_xml_out_add_cstr (GsfXMLOut *xml, char const *id, char const *val_utf8); dump val_utf8 to an attribute named id or as the nodes content escaping characters as necessary. If val_utf8 is NULL do nothing (no warning, no output) xml : GsfXMLOut id : optionally NULL for content val_utf8 : a utf8 encoded string <anchor id="gsf-xml-out-add-cstr-unchecked" role="function"/>gsf_xml_out_add_cstr_unchecked () gsf_xml_out_add_cstr_uncheckedvoid gsf_xml_out_add_cstr_unchecked (GsfXMLOut *xml, char const *id, char const *val_utf8); dump val_utf8 to an attribute named id without checking to see if the content needs escaping. A useful performance enhancement when the application knows that structure of the content well. If val_utf8 is NULL do nothing (no warning, no output) xml : GsfXMLOut id : optionally NULL for content val_utf8 : a utf8 encoded string to export <anchor id="gsf-xml-out-add-bool" role="function"/>gsf_xml_out_add_bool () gsf_xml_out_add_boolvoid gsf_xml_out_add_bool (GsfXMLOut *xml, char const *id, gboolean val); dump boolean value val to an attribute named id or as the nodes content Use '1' or '0' to simplify import xml : GsfXMLOut id : optionally NULL for content val : a boolean <anchor id="gsf-xml-out-add-int" role="function"/>gsf_xml_out_add_int () gsf_xml_out_add_intvoid gsf_xml_out_add_int (GsfXMLOut *xml, char const *id, int val); dump integer value val to an attribute named id or as the nodes content xml : GsfXMLOut id : optionally NULL for content val : the value <anchor id="gsf-xml-out-add-uint" role="function"/>gsf_xml_out_add_uint () gsf_xml_out_add_uintvoid gsf_xml_out_add_uint (GsfXMLOut *xml, char const *id, unsigned int val); dump unsigned integer value val to an attribute named id or as the nodes content xml : GsfXMLOut id : optionally NULL for content val : the value <anchor id="gsf-xml-out-add-float" role="function"/>gsf_xml_out_add_float () gsf_xml_out_add_floatvoid gsf_xml_out_add_float (GsfXMLOut *xml, char const *id, double val, int precision); dump float value val to an attribute named id or as the nodes content with precision precision. The number will be formattted according to the "C" locale. xml : GsfXMLOut id : optionally NULL for content val : the value precision : the number of significant digits to use, -1 meaning "enough". <anchor id="gsf-xml-out-add-enum" role="function"/>gsf_xml_out_add_enum () gsf_xml_out_add_enumvoid gsf_xml_out_add_enum (GsfXMLOut *xml, char const *id, GType etype, gint val); Output the name of value val of enumeration type etype. xml : GsfXMLOut id : optionally NULL for content etype : GType val : enum element number <anchor id="gsf-xml-out-add-color" role="function"/>gsf_xml_out_add_color () gsf_xml_out_add_colorvoid gsf_xml_out_add_color (GsfXMLOut *xml, char const *id, unsigned int r, unsigned int g, unsigned int b); dump Color r.g.b to an attribute named id or as the nodes content xml : GsfXMLOut id : optionally NULL for content r : Red value g : Green value b : Blue value <anchor id="gsf-xml-out-add-base64" role="function"/>gsf_xml_out_add_base64 () gsf_xml_out_add_base64void gsf_xml_out_add_base64 (GsfXMLOut *xml, char const *id, guint8 const *data, unsigned int len); dump len bytes in data into the content of node id using base64 xml : GsfXMLOut id : optionally NULL for content data : Data to be written len : Length of data <anchor id="gsf-xml-out-add-gvalue" role="function"/>gsf_xml_out_add_gvalue () gsf_xml_out_add_gvaluevoid gsf_xml_out_add_gvalue (GsfXMLOut *xml, char const *id, GValue const *val); Output the value of val as a string. Does NOT store any type information with the string, just thevalue. xml : GsfXMLOut id : optionally NULL for content val : GValue <anchor id="gsf-xml-out-simple-element" role="function"/>gsf_xml_out_simple_element () gsf_xml_out_simple_elementvoid gsf_xml_out_simple_element (GsfXMLOut *xml, char const *id, char const *content); Convenience routine to output a simple id element with content content. xml : GsfXMLOut id : Element name content : Content of the element <anchor id="gsf-xml-out-simple-float-element" role="function"/>gsf_xml_out_simple_float_element () gsf_xml_out_simple_float_elementvoid gsf_xml_out_simple_float_element (GsfXMLOut *xml, char const *id, double val, int precision); Convenience routine to output an element id with float value val using precision significant digits. xml : GsfXMLOut id : Element name val : Element value precision : the number of significant digits to use, -1 meaning "enough". <anchor id="gsf-xml-out-simple-int-element" role="function"/>gsf_xml_out_simple_int_element () gsf_xml_out_simple_int_elementvoid gsf_xml_out_simple_int_element (GsfXMLOut *xml, char const *id, int val); Convenience routine to output an element id with integer value val. xml : GsfXMLOut id : Element name val : Element value <anchor id="gsf-xml-parser-context" role="function"/>gsf_xml_parser_context () gsf_xml_parser_contextxmlParserCtxt* gsf_xml_parser_context (GsfInput *input); Create a libxml2 pull style parser context wrapper around gsf input input. This signature will probably change to supply a SAX structure. This adds a reference to input. A simple wrapper around a cleaner implementation that will fold in when we add other api changes. Its not worth bumping just for this. input : GsfInput Returns :: A parser context or NULL <anchor id="gsf-xml-gvalue-from-str" role="function"/>gsf_xml_gvalue_from_str () gsf_xml_gvalue_from_strgboolean gsf_xml_gvalue_from_str (GValue *res, GType t, char const *str); Try to parse str as a value of type t into res. res : Result value t : Type of data str : Value string Returns :: True when parsing of str as a value of type t was succesfull; false otherwise. <anchor id="gsf-xmlDocFormatDump" role="function"/>gsf_xmlDocFormatDump () gsf_xmlDocFormatDumpint gsf_xmlDocFormatDump (GsfOutput *output, xmlDoc *cur, char const *encoding, gboolean format); output : cur : encoding : format : Returns : libgsf-1.13.99/doc/xml/zip.xml0000644000076500017500000002314610401600622012760 00000000000000 ZIP archives 3 GSF Library ZIP archives ZIP compression and archive format Synopsis GsfInfileZip; GsfInfile* gsf_infile_zip_new (GsfInput *source, GError **err); GsfOutfileZip; GsfOutfile* gsf_outfile_zip_new (GsfOutput *sink, GError **err); gboolean gsf_outfile_zip_set_compression_method (GsfOutfileZip *zip, GsfZipCompressionMethod method); Object Hierarchy GObject +----GsfInput +----GsfInfile +----GsfInfileZip GObject +----GsfOutput +----GsfOutfile +----GsfOutfileZip Properties "compression-level" gint : Read "internal-parent" GsfInfileZip : Write / Construct Only "source" GsfInput : Read / Write / Construct Only "compression-level" gint : Read / Write / Construct Only "entry-name" gchararray : Read / Write / Construct Only "sink" GsfOutput : Read / Write / Construct Only Description The ZIP file format is a file format that provides data compression and archiving. It is in widespread use on various platforms. These routines handle ZIP archives. Details <anchor id="GsfInfileZip-struct" role="struct"/>GsfInfileZip GsfInfileZiptypedef struct _GsfInfileZip GsfInfileZip; <anchor id="gsf-infile-zip-new" role="function"/>gsf_infile_zip_new () gsf_infile_zip_newGsfInfile* gsf_infile_zip_new (GsfInput *source, GError **err); Opens the root directory of a Zip file. This adds a reference to source. source : A base GsfInput err : A GError, optionally null Returns : the new zip file handler <anchor id="GsfOutfileZip-struct" role="struct"/>GsfOutfileZip GsfOutfileZiptypedef struct _GsfOutfileZip GsfOutfileZip; <anchor id="gsf-outfile-zip-new" role="function"/>gsf_outfile_zip_new () gsf_outfile_zip_newGsfOutfile* gsf_outfile_zip_new (GsfOutput *sink, GError **err); Creates the root directory of a Zip file and manages the addition of children. This adds a reference to sink. sink : a GsfOutput to hold the ZIP file err : Location to store error, or NULL; currently unused. Returns : the new zip file handler <anchor id="gsf-outfile-zip-set-compression-method" role="function"/>gsf_outfile_zip_set_compression_method () gsf_outfile_zip_set_compression_methodgboolean gsf_outfile_zip_set_compression_method (GsfOutfileZip *zip, GsfZipCompressionMethod method); zip : method : Returns : Property Details <anchor id="GsfInfileZip--compression-level"/>The "<literal>compression-level</literal>" property "compression-level" gint : Read The level of compression used, zero meaning none.Allowed values: [0,10] Default value: 0 <anchor id="GsfInfileZip--internal-parent"/>The "<literal>internal-parent</literal>" property "internal-parent" GsfInfileZip : Write / Construct Only Internal use only. <anchor id="GsfInfileZip--source"/>The "<literal>source</literal>" property "source" GsfInput : Read / Write / Construct Only The archive being interpreted. <anchor id="GsfOutfileZip--compression-level"/>The "<literal>compression-level</literal>" property "compression-level" gint : Read / Write / Construct Only The level of compression used, zero meaning none.Allowed values: [0,10] Default value: 8 <anchor id="GsfOutfileZip--entry-name"/>The "<literal>entry-name</literal>" property "entry-name" gchararray : Read / Write / Construct Only The filename of this member in the archive without path.Default value: NULL <anchor id="GsfOutfileZip--sink"/>The "<literal>sink</literal>" property "sink" GsfOutput : Read / Write / Construct Only Where the archive is written. See Also The Wikipedia article "ZIP (file format)". libgsf-1.13.99/doc/html/0000777000076500017500000000000010401600622011656 500000000000000libgsf-1.13.99/doc/html/GsfBlob.html0000644000076500017500000002142010401600622013775 00000000000000 GsfBlob

GsfBlob

GsfBlob — A generic, unstructured block of binary data

Synopsis




            GsfBlob;
            GsfBlobClass;
GsfBlob*    gsf_blob_new                    (gsize size,
                                             gconstpointer data_to_copy,
                                             GError **error);
gsize       gsf_blob_get_size               (GsfBlob *blob);
gconstpointer gsf_blob_peek_data            (GsfBlob *blob);


Object Hierarchy


  GObject
   +----GsfBlob

Description

Some libgsf functions, in particular the metadata functions, can generate unstructured blocks of data, or blobs. Libgsf represents these blobs using a GsfBlob object.

Details

GsfBlob

typedef struct _GsfBlob GsfBlob;

Represents an unstructured block of binary data, that is, a sequence of bytes and an integer specifying the size of the sequence.


GsfBlobClass

typedef struct {
	GObjectClass parent_class;
} GsfBlobClass;


gsf_blob_new ()

GsfBlob*    gsf_blob_new                    (gsize size,
                                             gconstpointer data_to_copy,
                                             GError **error);

Creates a new GsfBlob object to hold the specified data. The blob can then be used as a facility for reference-counting for the data. The data is copied internally, so the blob does not hold references to external chunks of memory.

size : Size of the data in bytes.
data_to_copy : Data which will be copied into the blob, or NULL if size is zero.
error : location to store error, or NULL.
Returns : A newly-created GsfBlob, or NULL if the data could not be copied. Error domain: GSF_ERROR Possible errors: GSF_ERROR_OUT_OF_MEMORY if the data_to_copy could not be copied.

gsf_blob_get_size ()

gsize       gsf_blob_get_size               (GsfBlob *blob);

Queries the size in bytes of the data stored in the blob.

blob : A GsfBlob.
Returns : Size in bytes, or 0 if the data is NULL.

gsf_blob_peek_data ()

gconstpointer gsf_blob_peek_data            (GsfBlob *blob);

Queries a pointer to the data stored in the blob. This does not copy the data for you; it returns a pointer to the actual buffer which the blob uses internally, so you should not free this buffer on your own.

blob : A GsfBlob.
Returns : Pointer to the data stored in the blob, or NULL if the size of the data is zero.

See Also

GsfClipData, GsfMetadata

libgsf-1.13.99/doc/html/GsfClipData.html0000644000076500017500000005152710401600622014613 00000000000000 GsfClipData

GsfClipData

GsfClipData — Object to hold clipboard data from a VT_CF section

Object Hierarchy


  GObject
   +----GsfClipData

Description

OLE2 files may contain clipboard data in the VT_CF property of the metadata in a SummaryInfo section. This data is used, among other things, to represent a thumbnail or pre-rendered version of the data in the file. GsfClipData is an object that holds such clipboard data.

You can get a GsfClipData object from the GValue returned by gsf_doc_prop_get_val(), after you have done gsf_doc_meta_data_lookup (meta_data, GSF_META_NAME_THUMBNAIL). The resulting GsfClipData object, if it exists, contains the thumbnail data. In turn, the thumbnail data may be in different formats, as specified by the GsfClipFormat enumeration.

Internally, GsfClipData stores the thumbnail data plus any extra information in a GsfBlob object. GsfClipData provides a convenience function, gsf_clip_data_peek_real_data(), to extract the thumbnail data directly. If you need to use the raw binary data instead of the data specific to the thumbnail, you can use gsf_clip_data_get_data_blob() to get the GsfBlob object and handle it yourself.

Details

enum GsfClipFormat

typedef enum {
	GSF_CLIP_FORMAT_WINDOWS_CLIPBOARD = -1,
	GSF_CLIP_FORMAT_MACINTOSH_CLIPBOARD = -2,
	GSF_CLIP_FORMAT_GUID = -3,
	GSF_CLIP_FORMAT_NO_DATA = 0,
	GSF_CLIP_FORMAT_CLIPBOARD_FORMAT_NAME = 1, /* in the file it's actually any positive integer */
	GSF_CLIP_FORMAT_UNKNOWN /* this is our own value for unknown types or invalid data */
} GsfClipFormat;

A GsfClipData stores all its thumbnail data and associated information in an internal GsfBlob object. The GsfClipFormat enumeration represents the possible formats for this data blob.

GSF_CLIP_FORMAT_WINDOWS_CLIPBOARD The thumbnail data is stored in Windows clipboard format. The particular sub-format can be in any of the values in the GsfClipFormatWindows enumeration. When a GsfClipData is in GSF_CLIP_FORMAT_WINDOWS_CLIPBOARD, you can use gsf_clip_data_get_windows_clipboard_format() to get the sub-format in which the data is actually stored.
GSF_CLIP_FORMAT_MACINTOSH_CLIPBOARD The thumbnail data is stored in Macintosh clipboard format, usually PICT.
GSF_CLIP_FORMAT_GUID The thumbnail data contains a GUID specifying the OLE component which can be used to render it. Please refer to the OLE2 format documentation for details.
GSF_CLIP_FORMAT_NO_DATA There is no thumbnail data.
GSF_CLIP_FORMAT_CLIPBOARD_FORMAT_NAME The thumbnail data contains a null-terminated string with a Windows clipboard format name. Please refer to the OLE2 format documentation for details.
GSF_CLIP_FORMAT_UNKNOWN The thumbnail data is in an unknown format, but is nevertheless stored in a GsfBlob.

enum GsfClipFormatWindows

typedef enum {
	GSF_CLIP_FORMAT_WINDOWS_ERROR = -1,		/* our own value */
	GSF_CLIP_FORMAT_WINDOWS_UNKNOWN = -2,		/* our own value */
	GSF_CLIP_FORMAT_WINDOWS_METAFILE = 3,		/* CF_METAFILEPICT */
	GSF_CLIP_FORMAT_WINDOWS_DIB = 8,		/* CF_DIB */
	GSF_CLIP_FORMAT_WINDOWS_ENHANCED_METAFILE = 14	/* CF_ENHMETAFILE */
} GsfClipFormatWindows;

When a GsfClipData is in GSF_CLIP_FORMAT_WINDOWS_CLIPBOARD format, it can be in any of the subformats specified by the GsfClipFormatWindows enumeration. Use gsf_clip_data_get_windows_clipboard_format() to determine this sub-format.

For all of these values, the gsf_clip_data_peek_real_data() function lets you access the data directly.

GSF_CLIP_FORMAT_WINDOWS_ERROR The OLE file is probably corrupt.
GSF_CLIP_FORMAT_WINDOWS_UNKNOWN The specific clipboard format is unknown to libgsf.
GSF_CLIP_FORMAT_WINDOWS_METAFILE The data is in Windows Metafile format. While OLE files store extra header data in this case, the gsf_clip_data_peek_real_data() function will let you access the WMF data directly, and it will ignore the extra header bytes.
GSF_CLIP_FORMAT_WINDOWS_DIB The data is in Windows Device-Independent Bitmap format.
GSF_CLIP_FORMAT_WINDOWS_ENHANCED_METAFILE The data is in Windows Enhanced Metaflie format.

GsfClipData

typedef struct _GsfClipData GsfClipData;

Object used to represent a VT_CF property in the OLE stream.


GsfClipDataClass

typedef struct {
	GObjectClass parent_class;
} GsfClipDataClass;


gsf_clip_data_new ()

GsfClipData* gsf_clip_data_new              (GsfClipFormat format,
                                             GsfBlob *data_blob);

Creates a new GsfClipData object. This function acquires a reference to the data_blob, so you should unref the blob on your own if you no longer need it directly.

format : Format for the data inside the data_blob
data_blob : Object which holds the binary contents for the GsfClipData
Returns : A newly-created GsfClipData.

gsf_clip_data_get_format ()

GsfClipFormat gsf_clip_data_get_format      (GsfClipData *clip_data);

Queries the clipboard data format of a GsfClipData. The format refers to the data blob inside the clip_data; use gsf_clip_data_get_data_blob() to get that data blob.

clip_data : A GsfClipData.
Returns : The format in which the GsfClipData's data blob is stored.

gsf_clip_data_get_data_blob ()

GsfBlob*    gsf_clip_data_get_data_blob     (GsfClipData *clip_data);

Queries the data blob that actually stores a GsfClipData's binary data.

clip_data : A GsfClipData.
Returns : A new reference to the GsfBlob that stores this clip_data's binary data. You must use g_object_unref() to dispose of that data blob when you are done with it.

gsf_clip_data_get_windows_clipboard_format ()

GsfClipFormatWindows gsf_clip_data_get_windows_clipboard_format
                                            (GsfClipData *clip_data,
                                             GError **error);

Queries the Windows clipboard data format for a GsfClipData. The clip_data must have been created with GSF_CLIP_FORMAT_WINDOWS_CLIPBOARD.

clip_data : A GsfClipData.
error : Location to store error, or NULL
Returns : A GsfClipFormatWindows value. Possible errors: GSF_ERROR_INVALID_DATA if the data blob in the clip_data is smaller than it should be; in this case GSF_CLIP_FORMAT_WINDOWS_ERROR will be returned.

gsf_clip_data_peek_real_data ()

gconstpointer gsf_clip_data_peek_real_data  (GsfClipData *clip_data,
                                             gsize *ret_size,
                                             GError **error);

Queries a pointer directly to the clipboard data of a GsfClipData. The resulting pointer is not necessarily the same data pointer that was passed to gsf_blob_new() prior to creating the clip_data. For example, if the data is in GSF_CLIP_FORMAT_WINDOWS_CLIPBOARD format, then it will have extra header bytes in front of the actual metafile data. This function will skip over those header bytes if necessary and return a pointer to the "real" data.

clip_data : A GsfClipData.
ret_size : Location to return the size of the returned data buffer.
error : Location to store error, or NULL.
Returns : Pointer to the real clipboard data. The size in bytes of this buffer is returned in the ret_size argument.
libgsf-1.13.99/doc/html/api.html0000644000076500017500000000463010401600622013234 00000000000000 Part V. API Reference

API Reference

The core of GSF's API deals with basic I/O, an abstraction layer that provides a uniform interface to several mechanisms that provide streams of data and a set of parsers for various structured types of data streams.

libgsf-1.13.99/doc/html/dependencies.html0000644000076500017500000001100710401600622015105 00000000000000 Part III. GSF: Dependencies

GSF: Dependencies

GSF depends on the following libraries:

GLib

A general-purpose utility library, not specific to graphical user interfaces. GLib provides many useful data types, macros, type conversions, string utilities, file utilities, a main loop abstraction, and so on.

Libxml2

A library that provides a parser and toolkit for XML, the Extensible Markup Language. XML is a metalanguage used to define markup languages (text languages where structure and semantics are added to the content using extra "markup" information).

The core GSF library can be built to also utilize the following libraries:

zlib

A data compression library that implements the DEFLATE algorithm used in gzip.

libbz2

A data compression library that implements the algorithm used in bzip2.

A separate GSF library can be built that offers additional functionality for use in the GNOME desktop environment. That library has the following additional requirements:

libbonobo-2.0

Bonobo is the GNOME architecture for creating reusable software components and compound documents.

gnome-vfs-2.0

GnomeVFS is a filesystem abstraction library that allows applications plugable transparent access to a variety of "real" filesystems, including networked filesystems like WebDAV, storage on devices like digital cameras, to the local filesystem.

libgsf-1.13.99/doc/html/gsf-Bononbo.html0000644000076500017500000001600710401600622014635 00000000000000 Bononbo

Bononbo

Bononbo —

Synopsis




            GsfInputBonobo;
GsfInput*   gsf_input_bonobo_new            (Bonobo_Stream const stream,
                                             GError **err);
            GsfOutputBonobo;
GsfOutput*  gsf_output_bonobo_new           (Bonobo_Stream const stream,
                                             GError **err);
            GsfSharedBonoboStream;
GsfSharedBonoboStream* gsf_shared_bonobo_stream_new
                                            (Bonobo_Stream stream);

Description

Details

GsfInputBonobo

typedef struct _GsfInputBonobo GsfInputBonobo;


gsf_input_bonobo_new ()

GsfInput*   gsf_input_bonobo_new            (Bonobo_Stream const stream,
                                             GError **err);

stream :
err :
Returns :

GsfOutputBonobo

typedef struct _GsfOutputBonobo GsfOutputBonobo;


gsf_output_bonobo_new ()

GsfOutput*  gsf_output_bonobo_new           (Bonobo_Stream const stream,
                                             GError **err);

stream :
err :
Returns :

GsfSharedBonoboStream

typedef struct {
	GObject g_object;
	Bonobo_Stream stream;
	CORBA_long pos;
} GsfSharedBonoboStream;


gsf_shared_bonobo_stream_new ()

GsfSharedBonoboStream* gsf_shared_bonobo_stream_new
                                            (Bonobo_Stream stream);

stream :
Returns :
libgsf-1.13.99/doc/html/gsf-Compression.html0000644000076500017500000003257710401600622015554 00000000000000 Compression

Compression

Compression — Data compressed using gzip or bzip2

Synopsis




            GsfInputGZip;
GsfInput*   gsf_input_gzip_new              (GsfInput *source,
                                             GError **err);
GsfInput*   gsf_input_memory_new_from_bzip  (GsfInput *source,
                                             GError **err);
            GsfOutputGZip;
GsfOutput*  gsf_output_gzip_new             (GsfOutput *sink,
                                             GError **err);
            GsfOutputBzip;
GsfOutput*  gsf_output_bzip_new             (GsfOutput *sink,
                                             GError **err);

Object Hierarchy


  GObject
   +----GsfInput
         +----GsfInputGZip

  GObject
   +----GsfOutput
         +----GsfOutputGZip

  GObject
   +----GsfOutput
         +----GsfOutputBzip

Properties


  "raw"                  gboolean              : Read / Write / Construct Only
  "source"               GsfInput              : Read / Write / Construct Only
  "uncompressed-size"    gint64                : Read / Write / Construct Only
  "raw"                  gboolean              : Read / Write / Construct Only
  "sink"                 GsfOutput             : Read / Write / Construct Only

Description

gzip and bzip2 are data compression algorithms and file formats that are in widespread use.

These routines handle both gzip and bzip2 compression and decompression.

Details

GsfInputGZip

typedef struct _GsfInputGZip GsfInputGZip;


gsf_input_gzip_new ()

GsfInput*   gsf_input_gzip_new              (GsfInput *source,
                                             GError **err);

Adds a reference to source.

source : The underlying data source.
err : optionally NULL.
Returns : a new file or NULL.

gsf_input_memory_new_from_bzip ()

GsfInput*   gsf_input_memory_new_from_bzip  (GsfInput *source,
                                             GError **err);

source : a GsfInput
err : a GError
Returns : a new GsfInputMemory or NULL.

GsfOutputGZip

typedef struct _GsfOutputGZip GsfOutputGZip;


gsf_output_gzip_new ()

GsfOutput*  gsf_output_gzip_new             (GsfOutput *sink,
                                             GError **err);

Adds a reference to sink.

sink : The underlying data source.
err : optionally NULL.
Returns : a new file or NULL.

GsfOutputBzip

typedef struct _GsfOutputBzip GsfOutputBzip;


gsf_output_bzip_new ()

GsfOutput*  gsf_output_bzip_new             (GsfOutput *sink,
                                             GError **err);

Adds a reference to sink.

sink : The underlying data source.
err : optionally NULL.
Returns : a new file or NULL.

Property Details

The "raw" property

  "raw"                  gboolean              : Read / Write / Construct Only

Whether to read compressed data with no header and no trailer.

Default value: FALSE


The "source" property

  "source"               GsfInput              : Read / Write / Construct Only

Where the compressed data comes from.


The "uncompressed-size" property

  "uncompressed-size"    gint64                : Read / Write / Construct Only

The source's uncompressed size.

Allowed values: >= -1

Default value: -1


The "raw" property

  "raw"                  gboolean              : Read / Write / Construct Only

Whether to write compressed data with no header/tailer.

Default value: FALSE


The "sink" property

  "sink"                 GsfOutput             : Read / Write / Construct Only

Where the compressed data is written.

libgsf-1.13.99/doc/html/gsf-GIOChannel.html0000644000076500017500000001101710401600622015144 00000000000000 GIOChannel

GIOChannel

GIOChannel —

Synopsis




            GsfOutputIOChannel;
GsfOutput*  gsf_output_iochannel_new        (GIOChannel *channel);

Object Hierarchy


  GObject
   +----GsfOutput
         +----GsfOutputIOChannel

Description

Details

GsfOutputIOChannel

typedef struct _GsfOutputIOChannel GsfOutputIOChannel;


gsf_output_iochannel_new ()

GsfOutput*  gsf_output_iochannel_new        (GIOChannel *channel);

channel : A GIOChannel
Returns : a new file or NULL.
libgsf-1.13.99/doc/html/gsf-GnomeVFS.html0000644000076500017500000002150410401600622014663 00000000000000 GnomeVFS

GnomeVFS

GnomeVFS —

Synopsis




            GsfInputGnomeVFS;
GsfInput*   gsf_input_gnomevfs_new          (char const *uri,
                                             GError **error);
GsfInput*   gsf_input_gnomevfs_new_uri      (GnomeVFSURI *uri,
                                             GError **error);
gboolean    gsf_input_gnomevfs_needs_local_copy
                                            (GsfInputGnomeVFS *vfs_input);
            GsfOutputGnomeVFS;
GsfOutput*  gsf_output_gnomevfs_new         (char const *filename,
                                             GError **err);
GsfOutput*  gsf_output_gnomevfs_new_uri     (GnomeVFSURI *uri,
                                             GError **err);

Description

Details

GsfInputGnomeVFS

typedef struct _GsfInputGnomeVFS GsfInputGnomeVFS;


gsf_input_gnomevfs_new ()

GsfInput*   gsf_input_gnomevfs_new          (char const *uri,
                                             GError **error);

uri :
error :
Returns :

gsf_input_gnomevfs_new_uri ()

GsfInput*   gsf_input_gnomevfs_new_uri      (GnomeVFSURI *uri,
                                             GError **error);

uri :
error :
Returns :

gsf_input_gnomevfs_needs_local_copy ()

gboolean    gsf_input_gnomevfs_needs_local_copy
                                            (GsfInputGnomeVFS *vfs_input);

vfs_input :
Returns :

GsfOutputGnomeVFS

typedef struct _GsfOutputGnomeVFS GsfOutputGnomeVFS;


gsf_output_gnomevfs_new ()

GsfOutput*  gsf_output_gnomevfs_new         (char const *filename,
                                             GError **err);

filename :
err :
Returns :

gsf_output_gnomevfs_new_uri ()

GsfOutput*  gsf_output_gnomevfs_new_uri     (GnomeVFSURI *uri,
                                             GError **err);

uri :
err :
Returns :
libgsf-1.13.99/doc/html/gsf-Infile-reading-structed-files.html0000644000076500017500000002474310401600622021017 00000000000000 Infile reading structed files

Infile reading structed files

Infile reading structed files —

Synopsis




            GsfInfile;
int         gsf_infile_num_children         (GsfInfile *infile);
GsfInput*   gsf_infile_child_by_index       (GsfInfile *infile,
                                             int i);
GsfInput*   gsf_infile_child_by_name        (GsfInfile *infile,
                                             char const *name);
GsfInput*   gsf_infile_child_by_vname       (GsfInfile *infile,
                                             char const *name,
                                             ...);
charconst * gsf_infile_name_by_index        (GsfInfile *infile,
                                             int i);

Object Hierarchy


  GObject
   +----GsfInput
         +----GsfInfile
               +----GsfInfileMSOle
               +----GsfInfileStdio
               +----GsfInfileZip
               +----GsfStructuredBlob

Description

Details

GsfInfile

typedef struct _GsfInfile GsfInfile;


gsf_infile_num_children ()

int         gsf_infile_num_children         (GsfInfile *infile);

infile : the structured storage
Returns : the number of children the storage has, or -1 if the storage can not have children.

gsf_infile_child_by_index ()

GsfInput*   gsf_infile_child_by_index       (GsfInfile *infile,
                                             int i);

TODO : For 2.0 api will change to include a GError.

infile :
i :
Returns : a newly created child which must be unrefed.

gsf_infile_child_by_name ()

GsfInput*   gsf_infile_child_by_name        (GsfInfile *infile,
                                             char const *name);

TODO : For 2.0 api will change to include a GError.

infile :
name :
Returns : a newly created child which must be unrefed.

gsf_infile_child_by_vname ()

GsfInput*   gsf_infile_child_by_vname       (GsfInfile *infile,
                                             char const *name,
                                             ...);

infile :
name : A null terminated list of names
... : the rest of the names
Returns : a newly created child which must be unrefed.

gsf_infile_name_by_index ()

charconst * gsf_infile_name_by_index        (GsfInfile *infile,
                                             int i);

infile :
i :
Returns : the utf8 encoded name of the i-th child DO NOT FREE THE STRING.
libgsf-1.13.99/doc/html/gsf-Input-from-unstructured-files.html0000644000076500017500000007017610401600622021155 00000000000000 Input from unstructured files

Input from unstructured files

Input from unstructured files —

Synopsis




            GsfInput;
guint8const * gsf_input_read                (GsfInput *input,
                                             size_t num_bytes,
                                             guint8 *optional_buffer);
gsf_off_t   gsf_input_tell                  (GsfInput *input);
gboolean    gsf_input_seek                  (GsfInput *input,
                                             gsf_off_t offset,
                                             GSeekType whence);
GsfInfile*  gsf_input_container             (GsfInput *input);
GsfInput*   gsf_input_dup                   (GsfInput *input,
                                             GError **err);
gsf_off_t   gsf_input_size                  (GsfInput *input);
gboolean    gsf_input_eof                   (GsfInput *input);
gsf_off_t   gsf_input_remaining             (GsfInput *input);
GQuark      gsf_input_error_id              (void);
GsfInput*   gsf_input_sibling               (GsfInput const *input,
                                             char const *name,
                                             GError **err);
GQuark      gsf_input_error                 (void);
charconst   * gsf_input_name                (GsfInput *input);
gboolean    gsf_input_set_name_from_filename
                                            (GsfInput *input,
                                             char const *filename);
            GsfInputProxy;
GsfInput*   gsf_input_proxy_new             (GsfInput *source);
GsfInput*   gsf_input_proxy_new_section     (GsfInput *source,
                                             gsf_off_t offset,
                                             gsf_off_t size);

gboolean    gsf_input_copy                  (GsfInput *input,
                                             GsfOutput *output);
GsfInput*   gsf_input_uncompress            (GsfInput *src);


Object Hierarchy


  GObject
   +----GsfInput
         +----GsfInfile
         +----GsfInputGZip
         +----GsfInputMemory
         +----GsfInputProxy
         +----GsfInputStdio
         +----GsfInputTextline

  GObject
   +----GsfInput
         +----GsfInputProxy

Properties


  "eof"                  gboolean              : Read
  "name"                 gchararray            : Read
  "position"             gint64                : Read
  "remaining"            gint64                : Read
  "size"                 gint64                : Read

Description

Details

GsfInput

typedef struct _GsfInput GsfInput;


gsf_input_read ()

guint8const * gsf_input_read                (GsfInput *input,
                                             size_t num_bytes,
                                             guint8 *optional_buffer);

Read at least num_bytes. Does not change the current position if there is an error. Will only read if the entire amount can be read. Invalidates the buffer associated with previous calls to gsf_input_read.

input : the input stream
num_bytes : number of bytes to read
optional_buffer : NULL, or pointer to destination memory area
Returns : pointer to the buffer or NULL if there is an error or 0 bytes are requested.

gsf_input_tell ()

gsf_off_t   gsf_input_tell                  (GsfInput *input);

input : the input stream
Returns : the current offset in the file.

gsf_input_seek ()

gboolean    gsf_input_seek                  (GsfInput *input,
                                             gsf_off_t offset,
                                             GSeekType whence);

Move the current location in the input stream.

input : the input stream
offset : target offset
whence : determines whether the offset is relative to the beginning or the end of the stream, or to the current location.
Returns : TRUE on error.

gsf_input_container ()

GsfInfile*  gsf_input_container             (GsfInput *input);

input : the input stream
Returns : , but does not add a reference to input's container. Potentially NULL

gsf_input_dup ()

GsfInput*   gsf_input_dup                   (GsfInput *input,
                                             GError **err);

Duplicates input src leaving the new one at the same offset.

input : The input to duplicate
err : optionally NULL
Returns : the duplicate, or NULL on error

gsf_input_size ()

gsf_off_t   gsf_input_size                  (GsfInput *input);

Looks up and caches the number of bytes in the input

input : The input
Returns : the size or -1 on error

gsf_input_eof ()

gboolean    gsf_input_eof                   (GsfInput *input);

Are we at the end of the file ?

input : the input
Returns : TRUE if the input is at the eof.

gsf_input_remaining ()

gsf_off_t   gsf_input_remaining             (GsfInput *input);

input : the input stream
Returns : the number of bytes left in the file.

gsf_input_error_id ()

GQuark      gsf_input_error_id              (void);

Returns : A utility quark to flag a GError as being an input problem.

gsf_input_sibling ()

GsfInput*   gsf_input_sibling               (GsfInput const *input,
                                             char const *name,
                                             GError **err);

input :
name :
err :
Returns :

gsf_input_error ()

GQuark      gsf_input_error                 (void);

Deprecated as of GSF 1.12.0; use gsf_input_error_id() instead.

Returns : A utility quark to flag a GError as being an input problem.

gsf_input_name ()

charconst   * gsf_input_name                (GsfInput *input);

The name of the input stream.

input : the input stream
Returns : input's name in utf8 form, or NULL if it has no name.

gsf_input_set_name_from_filename ()

gboolean    gsf_input_set_name_from_filename
                                            (GsfInput *input,
                                             char const *filename);

protected.

input : the input stream
filename : the (fs-sys encoded) filename
Returns : TRUE if the assignment was ok.

GsfInputProxy

typedef struct _GsfInputProxy GsfInputProxy;


gsf_input_proxy_new ()

GsfInput*   gsf_input_proxy_new             (GsfInput *source);

This creates a new proxy to the entire, given input source. See gsf_input_proxy_new_section for details.

source : The underlying data source.
Returns : a new input object.

gsf_input_proxy_new_section ()

GsfInput*   gsf_input_proxy_new_section     (GsfInput *source,
                                             gsf_off_t offset,
                                             gsf_off_t size);

This creates a new proxy to a section of the given source. The new object will have its own current position, but any operation on it can change the source's position.

If a proxy to a proxy is created, the intermediate proxy is short- circuited.

This function will ref the source.

source : The underlying data source.
offset : Offset into source for start of section.
size : Length of section.
Returns : a new input object.

gsf_input_copy ()

gboolean    gsf_input_copy                  (GsfInput *input,
                                             GsfOutput *output);

Copy the contents from input to output from their respective current positions. So if you want to be sure to copy *everything*, make sure to call gsf_input_seek (input, 0, G_SEEK_SET) and gsf_output_seek (output, 0, G_SEEK_SET) first, if applicable.

input : a non-null GsfInput
output : a non-null GsfOutput
Returns : TRUE on Success

gsf_input_uncompress ()

GsfInput*   gsf_input_uncompress            (GsfInput *src);

src : stream to be uncompressed.
Returns : A stream equivalent to the source stream, but uncompressed if the source was compressed. This functions takes ownership of the incoming reference and yields a new one as its output.

Property Details

The "eof" property

  "eof"                  gboolean              : Read

End Of File.

Default value: FALSE


The "name" property

  "name"                 gchararray            : Read

The Input's Name.

Default value: NULL


The "position" property

  "position"             gint64                : Read

The Output's Current Position.

Allowed values: >= 0

Default value: 0


The "remaining" property

  "remaining"            gint64                : Read

Amount of Data Remaining.

Allowed values: >= 0

Default value: 0


The "size" property

  "size"                 gint64                : Read

The Input's Size.

Allowed values: >= 0

Default value: 0

libgsf-1.13.99/doc/html/gsf-MS-OLE2.html0000644000076500017500000006566710401600622014277 00000000000000 MS OLE2

MS OLE2

MS OLE2 — Microsoft OLE2 files

Synopsis




            GsfInfileMSOle;
GsfInfile*  gsf_infile_msole_new            (GsfInput *source,
                                             GError **err);
gboolean    gsf_infile_msole_get_class_id   (GsfInfileMSOle const *ole,
                                             guint8 *res);
            GsfOutfileMSOle;
GsfOutfile* gsf_outfile_msole_new           (GsfOutput *sink);
GsfOutfile* gsf_outfile_msole_new_full      (GsfOutput *sink,
                                             guint bb_size,
                                             guint sb_size);
gboolean    gsf_outfile_msole_set_class_id  (GsfOutfileMSOle *ole,
                                             guint8 const *clsid);
GError*     gsf_msole_metadata_read         (GsfInput *in,
                                             GsfDocMetaData *accum);
gboolean    gsf_msole_metadata_write        (GsfOutput *out,
                                             GsfDocMetaData const *meta_data,
                                             gboolean doc_not_component);
GIConv      gsf_msole_iconv_open_codepages_for_export
                                            (int codepage_to,
                                             char const *from);
GIConv      gsf_msole_iconv_open_codepage_for_import
                                            (char const *to,
                                             int codepage);
GIConv      gsf_msole_iconv_open_for_export (void);
GIConv      gsf_msole_iconv_open_codepage_for_export
                                            (int codepage_to);
GIConv      gsf_msole_iconv_open_for_import (int codepage);
int         gsf_msole_iconv_win_codepage    (void);
guint       gsf_msole_codepage_to_lid       (int codepage);
int         gsf_msole_lid_to_codepage       (guint lid);
gchar*      gsf_msole_lid_to_codepage_str   (guint lid);
guint       gsf_msole_lid_for_language      (char const *lang);
charconst * gsf_msole_language_for_lid      (guint lid);
GByteArray* gsf_msole_inflate               (GsfInput *input,
                                             gsf_off_t offset);


Object Hierarchy


  GObject
   +----GsfInput
         +----GsfInfile
               +----GsfInfileMSOle

  GObject
   +----GsfOutput
         +----GsfOutfile
               +----GsfOutfileMSOle

Description

Object Linking and Embedding 2, or OLE2 was developed by Microsoft and provides ways to create combined documents out of parts from different types of office applications (like spreadsheets and word processor files).

These routines handle the <term>OLE2</term> file format.

Details

GsfInfileMSOle

typedef struct _GsfInfileMSOle GsfInfileMSOle;


gsf_infile_msole_new ()

GsfInfile*  gsf_infile_msole_new            (GsfInput *source,
                                             GError **err);

Opens the root directory of an MS OLE file.

Note

This adds a reference to source.

source :
err :
Returns : the new ole file handler

gsf_infile_msole_get_class_id ()

gboolean    gsf_infile_msole_get_class_id   (GsfInfileMSOle const *ole,
                                             guint8 *res);

Retrieves the 16 byte indentifier (often a GUID in MS Windows apps) stored within the directory associated with ole and stores it in res.

ole : a GsfInfileMSOle
res : 16 byte identifier (often a GUID in MS Windows apps)
Returns : TRUE on success

GsfOutfileMSOle

typedef struct _GsfOutfileMSOle GsfOutfileMSOle;


gsf_outfile_msole_new ()

GsfOutfile* gsf_outfile_msole_new           (GsfOutput *sink);

Creates the root directory of an MS OLE file and manages the addition of children.

Note

This adds a reference to sink.

sink : a GsfOutput to hold the OLE2 file
Returns : the new ole file handler.

gsf_outfile_msole_new_full ()

GsfOutfile* gsf_outfile_msole_new_full      (GsfOutput *sink,
                                             guint bb_size,
                                             guint sb_size);

Creates the root directory of an MS OLE file and manages the addition of children.

Note

This adds a reference to sink.

sink : a GsfOutput to hold the OLE2 file.
bb_size : size of large blocks.
sb_size : size of small blocks.
Returns : the new ole file handler.

gsf_outfile_msole_set_class_id ()

gboolean    gsf_outfile_msole_set_class_id  (GsfOutfileMSOle *ole,
                                             guint8 const *clsid);

Write clsid to the directory associated with ole.

ole : a GsfOutfileMSOle
clsid : 16 byte identifier (often a GUID in MS Windows apps)
Returns : TRUE on success.

gsf_msole_metadata_read ()

GError*     gsf_msole_metadata_read         (GsfInput *in,
                                             GsfDocMetaData *accum);

Read a stream formated as a set of MS OLE properties from in and store the results in accum.

in : GsfInput
accum : GsfDocMetaData
Returns : GError which the caller must free on error.

gsf_msole_metadata_write ()

gboolean    gsf_msole_metadata_write        (GsfOutput *out,
                                             GsfDocMetaData const *meta_data,
                                             gboolean doc_not_component);

out : GsfOutput
meta_data : GsfDocMetaData
doc_not_component : a kludge to differentiate DocumentSummary from Summary
Returns : TRUE on success;

gsf_msole_iconv_open_codepages_for_export ()

GIConv      gsf_msole_iconv_open_codepages_for_export
                                            (int codepage_to,
                                             char const *from);

codepage_to :
from :
Returns : an iconv converter to go from utf8 -> to our best guess at a useful windows codepage.

gsf_msole_iconv_open_codepage_for_import ()

GIConv      gsf_msole_iconv_open_codepage_for_import
                                            (char const *to,
                                             int codepage);

to :
codepage :
Returns : an iconv converter for codepage -> utf8.

gsf_msole_iconv_open_for_export ()

GIConv      gsf_msole_iconv_open_for_export (void);

Returns : an iconv convert to go from utf8 -> to our best guess at a useful windows codepage.

gsf_msole_iconv_open_codepage_for_export ()

GIConv      gsf_msole_iconv_open_codepage_for_export
                                            (int codepage_to);

codepage_to :
Returns : an iconv converter to go from utf8 -> to our best guess at a useful windows codepage.

gsf_msole_iconv_open_for_import ()

GIConv      gsf_msole_iconv_open_for_import (int codepage);

codepage :
Returns : an iconv converter for single byte encodings codepage -> utf8. Attempt to handle the semantics of a specification for multibyte encodings since this is only supposed to be used for single bytes.

gsf_msole_iconv_win_codepage ()

int         gsf_msole_iconv_win_codepage    (void);

Returns : our best guess at the applicable windows code page based on an environment variable or the current locale.

gsf_msole_codepage_to_lid ()

guint       gsf_msole_codepage_to_lid       (int codepage);

codepage :
Returns :

gsf_msole_lid_to_codepage ()

int         gsf_msole_lid_to_codepage       (guint lid);

lid :
Returns : our best guess at the codepage for the given language id

gsf_msole_lid_to_codepage_str ()

gchar*      gsf_msole_lid_to_codepage_str   (guint lid);

lid :
Returns : the Iconv codepage string for the given LID. Return value must be g_free()'d

gsf_msole_lid_for_language ()

guint       gsf_msole_lid_for_language      (char const *lang);

lang :
Returns : the LID (Language Identifier) for the input language. If lang is null, return 0x0400 ("-none-"), and not 0x0000 ("no proofing")

gsf_msole_language_for_lid ()

charconst * gsf_msole_language_for_lid      (guint lid);

lid :
Returns : the xx_YY style string (can be just xx or xxx) for the given LID. Return value must not be freed. If the LID is not found, is set to 0x0400, or is set to 0x0000, will return "-none-"

gsf_msole_inflate ()

GByteArray* gsf_msole_inflate               (GsfInput *input,
                                             gsf_off_t offset);

Decompresses an LZ compressed stream.

input : stream to read from
offset : offset into it for start byte of compresse stream
Returns : A GByteArray that the caller is responsible for freeing
libgsf-1.13.99/doc/html/gsf-Outfile-writing-structed-files.html0000644000076500017500000002367110401600622021271 00000000000000 Outfile writing structed files

Outfile writing structed files

Outfile writing structed files —

Synopsis




            GsfOutfile;
GsfOutput*  gsf_outfile_new_child           (GsfOutfile *outfile,
                                             char const *name,
                                             gboolean is_dir);
GsfOutput*  gsf_outfile_new_child_full      (GsfOutfile *outfile,
                                             char const *name,
                                             gboolean is_dir,
                                             char const *first_property_name,
                                             ...);
GsfOutput*  gsf_outfile_new_child_varg      (GsfOutfile *outfile,
                                             char const *name,
                                             gboolean is_dir,
                                             char const *first_property_name,
                                             va_list args);

Object Hierarchy


  GObject
   +----GsfOutput
         +----GsfOutfile
               +----GsfOutfileMSOle
               +----GsfOutfileStdio
               +----GsfOutfileZip

Description

Details

GsfOutfile

typedef struct _GsfOutfile GsfOutfile;


gsf_outfile_new_child ()

GsfOutput*  gsf_outfile_new_child           (GsfOutfile *outfile,
                                             char const *name,
                                             gboolean is_dir);

outfile : A GsfOutfile
name : The name of the new child to create
is_dir : TRUE to create a directory, FALSE to create a plain file
Returns : a newly created child

gsf_outfile_new_child_full ()

GsfOutput*  gsf_outfile_new_child_full      (GsfOutfile *outfile,
                                             char const *name,
                                             gboolean is_dir,
                                             char const *first_property_name,
                                             ...);

outfile : A GsfOutfile
name : The name of the new child to create
is_dir : TRUE to create a directory, FALSE to create a plain file
first_property_name :
... :
Returns : a newly created child

gsf_outfile_new_child_varg ()

GsfOutput*  gsf_outfile_new_child_varg      (GsfOutfile *outfile,
                                             char const *name,
                                             gboolean is_dir,
                                             char const *first_property_name,
                                             va_list args);

outfile :
name :
is_dir :
first_property_name :
args :
Returns :
libgsf-1.13.99/doc/html/gsf-Output-to-unstructured-files.html0000644000076500017500000007063410401600622021034 00000000000000 Output to unstructured files

Output to unstructured files

Output to unstructured files —

Synopsis




            GsfOutput;
GsfOutfile* gsf_output_container            (GsfOutput const *output);
gsf_off_t   gsf_output_size                 (GsfOutput *output);
gboolean    gsf_output_close                (GsfOutput *output);
gsf_off_t   gsf_output_tell                 (GsfOutput *output);
gboolean    gsf_output_seek                 (GsfOutput *output,
                                             gsf_off_t offset,
                                             GSeekType whence);
gboolean    gsf_output_write                (GsfOutput *output,
                                             size_t num_bytes,
                                             guint8 const *data);
gboolean    gsf_output_puts                 (GsfOutput *output,
                                             char const *line);
gboolean    gsf_output_printf               (GsfOutput *output,
                                             char const *format,
                                             ...);
gsf_off_t   gsf_output_vprintf              (GsfOutput *output,
                                             char const *format,
                                             va_list args);
charconst   * gsf_output_name               (GsfOutput const *output);
gboolean    gsf_output_set_name_from_filename
                                            (GsfOutput *output,
                                             char const *filename);
GQuark      gsf_output_error_id             (void);
gboolean    gsf_output_set_error            (GsfOutput *output,
                                             gint code,
                                             char const *format,
                                             ...);
GErrorconst * gsf_output_error              (GsfOutput const *output);
gboolean    gsf_output_is_closed            (GsfOutput const *output);
gboolean    gsf_output_wrap                 (GObject *wrapper,
                                             GsfOutput *wrapee);
gboolean    gsf_output_unwrap               (GObject *wrapper,
                                             GsfOutput *wrapee);


Object Hierarchy


  GObject
   +----GsfOutput
         +----GsfOutfile
         +----GsfOutputBzip
         +----GsfOutputCsv
         +----GsfOutputGZip
         +----GsfOutputIconv
         +----GsfOutputIOChannel
         +----GsfOutputMemory
         +----GsfOutputStdio

Properties


  "is-closed"            gboolean              : Read
  "name"                 gchararray            : Read
  "position"             gint64                : Read
  "size"                 gint64                : Read

Description

Details

GsfOutput

typedef struct _GsfOutput GsfOutput;


gsf_output_container ()

GsfOutfile* gsf_output_container            (GsfOutput const *output);

output :
Returns : , but does not add a reference to output's container. Potentially NULL

gsf_output_size ()

gsf_off_t   gsf_output_size                 (GsfOutput *output);

Determine the size of the output stream output.

output : GsfOutput
Returns : the size of the output, or -1 if it does not have a size.

gsf_output_close ()

gboolean    gsf_output_close                (GsfOutput *output);

Close a stream.

output :
Returns : FALSE on error

gsf_output_tell ()

gsf_off_t   gsf_output_tell                 (GsfOutput *output);

Tell the current position in output, similar to ftell(3).

output : GsfOutput
Returns : : the current position in the file

gsf_output_seek ()

gboolean    gsf_output_seek                 (GsfOutput *output,
                                             gsf_off_t offset,
                                             GSeekType whence);

Reposition in output stream output. whence specifies what the offset is relative to: the beginning of the stream (G_SEEK_SET), current position in the stream (G_SEEK_CUR) or the end of the stream (G_SEEK_END). This function is similar to fseek(3).

output : GsfOutput
offset : Relative amount to reposition
whence : What the offset is relative to.
Returns : FALSE on error.

gsf_output_write ()

gboolean    gsf_output_write                (GsfOutput *output,
                                             size_t num_bytes,
                                             guint8 const *data);

Write num_bytes of data to output.

output : Output stream
num_bytes : Number of bytes to write
data : Data to write.
Returns : : FALSE on error.

gsf_output_puts ()

gboolean    gsf_output_puts                 (GsfOutput *output,
                                             char const *line);

Like fputs, this assumes that the line already ends with a newline

output : A GsfOutput
line : null terminated string to write
Returns : TRUE if successful, FALSE if not

gsf_output_printf ()

gboolean    gsf_output_printf               (GsfOutput *output,
                                             char const *format,
                                             ...);

Output Varargs to output using the format string format, similar to printf(3).

output : A GsfOutput
format : The printf-style format string
... : the arguments for format
Returns : : TRUE if successful, FALSE if not

gsf_output_vprintf ()

gsf_off_t   gsf_output_vprintf              (GsfOutput *output,
                                             char const *format,
                                             va_list args);

Output args to output using the format string format, similar to vprintf(3).

output : A GsfOutput
format : The printf-style format string
args : the arguments for format
Returns : : number of bytes printed, a negative value if not successful

gsf_output_name ()

charconst   * gsf_output_name               (GsfOutput const *output);

Give the name of output.

output : GsfOutput
Returns : : output's name in utf8 form, DO NOT FREE THIS STRING

gsf_output_set_name_from_filename ()

gboolean    gsf_output_set_name_from_filename
                                            (GsfOutput *output,
                                             char const *filename);

Note

This is a utility routine that should only be used by derived outputs.

output : the output stream
filename : the (fs-sys encoded) filename
Returns : TRUE if the assignment was ok.

gsf_output_error_id ()

GQuark      gsf_output_error_id             (void);

Returns :

gsf_output_set_error ()

gboolean    gsf_output_set_error            (GsfOutput *output,
                                             gint code,
                                             char const *format,
                                             ...);

Note

This is a utility routine that should only be used by derived outputs.

output :
code :
format :
... :
Returns : Always returns FALSE to facilitate its use.

gsf_output_error ()

GErrorconst * gsf_output_error              (GsfOutput const *output);

output :
Returns : the last error logged on the output, or NULL.

gsf_output_is_closed ()

gboolean    gsf_output_is_closed            (GsfOutput const *output);

output :
Returns : TRUE if output has already been closed.

gsf_output_wrap ()

gboolean    gsf_output_wrap                 (GObject *wrapper,
                                             GsfOutput *wrapee);

wrapper :
wrapee :
Returns : TRUE if the wrapping succeeded.

gsf_output_unwrap ()

gboolean    gsf_output_unwrap               (GObject *wrapper,
                                             GsfOutput *wrapee);

wrapper :
wrapee :
Returns : TRUE if the unwrapping succeeded.

Property Details

The "is-closed" property

  "is-closed"            gboolean              : Read

Whether the Output is Closed.

Default value: FALSE


The "name" property

  "name"                 gchararray            : Read

The Output's Name.

Default value: NULL


The "position" property

  "position"             gint64                : Read

The Output's Current Position.

Allowed values: >= 0

Default value: 0


The "size" property

  "size"                 gint64                : Read

The Output's Size.

Allowed values: >= 0

Default value: 0

libgsf-1.13.99/doc/html/gsf-Reading-and-Writing-from-local-files-and-directories.html0000644000076500017500000005204410401600622025177 00000000000000 Reading and Writing from local files and directories

Reading and Writing from local files and directories

Reading and Writing from local files and directories —

Synopsis




            GsfInputStdio;
GsfInput*   gsf_input_stdio_new             (char const *filename,
                                             GError **err);
GsfInput*   gsf_input_stdio_new_FILE        (char const *filename,
                                             FILE *file,
                                             gboolean keep_open);
            GsfOutputStdio;
GsfOutput*  gsf_output_stdio_new            (char const *filename,
                                             GError **err);
GsfOutput*  gsf_output_stdio_new_full       (char const *filename,
                                             GError **err,
                                             char const *first_property_name,
                                             ...);
GsfOutput*  gsf_output_stdio_new_valist     (char const *filename,
                                             GError **err,
                                             char const *first_property_name,
                                             va_list var_args);
GsfOutput*  gsf_output_stdio_new_FILE       (char const *filename,
                                             FILE *file,
                                             gboolean keep_open);
            GsfOutfileStdio;
GsfOutfile* gsf_outfile_stdio_new           (char const *root,
                                             GError **err);
GsfOutfile* gsf_outfile_stdio_new_full      (char const *root,
                                             GError **err,
                                             char const *first_property_name,
                                             ...);
GsfOutfile* gsf_outfile_stdio_new_valist    (char const *root,
                                             GError **err,
                                             char const *first_property_name,
                                             va_list var_args);
            GsfInfileStdio;
GsfInfile*  gsf_infile_stdio_new            (char const *root,
                                             GError **err);


Object Hierarchy


  GObject
   +----GsfInput
         +----GsfInputStdio

  GObject
   +----GsfOutput
         +----GsfOutputStdio

  GObject
   +----GsfOutput
         +----GsfOutfile
               +----GsfOutfileStdio

  GObject
   +----GsfInput
         +----GsfInfile
               +----GsfInfileStdio

Description

Details

GsfInputStdio

typedef struct _GsfInputStdio GsfInputStdio;


gsf_input_stdio_new ()

GsfInput*   gsf_input_stdio_new             (char const *filename,
                                             GError **err);

filename : in utf8.
err : optionally NULL.
Returns : a new file or NULL.

gsf_input_stdio_new_FILE ()

GsfInput*   gsf_input_stdio_new_FILE        (char const *filename,
                                             FILE *file,
                                             gboolean keep_open);

Assumes ownership of file. If keep_open is true, ownership reverts to caller when the GsfObject is closed.

filename : The filename corresponding to file.
file : an existing stdio FILE *
keep_open : Should file be closed when the wrapper is closed
Returns : a new GsfInput wrapper for file. Note: the file must be seekable, so this will not work for stdin when that is a tty or pipe.

GsfOutputStdio

typedef struct _GsfOutputStdio GsfOutputStdio;


gsf_output_stdio_new ()

GsfOutput*  gsf_output_stdio_new            (char const *filename,
                                             GError **err);

filename : name of file to create or replace.
err : optionally NULL.
Returns : a new file or NULL.

gsf_output_stdio_new_full ()

GsfOutput*  gsf_output_stdio_new_full       (char const *filename,
                                             GError **err,
                                             char const *first_property_name,
                                             ...);

filename : name of file to create or replace.
err : optionally NULL.
first_property_name : NULL terminated list of properties
... :
Returns : a new file or NULL.

gsf_output_stdio_new_valist ()

GsfOutput*  gsf_output_stdio_new_valist     (char const *filename,
                                             GError **err,
                                             char const *first_property_name,
                                             va_list var_args);

filename :
err :
first_property_name :
var_args :
Returns :

gsf_output_stdio_new_FILE ()

GsfOutput*  gsf_output_stdio_new_FILE       (char const *filename,
                                             FILE *file,
                                             gboolean keep_open);

Assumes ownership of file. If keep_open is true, ownership reverts to caller when the GsfObject is closed.

filename : The filename corresponding to file.
file : an existing stdio FILE *
keep_open : Should file be closed when the wrapper is closed
Returns : a new GsfOutput wrapper for file. Warning: the result will be seekable only if file is seekable. If it is seekable, the resulting GsfOutput object will seek relative to file's beginning, not its current location at the time the GsfOutput object is created.

GsfOutfileStdio

typedef struct _GsfOutfileStdio GsfOutfileStdio;


gsf_outfile_stdio_new ()

GsfOutfile* gsf_outfile_stdio_new           (char const *root,
                                             GError **err);

root : root directory in utf8.
err : optionally NULL.
Returns : a new outfile or NULL.

gsf_outfile_stdio_new_full ()

GsfOutfile* gsf_outfile_stdio_new_full      (char const *root,
                                             GError **err,
                                             char const *first_property_name,
                                             ...);

root :
err :
first_property_name :
... :
Returns :

gsf_outfile_stdio_new_valist ()

GsfOutfile* gsf_outfile_stdio_new_valist    (char const *root,
                                             GError **err,
                                             char const *first_property_name,
                                             va_list var_args);

root :
err :
first_property_name :
var_args :
Returns :

GsfInfileStdio

typedef struct _GsfInfileStdio GsfInfileStdio;


gsf_infile_stdio_new ()

GsfInfile*  gsf_infile_stdio_new            (char const *root,
                                             GError **err);

root : in locale dependent encoding
err : optionally NULL.
Returns : a new file or NULL.
libgsf-1.13.99/doc/html/gsf-Structured-Blobs.html0000644000076500017500000001433710401600622016450 00000000000000 Structured Blobs

Structured Blobs

Structured Blobs —

Object Hierarchy


  GObject
   +----GsfInput
         +----GsfInfile
               +----GsfStructuredBlob

Description

Details

GsfStructuredBlob

typedef struct _GsfStructuredBlob GsfStructuredBlob;


gsf_structured_blob_write ()

gboolean    gsf_structured_blob_write       (GsfStructuredBlob *blob,
                                             GsfOutfile *container);

Dumps structured blob blob onto the container. Will fail if the output is not an Outfile and blob has multiple streams.

blob :
container :
Returns : TRUE on success.

gsf_structured_blob_read ()

GsfStructuredBlob* gsf_structured_blob_read (GsfInput *input);

input : An input (potentially a GsfInfile) holding the blob
Returns : a freshly created tree of blobs
libgsf-1.13.99/doc/html/gsf-Text.html0000644000076500017500000004321610401600622014167 00000000000000 Text

Text

Text —

Synopsis




            GsfInputTextline;
GsfInput*   gsf_input_textline_new          (GsfInput *source);
unsigned char* gsf_input_textline_ascii_gets
                                            (GsfInputTextline *textline);
guint8*     gsf_input_textline_utf8_gets    (GsfInputTextline *textline);
            GsfOutputIconv;
GsfOutput*  gsf_output_iconv_new            (GsfOutput *sink,
                                             char const *dst,
                                             char const *src);
            GsfOutputCsv;
gboolean    gsf_output_csv_write_eol        (GsfOutputCsv *csv);
gboolean    gsf_output_csv_write_field      (GsfOutputCsv *csv,
                                             char const *field,
                                             size_t len);
enum        GsfOutputCsvQuotingMode;

Object Hierarchy


  GObject
   +----GsfInput
         +----GsfInputTextline

  GObject
   +----GsfOutput
         +----GsfOutputIconv

  GObject
   +----GsfOutput
         +----GsfOutputCsv

Properties


  "fallback"             gchararray            : Read / Write
  "input-charset"        gchararray            : Read / Write / Construct Only
  "output-charset"       gchararray            : Read / Write / Construct Only
  "sink"                 GsfOutput             : Read / Write / Construct Only
  "eol"                  gchararray            : Read / Write / Construct
  "quote"                gchararray            : Read / Write / Construct
  "quoting-mode"         GsfOutputCsvQuotingMode  : Read / Write / Construct
  "quoting-triggers"     gchararray            : Read / Write
  "separator"            gchararray            : Read / Write / Construct
  "sink"                 GsfOutput             : Read / Write

Description

Details

GsfInputTextline

typedef struct _GsfInputTextline GsfInputTextline;


gsf_input_textline_new ()

GsfInput*   gsf_input_textline_new          (GsfInput *source);

Note

This adds a reference to source.

source : in some combination of ascii and utf8
Returns : a new file or NULL.

gsf_input_textline_ascii_gets ()

unsigned char* gsf_input_textline_ascii_gets
                                            (GsfInputTextline *textline);

A utility routine to read things line by line from the underlying source. Trailing newlines and carriage returns are stripped, and the resultant buffer can be edited.

textline : GsfInputTextline
Returns : : the string read, or NULL on eof.

gsf_input_textline_utf8_gets ()

guint8*     gsf_input_textline_utf8_gets    (GsfInputTextline *textline);

A utility routine to read things line by line from the underlying source. Trailing newlines and carriage returns are stripped, and the resultant buffer can be edited.

textline : GsfInputTextline
Returns : the string read, or NULL on eof.

GsfOutputIconv

typedef struct _GsfOutputIconv GsfOutputIconv;


gsf_output_iconv_new ()

GsfOutput*  gsf_output_iconv_new            (GsfOutput *sink,
                                             char const *dst,
                                             char const *src);

Adds a reference to sink.

sink : The underlying data source.
dst : The target character set.
src : The source character set.
Returns : a new GsfOutput object or NULL.

GsfOutputCsv

typedef struct _GsfOutputCsv GsfOutputCsv;


gsf_output_csv_write_eol ()

gboolean    gsf_output_csv_write_eol        (GsfOutputCsv *csv);

csv :
Returns :

gsf_output_csv_write_field ()

gboolean    gsf_output_csv_write_field      (GsfOutputCsv *csv,
                                             char const *field,
                                             size_t len);

csv :
field :
len :
Returns :

enum GsfOutputCsvQuotingMode

typedef enum {
	GSF_OUTPUT_CSV_QUOTING_MODE_NEVER,
	GSF_OUTPUT_CSV_QUOTING_MODE_AUTO,
	GSF_OUTPUT_CSV_QUOTING_MODE_ALWAYS
} GsfOutputCsvQuotingMode;

Property Details

The "fallback" property

  "fallback"             gchararray            : Read / Write

Either NULL or a UTF-8 string (representable in the target encoding) to convert and output in place of characters that cannot be represented in the target encoding. NULL means use \u1234 or \U12345678 format.

Default value: NULL


The "input-charset" property

  "input-charset"        gchararray            : Read / Write / Construct Only

The character set to convert from.

Default value: "UTF-8"


The "output-charset" property

  "output-charset"       gchararray            : Read / Write / Construct Only

The character set to convert to.

Default value: "UTF-8"


The "sink" property

  "sink"                 GsfOutput             : Read / Write / Construct Only

Where the converted data is written.


The "eol" property

  "eol"                  gchararray            : Read / Write / Construct

The end-of-line marker.

Default value: "\n"


The "quote" property

  "quote"                gchararray            : Read / Write / Construct

The string used for quoting fields.

Default value: "\""


The "quoting-mode" property

  "quoting-mode"         GsfOutputCsvQuotingMode  : Read / Write / Construct

When to quote fields.

Default value: GSF_OUTPUT_CSV_QUOTING_MODE_NEVER


The "quoting-triggers" property

  "quoting-triggers"     gchararray            : Read / Write

Characters that cause field quoting.

Default value: NULL


The "separator" property

  "separator"            gchararray            : Read / Write / Construct

The field separator.

Default value: ","


The "sink" property

  "sink"                 GsfOutput             : Read / Write

Where the compressed data is written.

libgsf-1.13.99/doc/html/gsf-XML-and-libxml.html0000644000076500017500000015311110401600622015724 00000000000000 XML and libxml

XML and libxml

XML and libxml —

Synopsis





            GsfXMLIn;
            GsfXMLInDoc;
gboolean    (*GsfXMLInUnknownFunc)          (GsfXMLIn *xin,
                                             xmlChar const *elem,
                                             xmlChar const **attrs);
            GsfXMLInNS;
            GsfXMLInNode;
void        (*GsfXMLInExtDtor)              (GsfXMLIn *xin,
                                             gpointer old_state);
enum        GsfXMLContent;
            GsfXMLBlob;
#define     GSF_XML_IN_NODE_FULL            (parent_id, id, ns, name, has_content, 	\
			     share_children_with_parent, check_ns, start, end, user)
#define     GSF_XML_IN_NODE                 (parent_id, id, ns, name, has_content, start, end)
#define     GSF_XML_IN_NODE_END
#define     GSF_XML_IN_NS                   (id, uri)
GsfXMLInDoc* gsf_xml_in_doc_new             (GsfXMLInNode const *nodes,
                                             GsfXMLInNS const *ns);
void        gsf_xml_in_doc_free             (GsfXMLInDoc *doc);
gboolean    gsf_xml_in_doc_parse            (GsfXMLInDoc *doc,
                                             GsfInput *input,
                                             gpointer user_state);
void        gsf_xml_in_doc_set_unknown_handler
                                            (GsfXMLInDoc *doc,
                                             GsfXMLInUnknownFunc handler);
void        gsf_xml_in_push_state           (GsfXMLIn *xin,
                                             GsfXMLInDoc const *doc,
                                             gpointer new_state,
                                             GsfXMLInExtDtor dtor,
                                             xmlChar const **attrs);
gboolean    gsf_xml_in_namecmp              (GsfXMLIn const *xin,
                                             char const *str,
                                             unsigned int ns_id,
                                             char const *name);
charconst  * gsf_xml_in_check_ns            (GsfXMLIn const *xin,
                                             char const *str,
                                             unsigned int ns_id);

            GsfXMLOut;
GsfXMLOut*  gsf_xml_out_new                 (GsfOutput *output);
void        gsf_xml_out_set_doc_type        (GsfXMLOut *xml,
                                             char const *type);
void        gsf_xml_out_start_element       (GsfXMLOut *xml,
                                             char const *id);
charconst * gsf_xml_out_end_element         (GsfXMLOut *xml);
void        gsf_xml_out_add_cstr            (GsfXMLOut *xml,
                                             char const *id,
                                             char const *val_utf8);
void        gsf_xml_out_add_cstr_unchecked  (GsfXMLOut *xml,
                                             char const *id,
                                             char const *val_utf8);
void        gsf_xml_out_add_bool            (GsfXMLOut *xml,
                                             char const *id,
                                             gboolean val);
void        gsf_xml_out_add_int             (GsfXMLOut *xml,
                                             char const *id,
                                             int val);
void        gsf_xml_out_add_uint            (GsfXMLOut *xml,
                                             char const *id,
                                             unsigned int val);
void        gsf_xml_out_add_float           (GsfXMLOut *xml,
                                             char const *id,
                                             double val,
                                             int precision);
void        gsf_xml_out_add_enum            (GsfXMLOut *xml,
                                             char const *id,
                                             GType etype,
                                             gint val);
void        gsf_xml_out_add_color           (GsfXMLOut *xml,
                                             char const *id,
                                             unsigned int r,
                                             unsigned int g,
                                             unsigned int b);
void        gsf_xml_out_add_base64          (GsfXMLOut *xml,
                                             char const *id,
                                             guint8 const *data,
                                             unsigned int len);
void        gsf_xml_out_add_gvalue          (GsfXMLOut *xml,
                                             char const *id,
                                             GValue const *val);
void        gsf_xml_out_simple_element      (GsfXMLOut *xml,
                                             char const *id,
                                             char const *content);
void        gsf_xml_out_simple_float_element
                                            (GsfXMLOut *xml,
                                             char const *id,
                                             double val,
                                             int precision);
void        gsf_xml_out_simple_int_element  (GsfXMLOut *xml,
                                             char const *id,
                                             int val);

xmlParserCtxt* gsf_xml_parser_context       (GsfInput *input);
gboolean    gsf_xml_gvalue_from_str         (GValue *res,
                                             GType t,
                                             char const *str);
int         gsf_xmlDocFormatDump            (GsfOutput *output,
                                             xmlDoc *cur,
                                             char const *encoding,
                                             gboolean format);

Object Hierarchy


  GObject
   +----GsfXMLOut

Description

Details

GsfXMLIn

typedef struct {
	/* public state : read only */
	gpointer	    user_state;
	GString		   *content;
	GsfXMLInDoc  const *doc;
	GsfXMLInNode const *node;	/* current node (not on the stack) */
	GSList	 	   *node_stack;	/* stack of GsfXMLInNode */
} GsfXMLIn;


GsfXMLInDoc

typedef struct _GsfXMLInDoc GsfXMLInDoc;


GsfXMLInUnknownFunc ()

gboolean    (*GsfXMLInUnknownFunc)          (GsfXMLIn *xin,
                                             xmlChar const *elem,
                                             xmlChar const **attrs);

xin :
elem :
attrs :
Returns :

GsfXMLInNS

typedef struct {
	char const *uri;
	unsigned    ns_id;
} GsfXMLInNS;


GsfXMLInNode

typedef struct {
	char const *id;		/* unique in the entire tree */
	int	    ns_id;
	char const *name;
	char const *parent_id;
	void (*start) (GsfXMLIn *xin, xmlChar const **attrs);
	void (*end)   (GsfXMLIn *xin, GsfXMLBlob *unknown);

	union {
		int	    v_int;
		gboolean    v_bool;
		gpointer    v_blob;
		char const *v_str;
	} user_data;
	GsfXMLContent has_content;

	unsigned int check_children_for_ns : 1;
	unsigned int share_children_with_parent : 1;
} GsfXMLInNode;


GsfXMLInExtDtor ()

void        (*GsfXMLInExtDtor)              (GsfXMLIn *xin,
                                             gpointer old_state);

xin :
old_state :

enum GsfXMLContent

typedef enum {
	GSF_XML_NO_CONTENT = FALSE,
	GSF_XML_CONTENT,
	GSF_XML_SHARED_CONTENT
} GsfXMLContent;


GsfXMLBlob

typedef struct _GsfXMLBlob GsfXMLBlob;


GSF_XML_IN_NODE_FULL()

#define     GSF_XML_IN_NODE_FULL(parent_id, id, ns, name, has_content, 	\
			     share_children_with_parent, check_ns, start, end, user)

parent_id :
id :
ns :
name :
has_content : @\ share_children_with_parent:
share_children_with_parent :
check_ns :
start :
end :
user :

GSF_XML_IN_NODE()

#define     GSF_XML_IN_NODE(parent_id, id, ns, name, has_content, start, end)

parent_id :
id :
ns :
name :
has_content :
start :
end :

GSF_XML_IN_NODE_END

#define     GSF_XML_IN_NODE_END


GSF_XML_IN_NS()

#define     GSF_XML_IN_NS(id, uri)

id :
uri :

gsf_xml_in_doc_new ()

GsfXMLInDoc* gsf_xml_in_doc_new             (GsfXMLInNode const *nodes,
                                             GsfXMLInNS const *ns);

Combine the nodes in the NULL terminated array starting at nodes with the name spaces in the NULL terminated array starting at ns. Prepare the data structures necessary to validate a doument based on that description.

nodes : an array of node descriptors
ns : an array of namespace identifiers
Returns : NULL on error

gsf_xml_in_doc_free ()

void        gsf_xml_in_doc_free             (GsfXMLInDoc *doc);

Free up resources

doc :

gsf_xml_in_doc_parse ()

gboolean    gsf_xml_in_doc_parse            (GsfXMLInDoc *doc,
                                             GsfInput *input,
                                             gpointer user_state);

Read an xml document from input and parse based on the the descriptor in doc

doc :
input :
user_state :
Returns : FALSE on error

gsf_xml_in_doc_set_unknown_handler ()

void        gsf_xml_in_doc_set_unknown_handler
                                            (GsfXMLInDoc *doc,
                                             GsfXMLInUnknownFunc handler);

Call the function handler when an unexpected child node is found

doc : GsfXMLInDoc
handler : The function to call

gsf_xml_in_push_state ()

void        gsf_xml_in_push_state           (GsfXMLIn *xin,
                                             GsfXMLInDoc const *doc,
                                             gpointer new_state,
                                             GsfXMLInExtDtor dtor,
                                             xmlChar const **attrs);

Take the first node from doc as the current node and call it's start handler.

xin : GsfXMLIn
doc : GsfXMLInDoc
new_state :
dtor : GsfXMLInExtDtor
attrs :

gsf_xml_in_namecmp ()

gboolean    gsf_xml_in_namecmp              (GsfXMLIn const *xin,
                                             char const *str,
                                             unsigned int ns_id,
                                             char const *name);

xin : The GsfXMLIn we are reading from.
str : The potentially namespace qualified node name.
ns_id : The name space id to check
name : The target node name
Returns : TRUE if str == ns_id:name according to state.

gsf_xml_in_check_ns ()

charconst  * gsf_xml_in_check_ns            (GsfXMLIn const *xin,
                                             char const *str,
                                             unsigned int ns_id);

According to state is str in the namespace ns_id ?

xin :
str :
ns_id :
Returns : a pointer to str after the namespace if successful, otherwise NULL.

GsfXMLOut

typedef struct _GsfXMLOut GsfXMLOut;


gsf_xml_out_new ()

GsfXMLOut*  gsf_xml_out_new                 (GsfOutput *output);

Create an XML output stream.

output : GsfOutput
Returns : GsfXMLOut

gsf_xml_out_set_doc_type ()

void        gsf_xml_out_set_doc_type        (GsfXMLOut *xml,
                                             char const *type);

Store some optional some <!DOCTYPE .. > content

xml : GsfXMLOut
type : the document type declaration

gsf_xml_out_start_element ()

void        gsf_xml_out_start_element       (GsfXMLOut *xml,
                                             char const *id);

Output a start element id, if necessary preceeded by an XML declaration.

xml : GsfXMLOut
id : Element name

gsf_xml_out_end_element ()

charconst * gsf_xml_out_end_element         (GsfXMLOut *xml);

Closes/ends an XML element.

xml : GsfXMLOut
Returns : the element that has been closed.

gsf_xml_out_add_cstr ()

void        gsf_xml_out_add_cstr            (GsfXMLOut *xml,
                                             char const *id,
                                             char const *val_utf8);

dump val_utf8 to an attribute named id or as the nodes content escaping characters as necessary. If val_utf8 is NULL do nothing (no warning, no output)

xml : GsfXMLOut
id : optionally NULL for content
val_utf8 : a utf8 encoded string

gsf_xml_out_add_cstr_unchecked ()

void        gsf_xml_out_add_cstr_unchecked  (GsfXMLOut *xml,
                                             char const *id,
                                             char const *val_utf8);

dump val_utf8 to an attribute named id without checking to see if the content needs escaping. A useful performance enhancement when the application knows that structure of the content well. If val_utf8 is NULL do nothing (no warning, no output)

xml : GsfXMLOut
id : optionally NULL for content
val_utf8 : a utf8 encoded string to export

gsf_xml_out_add_bool ()

void        gsf_xml_out_add_bool            (GsfXMLOut *xml,
                                             char const *id,
                                             gboolean val);

dump boolean value val to an attribute named id or as the nodes content Use '1' or '0' to simplify import

xml : GsfXMLOut
id : optionally NULL for content
val : a boolean

gsf_xml_out_add_int ()

void        gsf_xml_out_add_int             (GsfXMLOut *xml,
                                             char const *id,
                                             int val);

dump integer value val to an attribute named id or as the nodes content

xml : GsfXMLOut
id : optionally NULL for content
val : the value

gsf_xml_out_add_uint ()

void        gsf_xml_out_add_uint            (GsfXMLOut *xml,
                                             char const *id,
                                             unsigned int val);

dump unsigned integer value val to an attribute named id or as the nodes content

xml : GsfXMLOut
id : optionally NULL for content
val : the value

gsf_xml_out_add_float ()

void        gsf_xml_out_add_float           (GsfXMLOut *xml,
                                             char const *id,
                                             double val,
                                             int precision);

dump float value val to an attribute named id or as the nodes content with precision precision. The number will be formattted according to the "C" locale.

xml : GsfXMLOut
id : optionally NULL for content
val : the value
precision : the number of significant digits to use, -1 meaning "enough".

gsf_xml_out_add_enum ()

void        gsf_xml_out_add_enum            (GsfXMLOut *xml,
                                             char const *id,
                                             GType etype,
                                             gint val);

Output the name of value val of enumeration type etype.

xml : GsfXMLOut
id : optionally NULL for content
etype : GType
val : enum element number

gsf_xml_out_add_color ()

void        gsf_xml_out_add_color           (GsfXMLOut *xml,
                                             char const *id,
                                             unsigned int r,
                                             unsigned int g,
                                             unsigned int b);

dump Color r.g.b to an attribute named id or as the nodes content

xml : GsfXMLOut
id : optionally NULL for content
r : Red value
g : Green value
b : Blue value

gsf_xml_out_add_base64 ()

void        gsf_xml_out_add_base64          (GsfXMLOut *xml,
                                             char const *id,
                                             guint8 const *data,
                                             unsigned int len);

dump len bytes in data into the content of node id using base64

xml : GsfXMLOut
id : optionally NULL for content
data : Data to be written
len : Length of data

gsf_xml_out_add_gvalue ()

void        gsf_xml_out_add_gvalue          (GsfXMLOut *xml,
                                             char const *id,
                                             GValue const *val);

Output the value of val as a string. Does NOT store any type information with the string, just thevalue.

xml : GsfXMLOut
id : optionally NULL for content
val : GValue

gsf_xml_out_simple_element ()

void        gsf_xml_out_simple_element      (GsfXMLOut *xml,
                                             char const *id,
                                             char const *content);

Convenience routine to output a simple id element with content content.

xml : GsfXMLOut
id : Element name
content : Content of the element

gsf_xml_out_simple_float_element ()

void        gsf_xml_out_simple_float_element
                                            (GsfXMLOut *xml,
                                             char const *id,
                                             double val,
                                             int precision);

Convenience routine to output an element id with float value val using precision significant digits.

xml : GsfXMLOut
id : Element name
val : Element value
precision : the number of significant digits to use, -1 meaning "enough".

gsf_xml_out_simple_int_element ()

void        gsf_xml_out_simple_int_element  (GsfXMLOut *xml,
                                             char const *id,
                                             int val);

Convenience routine to output an element id with integer value val.

xml : GsfXMLOut
id : Element name
val : Element value

gsf_xml_parser_context ()

xmlParserCtxt* gsf_xml_parser_context       (GsfInput *input);

Create a libxml2 pull style parser context wrapper around gsf input input. This signature will probably change to supply a SAX structure.

Note

This adds a reference to input.

Note

A simple wrapper around a cleaner implementation that will fold in when we add other api changes. Its not worth bumping just for this.

input : GsfInput
Returns : : A parser context or NULL

gsf_xml_gvalue_from_str ()

gboolean    gsf_xml_gvalue_from_str         (GValue *res,
                                             GType t,
                                             char const *str);

Try to parse str as a value of type t into res.

res : Result value
t : Type of data
str : Value string
Returns : : True when parsing of str as a value of type t was succesfull; false otherwise.

gsf_xmlDocFormatDump ()

int         gsf_xmlDocFormatDump            (GsfOutput *output,
                                             xmlDoc *cur,
                                             char const *encoding,
                                             gboolean format);

output :
cur :
encoding :
format :
Returns :
libgsf-1.13.99/doc/html/gsf-Zip.html0000644000076500017500000003111310401600622013776 00000000000000 ZIP archives

ZIP archives

ZIP archives — ZIP compression and archive format

Synopsis




            GsfInfileZip;
GsfInfile*  gsf_infile_zip_new              (GsfInput *source,
                                             GError **err);
            GsfOutfileZip;
GsfOutfile* gsf_outfile_zip_new             (GsfOutput *sink,
                                             GError **err);
gboolean    gsf_outfile_zip_set_compression_method
                                            (GsfOutfileZip *zip,
                                             GsfZipCompressionMethod method);


Object Hierarchy


  GObject
   +----GsfInput
         +----GsfInfile
               +----GsfInfileZip

  GObject
   +----GsfOutput
         +----GsfOutfile
               +----GsfOutfileZip

Properties


  "compression-level"    gint                  : Read
  "internal-parent"      GsfInfileZip          : Write / Construct Only
  "source"               GsfInput              : Read / Write / Construct Only
  "compression-level"    gint                  : Read / Write / Construct Only
  "entry-name"           gchararray            : Read / Write / Construct Only
  "sink"                 GsfOutput             : Read / Write / Construct Only

Description

The ZIP file format is a file format that provides data compression and archiving. It is in widespread use on various platforms.

These routines handle ZIP archives.

Details

GsfInfileZip

typedef struct _GsfInfileZip GsfInfileZip;


gsf_infile_zip_new ()

GsfInfile*  gsf_infile_zip_new              (GsfInput *source,
                                             GError **err);

Opens the root directory of a Zip file.

Note

This adds a reference to source.

source : A base GsfInput
err : A GError, optionally null
Returns : the new zip file handler

GsfOutfileZip

typedef struct _GsfOutfileZip GsfOutfileZip;


gsf_outfile_zip_new ()

GsfOutfile* gsf_outfile_zip_new             (GsfOutput *sink,
                                             GError **err);

Creates the root directory of a Zip file and manages the addition of children.

Note

This adds a reference to sink.

sink : a GsfOutput to hold the ZIP file
err : Location to store error, or NULL; currently unused.
Returns : the new zip file handler

gsf_outfile_zip_set_compression_method ()

gboolean    gsf_outfile_zip_set_compression_method
                                            (GsfOutfileZip *zip,
                                             GsfZipCompressionMethod method);

zip :
method :
Returns :

Property Details

The "compression-level" property

  "compression-level"    gint                  : Read

The level of compression used, zero meaning none.

Allowed values: [0,10]

Default value: 0


The "internal-parent" property

  "internal-parent"      GsfInfileZip          : Write / Construct Only

Internal use only.


The "source" property

  "source"               GsfInput              : Read / Write / Construct Only

The archive being interpreted.


The "compression-level" property

  "compression-level"    gint                  : Read / Write / Construct Only

The level of compression used, zero meaning none.

Allowed values: [0,10]

Default value: 8


The "entry-name" property

  "entry-name"           gchararray            : Read / Write / Construct Only

The filename of this member in the archive without path.

Default value: NULL


The "sink" property

  "sink"                 GsfOutput             : Read / Write / Construct Only

Where the archive is written.

libgsf-1.13.99/doc/html/gsf-gsf-opendoc-utils.html0000644000076500017500000001715410401600622016607 00000000000000 gsf-opendoc-utils

gsf-opendoc-utils

gsf-opendoc-utils — OpenDocument format

Description

The OASIS Open Document Format for Office Applications or OpenDocument for short is an XML-based file format specification for office applications overseen by the OASIS standards consortium.

These routines handle the application neutral portions of the <term>OpenDocument</term> format.

Details

gsf_opendoc_metadata_read ()

GError*     gsf_opendoc_metadata_read       (GsfInput *input,
                                             GsfDocMetaData *md);

Read an OpenDocument metadata stream from input and store the properties into md. Overwrite any existing properties with the same id.

input : GsfInput
md : GsfDocMetaData
Returns : a GError if there is a problem.

gsf_opendoc_metadata_subtree ()

void        gsf_opendoc_metadata_subtree    (GsfXMLIn *doc,
                                             GsfDocMetaData *md);

Extend xin so that it can parse a subtree in OpenDoc metadata format


gsf_opendoc_metadata_write ()

gboolean    gsf_opendoc_metadata_write      (GsfXMLOut *output,
                                             GsfDocMetaData const *md);

output :
md :
Returns :
libgsf-1.13.99/doc/html/gsf-memory.html0000644000076500017500000003022210401600622014544 00000000000000 memory

memory

memory —

Synopsis




            GsfInputMemory;
GsfInput*   gsf_input_mmap_new              (char const *filename,
                                             GError **err);
GsfInput*   gsf_input_memory_new            (guint8 const *buf,
                                             gsf_off_t length,
                                             gboolean needs_free);
GsfInput*   gsf_input_memory_new_clone      (guint8 const *buf,
                                             gsf_off_t length);
GsfInput*   gsf_input_memory_new_from_iochannel
                                            (GIOChannel *channel,
                                             GError **error);
            GsfOutputMemory;
const guint8* gsf_output_memory_get_bytes   (GsfOutputMemory *mem);
GType       gsf_output_memory_get_type      (void);
GsfOutput*  gsf_output_memory_new           (void);


Object Hierarchy


  GObject
   +----GsfInput
         +----GsfInputMemory

  GObject
   +----GsfOutput
         +----GsfOutputMemory

Description

Details

GsfInputMemory

typedef struct _GsfInputMemory GsfInputMemory;


gsf_input_mmap_new ()

GsfInput*   gsf_input_mmap_new              (char const *filename,
                                             GError **err);

filename : The file on disk that you want to mmap
err : A GError, or optionally null
Returns : A new GsfInputMemory

gsf_input_memory_new ()

GsfInput*   gsf_input_memory_new            (guint8 const *buf,
                                             gsf_off_t length,
                                             gboolean needs_free);

buf : The input bytes
length : The length of buf
needs_free : Whether you want this memory to be free'd at object destruction
Returns : A new GsfInputMemory

gsf_input_memory_new_clone ()

GsfInput*   gsf_input_memory_new_clone      (guint8 const *buf,
                                             gsf_off_t length);

buf : The input bytes
length : The length of buf
Returns : A new GsfInputMemory

gsf_input_memory_new_from_iochannel ()

GsfInput*   gsf_input_memory_new_from_iochannel
                                            (GIOChannel *channel,
                                             GError **error);

channel : a GIOChannel.
error : a GError
Returns : a new GsfInputMemory or NULL.

GsfOutputMemory

typedef struct _GsfOutputMemory GsfOutputMemory;


gsf_output_memory_get_bytes ()

const guint8* gsf_output_memory_get_bytes   (GsfOutputMemory *mem);

mem : the output device.
Returns : The data that has been written to mem, or null

gsf_output_memory_get_type ()

GType       gsf_output_memory_get_type      (void);

Returns :

gsf_output_memory_new ()

GsfOutput*  gsf_output_memory_new           (void);

Returns : a new file or NULL.
libgsf-1.13.99/doc/html/gsf-metadata.html0000644000076500017500000014371610401600622015031 00000000000000 metadata

metadata

metadata — Data about documents

Synopsis




            GsfDocMetaData;
GsfDocMetaData* gsf_doc_meta_data_new       (void);
GsfDocProp* gsf_doc_meta_data_lookup        (GsfDocMetaData const *meta,
                                             char const *name);
void        gsf_doc_meta_data_insert        (GsfDocMetaData *meta,
                                             char *name,
                                             GValue *value);
void        gsf_doc_meta_data_remove        (GsfDocMetaData *meta,
                                             char const *name);
GsfDocProp* gsf_doc_meta_data_steal         (GsfDocMetaData *meta,
                                             char const *name);
void        gsf_doc_meta_data_store         (GsfDocMetaData *meta,
                                             GsfDocProp *prop);
void        gsf_doc_meta_data_foreach       (GsfDocMetaData const *meta,
                                             GHFunc func,
                                             gpointer user_data);
gsize       gsf_doc_meta_data_size          (GsfDocMetaData const *meta);
            GsfDocProp;
GsfDocProp* gsf_doc_prop_new                (char *name);
void        gsf_doc_prop_free               (GsfDocProp *prop);
charconst   * gsf_doc_prop_get_name         (GsfDocProp const *prop);
GValueconst * gsf_doc_prop_get_val          (GsfDocProp const *prop);
void        gsf_doc_prop_set_val            (GsfDocProp *prop,
                                             GValue *val);
charconst   * gsf_doc_prop_get_link         (GsfDocProp const *prop);
void        gsf_doc_prop_set_link           (GsfDocProp *prop,
                                             char *link);
            GsfDocPropVector;
GsfDocPropVector* gsf_docprop_vector_new    (void);
void        gsf_docprop_vector_append       (GsfDocPropVector *vector,
                                             GValue *value);
gchar*      gsf_docprop_vector_as_string    (GsfDocPropVector const *vector);
GValueArray* gsf_value_get_docprop_varray   (GValue const *value);
GsfDocPropVector* gsf_value_get_docprop_vector
                                            (GValue const *value);

#define     GSF_META_NAME_TITLE
#define     GSF_META_NAME_DESCRIPTION
#define     GSF_META_NAME_SUBJECT
#define     GSF_META_NAME_DATE_MODIFIED
#define     GSF_META_NAME_DATE_CREATED
#define     GSF_META_NAME_KEYWORDS
#define     GSF_META_NAME_LANGUAGE
#define     GSF_META_NAME_REVISION_COUNT
#define     GSF_META_NAME_EDITING_DURATION
#define     GSF_META_NAME_TABLE_COUNT
#define     GSF_META_NAME_IMAGE_COUNT
#define     GSF_META_NAME_OBJECT_COUNT
#define     GSF_META_NAME_PAGE_COUNT
#define     GSF_META_NAME_PARAGRAPH_COUNT
#define     GSF_META_NAME_WORD_COUNT
#define     GSF_META_NAME_CHARACTER_COUNT
#define     GSF_META_NAME_CELL_COUNT
#define     GSF_META_NAME_SPREADSHEET_COUNT
#define     GSF_META_NAME_CREATOR
#define     GSF_META_NAME_TEMPLATE
#define     GSF_META_NAME_LAST_SAVED_BY
#define     GSF_META_NAME_LAST_PRINTED
#define     GSF_META_NAME_SECURITY
#define     GSF_META_NAME_CATEGORY
#define     GSF_META_NAME_PRESENTATION_FORMAT
#define     GSF_META_NAME_THUMBNAIL
#define     GSF_META_NAME_GENERATOR
#define     GSF_META_NAME_LINE_COUNT
#define     GSF_META_NAME_SLIDE_COUNT
#define     GSF_META_NAME_NOTE_COUNT
#define     GSF_META_NAME_HIDDEN_SLIDE_COUNT
#define     GSF_META_NAME_MM_CLIP_COUNT
#define     GSF_META_NAME_BYTE_COUNT
#define     GSF_META_NAME_SCALE
#define     GSF_META_NAME_HEADING_PAIRS
#define     GSF_META_NAME_DOCUMENT_PARTS
#define     GSF_META_NAME_MANAGER
#define     GSF_META_NAME_COMPANY
#define     GSF_META_NAME_LINKS_DIRTY
#define     GSF_META_NAME_DICTIONARY
#define     GSF_META_NAME_MSOLE_UNKNOWN_17
#define     GSF_META_NAME_MSOLE_UNKNOWN_18
#define     GSF_META_NAME_MSOLE_UNKNOWN_19
#define     GSF_META_NAME_MSOLE_UNKNOWN_20
#define     GSF_META_NAME_MSOLE_UNKNOWN_21
#define     GSF_META_NAME_MSOLE_UNKNOWN_22
#define     GSF_META_NAME_MSOLE_UNKNOWN_23
#define     GSF_META_NAME_LOCALE_SYSTEM_DEFAULT
#define     GSF_META_NAME_CASE_SENSITIVE
#define     GSF_META_NAME_PRINTED_BY
#define     GSF_META_NAME_INITIAL_CREATOR

Object Hierarchy


  GObject
   +----GsfDocMetaData

  GObject
   +----GsfDocPropVector

Description

Details

GsfDocMetaData

typedef struct _GsfDocMetaData GsfDocMetaData;


gsf_doc_meta_data_new ()

GsfDocMetaData* gsf_doc_meta_data_new       (void);

Returns : a new metadata property collection

gsf_doc_meta_data_lookup ()

GsfDocProp* gsf_doc_meta_data_lookup        (GsfDocMetaData const *meta,
                                             char const *name);

meta : GsfDocMetaData
name :
Returns : the property with name id in meta. The caller can modify the property value and link but not the name.

gsf_doc_meta_data_insert ()

void        gsf_doc_meta_data_insert        (GsfDocMetaData *meta,
                                             char *name,
                                             GValue *value);

Take ownership of name and value and insert a property into meta. If a property exists with name, it is replaced (The link is lost)

meta : GsfDocMetaData
name :
value : GValue

gsf_doc_meta_data_remove ()

void        gsf_doc_meta_data_remove        (GsfDocMetaData *meta,
                                             char const *name);

If name does not exist in the collection, do nothing. If name does exist, remove it and its value from the collection

meta : the collection
name : the non-null string name of the property

gsf_doc_meta_data_steal ()

GsfDocProp* gsf_doc_meta_data_steal         (GsfDocMetaData *meta,
                                             char const *name);

meta :
name :
Returns :

gsf_doc_meta_data_store ()

void        gsf_doc_meta_data_store         (GsfDocMetaData *meta,
                                             GsfDocProp *prop);

meta : GsfDocMetaData
prop : GsfDocProp

gsf_doc_meta_data_foreach ()

void        gsf_doc_meta_data_foreach       (GsfDocMetaData const *meta,
                                             GHFunc func,
                                             gpointer user_data);

Iterate through each (key, value) pair in this collection

meta : the collection
func : the function called once for each element in the collection
user_data : any supplied user data or NULL

gsf_doc_meta_data_size ()

gsize       gsf_doc_meta_data_size          (GsfDocMetaData const *meta);

meta : the collection
Returns : the number of items in this collection

GsfDocProp

typedef struct _GsfDocProp GsfDocProp;


gsf_doc_prop_new ()

GsfDocProp* gsf_doc_prop_new                (char *name);

name :
Returns : a new GsfDocProp which the caller is responsible for freeing. Takes ownership of name.

gsf_doc_prop_free ()

void        gsf_doc_prop_free               (GsfDocProp *prop);

If prop is non NULL free the memory assosociated with it

prop : GsfDocProp

gsf_doc_prop_get_name ()

charconst   * gsf_doc_prop_get_name         (GsfDocProp const *prop);

prop : GsfDocProp
Returns : the name of the property, the caller should not modify the result.

gsf_doc_prop_get_val ()

GValueconst * gsf_doc_prop_get_val          (GsfDocProp const *prop);

prop : the property
Returns : the value of the property, the caller should not modify the result.

gsf_doc_prop_set_val ()

void        gsf_doc_prop_set_val            (GsfDocProp *prop,
                                             GValue *val);

Assigns val to prop, and unsets and frees the current value.

prop : GsfDocProp
val : GValue

gsf_doc_prop_get_link ()

charconst   * gsf_doc_prop_get_link         (GsfDocProp const *prop);

prop : GsfDocProp
Returns : the current link descriptor of prop. The result should not be freed or modified.

gsf_doc_prop_set_link ()

void        gsf_doc_prop_set_link           (GsfDocProp *prop,
                                             char *link);

prop : GsfDocProp
link :

GsfDocPropVector

typedef struct _GsfDocPropVector GsfDocPropVector;


gsf_docprop_vector_new ()

GsfDocPropVector* gsf_docprop_vector_new    (void);

This function creates a new gsf_docprop_vector object.

Returns : GsfDocPropVector*

gsf_docprop_vector_append ()

void        gsf_docprop_vector_append       (GsfDocPropVector *vector,
                                             GValue *value);

Insert a copy of value as the last element of vector.

vector : The vector to which the GValue will be added
value : The GValue to add to vector

gsf_docprop_vector_as_string ()

gchar*      gsf_docprop_vector_as_string    (GsfDocPropVector const *vector);

This function returns a string which represents all the GValues in vector. The caller is responsible for freeing the result.

vector : The GsfDocPropVector from which GValues will be extracted.
Returns : a string of comma-separated values

gsf_value_get_docprop_varray ()

GValueArray* gsf_value_get_docprop_varray   (GValue const *value);

value :
Returns :

gsf_value_get_docprop_vector ()

GsfDocPropVector* gsf_value_get_docprop_vector
                                            (GValue const *value);

value :
Returns :

GSF_META_NAME_TITLE

#define GSF_META_NAME_TITLE                 "dc:title"

(String) A formal name given to the resource.


GSF_META_NAME_DESCRIPTION

#define GSF_META_NAME_DESCRIPTION           "dc:description"

(String) An account of the content of the resource.


GSF_META_NAME_SUBJECT

#define GSF_META_NAME_SUBJECT               "dc:subject"

(String) The topic of the content of the resource, typically including keywords.


GSF_META_NAME_DATE_MODIFIED

#define GSF_META_NAME_DATE_MODIFIED         "dc:date"

(GsfTimestamp) The last time this document was saved.

1.14.0 Moved from dc:date-modified to dc:date.


GSF_META_NAME_DATE_CREATED

#define GSF_META_NAME_DATE_CREATED          "meta:creation-date"

(Date as ISO String) A date associated with an event in the life cycle of the resource (creation/publication date). Moved from gsf:date-created to meta:creation-date. This way can be used correctly by OpenDocument and Gnumeric.


GSF_META_NAME_KEYWORDS

#define GSF_META_NAME_KEYWORDS              "dc:keywords"

(GsfDocPropVector of String) Searchable, indexable keywords. Similar to PDF keywords or HTML's meta block.


GSF_META_NAME_LANGUAGE

#define GSF_META_NAME_LANGUAGE              	"dc:language"

(String) The locale language of the intellectual content of the resource (basically xx_YY form for us). 1.14.0 Clarified that this is unique from _NAME_CODEPAGE in msole


GSF_META_NAME_REVISION_COUNT

#define GSF_META_NAME_REVISION_COUNT        "meta:editing-cycles"

(Integer) Count of revision on the document, if appropriate. Moved from gsf:revision-count to meta:editing-cycles. This way can be used correctly by OpenDocument and Gnumeric.


GSF_META_NAME_EDITING_DURATION

#define GSF_META_NAME_EDITING_DURATION      "meta:editing-duration"

(Date as ISO String) The total-time taken until the last modification. Moved from "gsf" to "meta". This way can be used correctly by OpenDocument and Gnumeric.


GSF_META_NAME_TABLE_COUNT

#define GSF_META_NAME_TABLE_COUNT           "gsf:table-count"

(Integer) Count of tables in the document, if appropriate.


GSF_META_NAME_IMAGE_COUNT

#define GSF_META_NAME_IMAGE_COUNT           "gsf:image-count"

(Integer) Count of images in the document, if appropriate.


GSF_META_NAME_OBJECT_COUNT

#define GSF_META_NAME_OBJECT_COUNT          "gsf:object-count"

(Integer) Count of objects (OLE and other graphics) in the document, if appropriate.


GSF_META_NAME_PAGE_COUNT

#define GSF_META_NAME_PAGE_COUNT            "gsf:page-count"

(Integer) Count of pages in the document, if appropriate.


GSF_META_NAME_PARAGRAPH_COUNT

#define GSF_META_NAME_PARAGRAPH_COUNT       "gsf:paragraph-count"

(Integer) Count of paragraphs in the document, if appropriate.


GSF_META_NAME_WORD_COUNT

#define GSF_META_NAME_WORD_COUNT            "gsf:word-count"

(Integer) Count of words in the document.


GSF_META_NAME_CHARACTER_COUNT

#define GSF_META_NAME_CHARACTER_COUNT       "gsf:character-count"

(Integer) Count of characters in the document.

TODO See how to sync this with ODF's document-statistic


GSF_META_NAME_CELL_COUNT

#define GSF_META_NAME_CELL_COUNT            "gsf:cell-count"

(Integer) Count of cells in the spread-sheet document, if appropriate.


GSF_META_NAME_SPREADSHEET_COUNT

#define GSF_META_NAME_SPREADSHEET_COUNT     "gsf:spreadsheet-count"

(Integer) Count of pages in the document, if appropriate.


GSF_META_NAME_CREATOR

#define GSF_META_NAME_CREATOR               "dc:creator"

(String) An entity primarily responsible for making the content of the resource typically a person, organization, or service.

1.14.0 Moved from "gsf" to "dc".


GSF_META_NAME_TEMPLATE

#define GSF_META_NAME_TEMPLATE              "meta:template"

(String) The template file that is been used to generate this document. Moved from "gsf" to "meta". This way can be used correctly by OpenDocument and Gnumeric.


GSF_META_NAME_LAST_SAVED_BY

#define GSF_META_NAME_LAST_SAVED_BY         "gsf:last-saved-by"


GSF_META_NAME_LAST_PRINTED

#define GSF_META_NAME_LAST_PRINTED		"dc:last-printed"

(Date as ISO String) The last time this document was printed.

1.14.0 Moved from "gsf" to "dc".


GSF_META_NAME_SECURITY

#define GSF_META_NAME_SECURITY			"gsf:security"

(Integer) Level of security.

Level Value
None 0
Password protected 1
Read-only recommended 2
Read-only enforced 3
Locked for annotations 4


GSF_META_NAME_CATEGORY

#define GSF_META_NAME_CATEGORY			"gsf:category"

(String) Category of the document.

Note

example???


GSF_META_NAME_PRESENTATION_FORMAT

#define GSF_META_NAME_PRESENTATION_FORMAT	"gsf:presentation-format"

(String) Type of presentation, like "On-screen Show", "SlideView" etc.


GSF_META_NAME_THUMBNAIL

#define GSF_META_NAME_THUMBNAIL			"gsf:thumbnail"

(Clipboard Format (VT_CF)) Thumbnail data of the document, typically a preview image of the document.


GSF_META_NAME_GENERATOR

#define GSF_META_NAME_GENERATOR			"meta:generator"

(String) The creator (product) of this document. AbiWord, Gnumeric, etc... Moved from "gsf" to "meta". This way can be used correctly by OpenDocument and Gnumeric.


GSF_META_NAME_LINE_COUNT

#define GSF_META_NAME_LINE_COUNT		"gsf:line-count"

(Integer) Count of liness in the document.


GSF_META_NAME_SLIDE_COUNT

#define GSF_META_NAME_SLIDE_COUNT		"gsf:slide-count"

(Integer) Count of slides in the presentation document.


GSF_META_NAME_NOTE_COUNT

#define GSF_META_NAME_NOTE_COUNT		"gsf:note-count"

(Integer) Count of "notes" in the document.


GSF_META_NAME_HIDDEN_SLIDE_COUNT

#define GSF_META_NAME_HIDDEN_SLIDE_COUNT	"gsf:hidden-slide-count"

(Integer) Count of hidden-slides in the presentation document.


GSF_META_NAME_MM_CLIP_COUNT

#define GSF_META_NAME_MM_CLIP_COUNT		"gsf:MM-clip-count"

(Integer) Count of "multi-media" clips in the document.


GSF_META_NAME_BYTE_COUNT

#define GSF_META_NAME_BYTE_COUNT		"gsf:byte-count"

(Integer) Count of bytes in the document.


GSF_META_NAME_SCALE

#define GSF_META_NAME_SCALE			"gsf:scale"


GSF_META_NAME_HEADING_PAIRS

#define GSF_META_NAME_HEADING_PAIRS		"gsf:heading-pairs"


GSF_META_NAME_DOCUMENT_PARTS

#define GSF_META_NAME_DOCUMENT_PARTS		"gsf:document-parts"


GSF_META_NAME_MANAGER

#define GSF_META_NAME_MANAGER			"gsf:manager"

(String) Name of the manager of "CREATOR" entity.


GSF_META_NAME_COMPANY

#define GSF_META_NAME_COMPANY			"gsf:company"

(String) Name of the company/organization that the "CREATOR" entity is associated with.


GSF_META_NAME_LINKS_DIRTY

#define GSF_META_NAME_LINKS_DIRTY		"gsf:links-dirty"


GSF_META_NAME_DICTIONARY

#define GSF_META_NAME_DICTIONARY            "gsf:dictionary"


GSF_META_NAME_MSOLE_UNKNOWN_17

#define GSF_META_NAME_MSOLE_UNKNOWN_17		"msole:unknown-doc-17"


GSF_META_NAME_MSOLE_UNKNOWN_18

#define GSF_META_NAME_MSOLE_UNKNOWN_18		"msole:unknown-doc-18"


GSF_META_NAME_MSOLE_UNKNOWN_19

#define GSF_META_NAME_MSOLE_UNKNOWN_19		"msole:unknown-doc-19"	/* bool */


GSF_META_NAME_MSOLE_UNKNOWN_20

#define GSF_META_NAME_MSOLE_UNKNOWN_20		"msole:unknown-doc-20"


GSF_META_NAME_MSOLE_UNKNOWN_21

#define GSF_META_NAME_MSOLE_UNKNOWN_21		"msole:unknown-doc-21"


GSF_META_NAME_MSOLE_UNKNOWN_22

#define GSF_META_NAME_MSOLE_UNKNOWN_22		"msole:unknown-doc-22"	/* bool */


GSF_META_NAME_MSOLE_UNKNOWN_23

#define GSF_META_NAME_MSOLE_UNKNOWN_23		"msole:unknown-doc-23"	/* i4 */


GSF_META_NAME_LOCALE_SYSTEM_DEFAULT

#define GSF_META_NAME_LOCALE_SYSTEM_DEFAULT	"gsf:default-locale"

(Unsigned Integer) Identifier representing the default system locale.


GSF_META_NAME_CASE_SENSITIVE

#define GSF_META_NAME_CASE_SENSITIVE		"gsf:case-sensitivity"

(Unsigned Integer) Identifier representing the case-sensitiveness.

Note

of what ?? why is it an integer ??


GSF_META_NAME_PRINTED_BY

#define GSF_META_NAME_PRINTED_BY		"meta:printed-by"

(String) Specifies the name of the last person who printed the document. Moved from "gsf" to "meta". This way can be used correctly by OpenDocument and Gnumeric.


GSF_META_NAME_INITIAL_CREATOR

#define GSF_META_NAME_INITIAL_CREATOR		"meta:initial-creator"

(String) Specifies the name of the person who created the document initially. Moved from "gsf" to "meta". This way can be used correctly by OpenDocument and Gnumeric.

libgsf-1.13.99/doc/html/gsf-users.html0000644000076500017500000000654410401600622014407 00000000000000 Part IV. Projects using GSF

Projects using GSF

GSF is now also being used by other projects than Gnumeric, including

KWord

The word processor application of KOffice, the integrated office suite for KDE, the K Desktop Environment.

librsvg

A library to support the SVG scalable vector graphics format.

libwpd

A library for importing WordPerfect® documents.

planner

A project management application.

libgsf-1.13.99/doc/html/gsf-utils.html0000644000076500017500000021123610401600622014402 00000000000000 utils

utils

utils —

Synopsis




void        gsf_init                        (void);
void        gsf_shutdown                    (void);
void        gsf_init_dynamic                (GTypeModule *module);
void        gsf_shutdown_dynamic            (GTypeModule *module);
extern      int libgsf_major_version;
extern      int libgsf_minor_version;
extern      int libgsf_micro_version;

#define     GSF_CLASS                       (name, prefix, class_init, instance_init, parent)
#define     GSF_CLASS_FULL                  (name, prefix, base_init, base_finalize, \
			   class_init, class_finalize, instance_init, parent_type, \
		       abstract, interface_decl)
#define     GSF_CLASS_ABSTRACT              (name, prefix, class_init, instance_init, parent)
#define     GSF_INTERFACE                   (init_func, iface_type)
#define     GSF_INTERFACE_FULL              (type, init_func, iface_type)
#define     GSF_DYNAMIC_CLASS               (name, prefix, class_init, instance_init, parent)
#define     GSF_DYNAMIC_CLASS_FULL          (name, prefix, base_init, base_finalize, \
				   class_init,  class_finalize, instance_init, parent_type, \
			       abstract, interface_decl)
#define     GSF_DYNAMIC_CLASS_ABSTRACT      (name, prefix, class_init, instance_init, parent)
#define     GSF_DYNAMIC_INTERFACE           (init_func, iface_type, module)
#define     GSF_DYNAMIC_INTERFACE_FULL      (type, init_func, iface_type, module)
#define     GSF_PARAM_STATIC

#define     GSF_ERROR
enum        GsfError;
GQuark      gsf_error_quark                 (void);

void        gsf_mem_dump                    (guint8 const *ptr,
                                             size_t len);
void        gsf_input_dump                  (GsfInput *input,
                                             gboolean dump_as_hex);

#define     GSF_OFF_T_FORMAT
typedef     gsf_off_t;
char*       gsf_filename_to_utf8            (char const *filename,
                                             gboolean quoted);
void        gsf_iconv_close                 (GIConv handle);
charconst * gsf_extension_pointer           (char const *path);

guint8*     gsf_base64_encode_simple        (guint8 const *data,
                                             size_t len);
size_t      gsf_base64_encode_close         (guint8 const *in,
                                             size_t inlen,
                                             gboolean break_lines,
                                             guint8 *out,
                                             int *state,
                                             guint *save);
size_t      gsf_base64_encode_step          (guint8 const *in,
                                             size_t len,
                                             gboolean break_lines,
                                             guint8 *out,
                                             int *state,
                                             guint *save);
size_t      gsf_base64_decode_simple        (guint8 *data,
                                             size_t len);
size_t      gsf_base64_decode_step          (guint8 const *in,
                                             size_t len,
                                             guint8 *out,
                                             int *state,
                                             guint *save);
#define     GSF_LE_GET_GINT8                (p)
#define     GSF_LE_GET_GUINT64              (p)
#define     GSF_LE_GET_GINT16               (p)
#define     GSF_LE_GET_GUINT8               (p)
#define     GSF_LE_GET_GINT32               (p)
#define     GSF_LE_GET_GUINT16              (p)
#define     GSF_LE_GET_GUINT32              (p)
#define     GSF_LE_GET_GINT64               (p)
guint64     gsf_le_get_guint64              (void const *p);
#define     GSF_LE_GET_FLOAT                (p)
float       gsf_le_get_float                (void const *p);
#define     GSF_LE_GET_DOUBLE               (p)
double      gsf_le_get_double               (void const *p);
#define     GSF_LE_SET_GUINT8               (p, dat)
#define     GSF_LE_SET_GUINT16              (p, dat)
#define     GSF_LE_SET_GUINT32              (p, dat)
#define     GSF_LE_SET_GINT8                (p,dat)
#define     GSF_LE_SET_GINT16               (p,dat)
#define     GSF_LE_SET_GINT32               (p,dat)
#define     GSF_LE_SET_GINT64               (p,dat)
#define     GSF_LE_SET_GUINT64              (p, dat)
#define     GSF_LE_SET_FLOAT                (p,dat)
#define     GSF_LE_SET_DOUBLE               (p,dat)
void        gsf_le_set_float                (void *p,
                                             float f);
void        gsf_le_set_double               (void *p,
                                             double d);

            GsfTimestamp;
GsfTimestamp* gsf_timestamp_copy            (GsfTimestamp const *stamp);
void        gsf_timestamp_free              (GsfTimestamp *stamp);
char*       gsf_timestamp_as_string         (GsfTimestamp const *stamp);
int         gsf_timestamp_parse             (char const *spec,
                                             GsfTimestamp *stamp);
guint       gsf_timestamp_hash              (GsfTimestamp const *stamp);
gboolean    gsf_timestamp_equal             (GsfTimestamp const *a,
                                             GsfTimestamp const *b);
void        gsf_value_set_timestamp         (GValue *value,
                                             GsfTimestamp const *stamp);
#define     VAL_IS_GSF_TIMESTAMP            (v)


GValue*     gsf_doc_prop_swap_val           (GsfDocProp *prop,
                                             GValue *val);
void        gsf_property_settings_collect   (GType object_type,
                                             GParameter **p_params,
                                             size_t *p_n_params,
                                             const gchar *first_property_name,
                                             ...);
void        gsf_property_settings_collect_valist
                                            (GType object_type,
                                             GParameter **p_params,
                                             size_t *p_n_params,
                                             const gchar *first_property_name,
                                             va_list var_args);
void        gsf_property_settings_free      (GParameter *params,
                                             size_t n_params);

Description

Details

gsf_init ()

void        gsf_init                        (void);

Initializes the GSF library


gsf_shutdown ()

void        gsf_shutdown                    (void);

De-intializes the GSF library


gsf_init_dynamic ()

void        gsf_init_dynamic                (GTypeModule *module);

module :

gsf_shutdown_dynamic ()

void        gsf_shutdown_dynamic            (GTypeModule *module);

module :

libgsf_major_version

extern int libgsf_major_version;

The major version number of the GSF library. (e.g. in GSF version 1.2.5 this is 1.)

This variable is in the library and thus represents the GSF library you have linked against (which may be different from the version of the GSF library from which you have included the headers).


libgsf_minor_version

extern int libgsf_minor_version;

The minor version number of the GLib library. (e.g. in GLib version 1.2.5 this is 2.)

This variable is in the library and thus represents the GSF library you have linked against (which may be different from the version of the GSF library from which you have included the headers).


libgsf_micro_version

extern int libgsf_micro_version;

The micro version number of the GSF library. (e.g. in GSF version 1.2.5 this is 5.)

This variable is in the library and thus represents the GSF library you have linked against (which may be different from the version of the GSF library from which you have included the headers).


GSF_CLASS()

#define     GSF_CLASS(name, prefix, class_init, instance_init, parent)

name :
prefix :
class_init :
instance_init :
parent :

GSF_CLASS_FULL()

#define     GSF_CLASS_FULL(name, prefix, base_init, base_finalize, \
			   class_init, class_finalize, instance_init, parent_type, \
		       abstract, interface_decl)

name :
prefix :
base_init :
base_finalize : @\ class_init:
class_init :
class_finalize :
instance_init :
parent_type : @\ abstract:
abstract :
interface_decl :

GSF_CLASS_ABSTRACT()

#define     GSF_CLASS_ABSTRACT(name, prefix, class_init, instance_init, parent)

name :
prefix :
class_init :
instance_init :
parent :

GSF_INTERFACE()

#define     GSF_INTERFACE(init_func, iface_type)

init_func :
iface_type :

GSF_INTERFACE_FULL()

#define     GSF_INTERFACE_FULL(type, init_func, iface_type)

type :
init_func :
iface_type :

GSF_DYNAMIC_CLASS()

#define     GSF_DYNAMIC_CLASS(name, prefix, class_init, instance_init, parent)

name :
prefix :
class_init :
instance_init :
parent :

GSF_DYNAMIC_CLASS_FULL()

#define     GSF_DYNAMIC_CLASS_FULL(name, prefix, base_init, base_finalize, \
				   class_init,  class_finalize, instance_init, parent_type, \
			       abstract, interface_decl)

name :
prefix :
base_init :
base_finalize : @\ class_init:
class_init :
class_finalize :
instance_init :
parent_type : @\ abstract:
abstract :
interface_decl :

GSF_DYNAMIC_CLASS_ABSTRACT()

#define     GSF_DYNAMIC_CLASS_ABSTRACT(name, prefix, class_init, instance_init, parent)

name :
prefix :
class_init :
instance_init :
parent :

GSF_DYNAMIC_INTERFACE()

#define     GSF_DYNAMIC_INTERFACE(init_func, iface_type, module)

init_func :
iface_type :
module :

GSF_DYNAMIC_INTERFACE_FULL()

#define     GSF_DYNAMIC_INTERFACE_FULL(type, init_func, iface_type, module)

type :
init_func :
iface_type :
module :

GSF_PARAM_STATIC

#define     GSF_PARAM_STATIC


GSF_ERROR

#define GSF_ERROR (gsf_error_quark ())

This convenience macro simply calls gsf_error_quark(). You can use it in calls to g_error_matches(), for example. The macro returns the GQuark that is used to identify errors from libgsf functions. Specific error codes come from the GsfError enumeration.


enum GsfError

typedef enum {
	GSF_ERROR_OUT_OF_MEMORY,
	GSF_ERROR_INVALID_DATA
} GsfError;

Error codes that can be returned from libgsf functions in GError structures.

GSF_ERROR_OUT_OF_MEMORY Not enough memory could be allocated to hold a structure or object.
GSF_ERROR_INVALID_DATA A file being read contained invalid or inconsistent data.

gsf_error_quark ()

GQuark      gsf_error_quark                 (void);

Returns the GQuark used to identify libgsf errors in GError structures. Specific error codes come from the GsfError enumeration.

Returns : A GQuark.

gsf_mem_dump ()

void        gsf_mem_dump                    (guint8 const *ptr,
                                             size_t len);

Dump len bytes from the memory location given by ptr.

ptr : memory area to be dumped.
len : how many bytes will be dumped.

gsf_input_dump ()

void        gsf_input_dump                  (GsfInput *input,
                                             gboolean dump_as_hex);

Dumps input's contents to STDOUT, optionally in hex format.

input : a GsfInput
dump_as_hex : If TRUE, dump in hexidecmal format

GSF_OFF_T_FORMAT

#define GSF_OFF_T_FORMAT	G_GINT64_FORMAT


gsf_off_t

typedef gint64 gsf_off_t;


gsf_filename_to_utf8 ()

char*       gsf_filename_to_utf8            (char const *filename,
                                             gboolean quoted);

A utility wrapper to make sure filenames are valid utf8. Caller must g_free the result.

filename : file name suitable for open(2).
quoted : if TRUE, the resulting utf8 file name will be quoted (unless it is invalid).
Returns : filename using utf-8 encoding for display

gsf_iconv_close ()

void        gsf_iconv_close                 (GIConv handle);

A utility wrapper to safely close an iconv handle.

handle : handle to be closed.

gsf_extension_pointer ()

charconst * gsf_extension_pointer           (char const *path);

Extracts the extension from the end of a filename (the part after the final '.' in the filename).

path : A filename or file path.
Returns : A pointer to the extension part of the filename, or a pointer to the end of the string if the filename does not have an extension.

gsf_base64_encode_simple ()

guint8*     gsf_base64_encode_simple        (guint8 const *data,
                                             size_t len);

Encodes data from data back into data using base64 encoding.

data : data stream
len : max length of data to encode
Returns : : the number of bytes encoded

gsf_base64_encode_close ()

size_t      gsf_base64_encode_close         (guint8 const *in,
                                             size_t inlen,
                                             gboolean break_lines,
                                             guint8 *out,
                                             int *state,
                                             guint *save);

This funcion should be called to when finished encoding everything, to flush off the last little bit.

in : Data to be encoded
inlen : Length of data to be encoded
break_lines : Whether to use line breaks
out : Encoded data.
state : holds the number of bits that are stored in save
save : leftover bits that have not yet been decoded
Returns : :

gsf_base64_encode_step ()

size_t      gsf_base64_encode_step          (guint8 const *in,
                                             size_t len,
                                             gboolean break_lines,
                                             guint8 *out,
                                             int *state,
                                             guint *save);

Performs an 'encode step', only encodes blocks of 3 characters from in into the output out at a time, saves left-over state in state and save (initialise to 0 on first invocation).

in : input stream
len : max length of data to decode
break_lines : Whether to use line breaks
out : output stream
state : holds the number of bits that are stored in save
save : leftover bits that have not yet been decoded
Returns : : the number of bytes encoded

gsf_base64_decode_simple ()

size_t      gsf_base64_decode_simple        (guint8 *data,
                                             size_t len);

Decodes a chunk of base64 encoded data from data back into data.

data : data stream
len : max length of data to decode
Returns : : the number of bytes converted

gsf_base64_decode_step ()

size_t      gsf_base64_decode_step          (guint8 const *in,
                                             size_t len,
                                             guint8 *out,
                                             int *state,
                                             guint *save);

Decodes a chunk of base64 encoded data

in : input stream
len : max length of data to decode
out : output stream
state : holds the number of bits that are stored in save
save : leftover bits that have not yet been decoded
Returns : the number of bytes converted

GSF_LE_GET_GINT8()

#define GSF_LE_GET_GINT8(p) ((gint8)GSF_LE_GET_GUINT8(p))

Interpret data as an 8 bit integer value in little endian order.

p : Pointer to storage

GSF_LE_GET_GUINT64()

#define GSF_LE_GET_GUINT64(p) (gsf_le_get_guint64 (p))

Interpret data as a 64 bit unsigned integer value in little endian order.

p : Pointer to storage

GSF_LE_GET_GINT16()

#define GSF_LE_GET_GINT16(p) ((gint16)GSF_LE_GET_GUINT16(p))

Interpret data as a 16 bit integer value in little endian order.

p : Pointer to storage

GSF_LE_GET_GUINT8()

#define GSF_LE_GET_GUINT8(p) (*(guint8 const *)(p))

Interpret data as an 8 bit unsigned integer value in little endian order.

p : Pointer to storage

GSF_LE_GET_GINT32()

#define GSF_LE_GET_GINT32(p) ((gint32)GSF_LE_GET_GUINT32(p))

Interpret data as a 32 bit integer value in little endian order.

p : Pointer to storage

GSF_LE_GET_GUINT16()

#define     GSF_LE_GET_GUINT16(p)

Interpret data as a 16 bit unsigned integer value in little endian order.

p : Pointer to storage

GSF_LE_GET_GUINT32()

#define     GSF_LE_GET_GUINT32(p)

Interpret data as a 32 bit unsigned integer value in little endian order.

p : Pointer to storage

GSF_LE_GET_GINT64()

#define GSF_LE_GET_GINT64(p) ((gint64)GSF_LE_GET_GUINT64(p))

Interpret data as a 64 bit integer value in little endian order.

p : Pointer to storage

gsf_le_get_guint64 ()

guint64     gsf_le_get_guint64              (void const *p);

Interpret binary data as a guint64 (8 byte unsigned integer type) in little endian order.

p : pointer to storage
Returns : interpreted data

GSF_LE_GET_FLOAT()

#define GSF_LE_GET_FLOAT(p) (gsf_le_get_float (p))

Interpret data as a float value in little endian order.

p : Pointer to storage

gsf_le_get_float ()

float       gsf_le_get_float                (void const *p);

Interpret binary data as a float in little endian order.

p : pointer to storage
Returns : interpreted data

GSF_LE_GET_DOUBLE()

#define GSF_LE_GET_DOUBLE(p) (gsf_le_get_double (p))

Interpret data as a double value in little endian order.

p : Pointer to storage

gsf_le_get_double ()

double      gsf_le_get_double               (void const *p);

Interpret binary data as a double in little endian order.

p : pointer to storage
Returns : interpreted data

GSF_LE_SET_GUINT8()

#define     GSF_LE_SET_GUINT8(p, dat)

Store an 8 bit unsigned integer value in memory in little endian order.

p : Pointer to storage
dat : Value to be stored

GSF_LE_SET_GUINT16()

#define     GSF_LE_SET_GUINT16(p, dat)

Store a 16 bit unsigned integer value in memory in little endian order.

p : Pointer to storage
dat : Value to be stored

GSF_LE_SET_GUINT32()

#define     GSF_LE_SET_GUINT32(p, dat)

Store a 32 bit unsigned integer value in memory in little endian order.

p : Pointer to storage
dat : Value to be stored

GSF_LE_SET_GINT8()

#define GSF_LE_SET_GINT8(p,dat) GSF_LE_SET_GUINT8((p),(dat))

Store an 8 bit integer value in memory in little endian order.

p : Pointer to storage
dat : Value to be stored

GSF_LE_SET_GINT16()

#define GSF_LE_SET_GINT16(p,dat) GSF_LE_SET_GUINT16((p),(dat))

Store a 16 bit integer value in memory in little endian order.

p : Pointer to storage
dat : Value to be stored

GSF_LE_SET_GINT32()

#define GSF_LE_SET_GINT32(p,dat) GSF_LE_SET_GUINT32((p),(dat))

Store a 32 bit integer value in memory in little endian order.

p : Pointer to storage
dat : Value to be stored

GSF_LE_SET_GINT64()

#define GSF_LE_SET_GINT64(p,dat) GSF_LE_SET_GUINT64((p),(dat))

Store a 64 bit integer value in memory in little endian order.

p : Pointer to storage
dat : Value to be stored

GSF_LE_SET_GUINT64()

#define     GSF_LE_SET_GUINT64(p, dat)

Store a 64 bit unsigned integer value in memory in little endian order.

p : Pointer to storage
dat : Value to be stored

GSF_LE_SET_FLOAT()

#define GSF_LE_SET_FLOAT(p,dat) gsf_le_set_float((p),(dat))

Store a float value in memory in little endian order.

p : Pointer to storage
dat : Value to be stored

GSF_LE_SET_DOUBLE()

#define GSF_LE_SET_DOUBLE(p,dat) gsf_le_set_double((p),(dat))

Store a double value in memory in little endian order.

p : Pointer to storage
dat : Value to be stored

gsf_le_set_float ()

void        gsf_le_set_float                (void *p,
                                             float f);

Store a value of type float in memory in little endian order.

p : pointer to storage
f : float to be stored

gsf_le_set_double ()

void        gsf_le_set_double               (void *p,
                                             double d);

Store a value of type double in memory in little endian order

p : pointer to storage
d : double to be stored

GsfTimestamp

typedef struct {
	GDate	  date;			/* In local timezone */
	glong     seconds;		/* time of day */
	GString	  time_zone;		/* possibly blank */

	guint32	  timet;
} GsfTimestamp;


gsf_timestamp_copy ()

GsfTimestamp* gsf_timestamp_copy            (GsfTimestamp const *stamp);

Copies a timestamp.

stamp : timestamp to be copied
Returns : a separate copy of stamp.

gsf_timestamp_free ()

void        gsf_timestamp_free              (GsfTimestamp *stamp);

Releases the memory in use for stamp (if any).

stamp : timestamp to be freed

gsf_timestamp_as_string ()

char*       gsf_timestamp_as_string         (GsfTimestamp const *stamp);

Produce a string representation of stamp.

stamp : timestamp to be converted.
Returns : a string representation of stamp. When stamp is NULL, the representation is "<invalid>".

gsf_timestamp_parse ()

int         gsf_timestamp_parse             (char const *spec,
                                             GsfTimestamp *stamp);

Very simple parser for time stamps. Currently requires 'YYYY-MM-DDThh:mm:ss' and does no bounds checking.

spec : The string to parse
stamp : GsfTimestamp
Returns : TRUE on success

gsf_timestamp_hash ()

guint       gsf_timestamp_hash              (GsfTimestamp const *stamp);

stamp :
Returns :

gsf_timestamp_equal ()

gboolean    gsf_timestamp_equal             (GsfTimestamp const *a,
                                             GsfTimestamp const *b);

Compare timestamps a and b.

a : a timestamp
b : another timestamp
Returns : true if a and b represent the same point in time; false otherwise.

gsf_value_set_timestamp ()

void        gsf_value_set_timestamp         (GValue *value,
                                             GsfTimestamp const *stamp);

value :
stamp :

VAL_IS_GSF_TIMESTAMP()

#define VAL_IS_GSF_TIMESTAMP(v) (G_TYPE_CHECK_VALUE_TYPE((v), GSF_TIMESTAMP_TYPE))

v :

gsf_doc_prop_swap_val ()

GValue*     gsf_doc_prop_swap_val           (GsfDocProp *prop,
                                             GValue *val);

prop : GsfDocProp
val : GValue
Returns : the current value of prop, and replaces it with val Caller is responsible for unsetting and freeing the result.

gsf_property_settings_collect ()

void        gsf_property_settings_collect   (GType object_type,
                                             GParameter **p_params,
                                             size_t *p_n_params,
                                             const gchar *first_property_name,
                                             ...);

object_type :
p_params :
p_n_params :
first_property_name :
... :

gsf_property_settings_collect_valist ()

void        gsf_property_settings_collect_valist
                                            (GType object_type,
                                             GParameter **p_params,
                                             size_t *p_n_params,
                                             const gchar *first_property_name,
                                             va_list var_args);

This function builds a GParameter array suitable for g_object_newv.

object_type : the GType for which the properties are being set.
p_params : a pointer to the GParameter array that holds the properties. (Used for both input and output. This may point to a NULL pointer if there are no properties collected yet.)
p_n_params : a pointer to the number of properties collected. (Used for both input and output.)
first_property_name : the name of the first property being set, or NULL.
var_args : a va_list holding the remainder of the property names and values, terminated by a NULL.

gsf_property_settings_free ()

void        gsf_property_settings_free      (GParameter *params,
                                             size_t n_params);

params :
n_params :
libgsf-1.13.99/doc/html/gsf.devhelp0000644000076500017500000011404010401600622013722 00000000000000 libgsf-1.13.99/doc/html/gsf.devhelp20000644000076500017500000012541510401600622014014 00000000000000