| Top |  |  |  |  | 
| guint8 const * | gsf_input_read () | 
| gsf_off_t | gsf_input_tell () | 
| gboolean | gsf_input_seek () | 
| GsfInfile * | gsf_input_container () | 
| GsfInput * | gsf_input_dup () | 
| gsf_off_t | gsf_input_size () | 
| gboolean | gsf_input_eof () | 
| gsf_off_t | gsf_input_remaining () | 
| GQuark | gsf_input_error_id () | 
| GsfInput * | gsf_input_sibling () | 
| GQuark | gsf_input_error () | 
| char const * | gsf_input_name () | 
| gboolean | gsf_input_set_name_from_filename () | 
| GsfInput * | gsf_input_proxy_new () | 
| GsfInput * | gsf_input_proxy_new_section () | 
| gboolean | gsf_input_copy () | 
| GsfInput * | gsf_input_uncompress () | 
    GObject
    ╰── GsfInput
        ├── GsfInfile
        ├── GsfInputGZip
        ├── GsfInputMemory
        ├── GsfInputProxy
        ├── GsfInputStdio
        ╰── GsfInputTextline
guint8 const * 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.
[skip]
gboolean gsf_input_seek (GsfInput *input,gsf_off_t offset,GSeekType whence);
Move the current location in the input stream.
GsfInput * gsf_input_dup (GsfInput *input,GError **err);
Duplicates input src
 leaving the new one at the same offset.
GsfInput * gsf_input_sibling (GsfInput const *input,char const *name,GError **err);
UNIMPLEMENTED BY ANY BACKEND and it is probably unnecessary. gsf_input_get_container provides enough power to do what is necessary.
Attempts to open a 'sibling' of input
.  The caller is responsible for
managing the resulting object.
GQuark
gsf_input_error (void);
gsf_input_error is deprecated and should not be used in newly-written code.
Deprecated as of GSF 1.12.0; use gsf_input_error_id() instead.
gboolean gsf_input_set_name_from_filename (GsfInput *input,char const *filename);
protected.
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.
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.
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.
“container” property“container” GsfInfile *
The container, optionally NULL, in which this input lives.
Flags: Read
“eof” property  “eof”                      gboolean
TRUE if the end of the file has been reached.
Flags: Read
Default value: FALSE
“modtime” property  “modtime”                  GDateTime *
The time the input was last updated.  This represents the
timestamp from the originating file or GsfInfile
 member.
It is not supported by all derived classes.
Flags: Read
“position” property  “position”                 gint64
The current position in the input.
Flags: Read
Allowed values: >= 0
Default value: 0
“remaining” property  “remaining”                gint64
The number of bytes remaining in the file.
Flags: Read
Allowed values: >= 0
Default value: 0