Top |
Functions
void | g_mime_stream_construct () |
ssize_t | g_mime_stream_read () |
ssize_t | g_mime_stream_write () |
int | g_mime_stream_flush () |
gint64 | g_mime_stream_seek () |
gint64 | g_mime_stream_tell () |
int | g_mime_stream_reset () |
gboolean | g_mime_stream_eos () |
int | g_mime_stream_close () |
gint64 | g_mime_stream_length () |
GMimeStream * | g_mime_stream_substream () |
void | g_mime_stream_set_bounds () |
ssize_t | g_mime_stream_write_string () |
ssize_t | g_mime_stream_printf () |
gint64 | g_mime_stream_write_to_stream () |
gint64 | g_mime_stream_writev () |
Object Hierarchy
GObject ╰── GMimeStream ├── GMimeStreamBuffer ├── GMimeStreamCat ├── GMimeStreamFile ├── GMimeStreamFilter ├── GMimeStreamFs ├── GMimeStreamGIO ├── GMimeStreamMem ├── GMimeStreamMmap ├── GMimeStreamNull ╰── GMimeStreamPipe
Description
Streams are the fundamental method for reading and writing data
used by GMime. You'll probably notice that the basic API is similar
to that of the low-level Unix I/O layer (read()
, write()
, lseek()
,
etc) with some additional nicities such as a printf-like function.
Functions
g_mime_stream_construct ()
void g_mime_stream_construct (GMimeStream *stream
,gint64 start
,gint64 end
);
Initializes a new stream with bounds start
and end
.
g_mime_stream_read ()
ssize_t g_mime_stream_read (GMimeStream *stream
,char *buf
,size_t len
);
Attempts to read up to len
bytes from stream
into buf
.
g_mime_stream_write ()
ssize_t g_mime_stream_write (GMimeStream *stream
,const char *buf
,size_t len
);
Attempts to write up to len
bytes of buf
to stream
.
g_mime_stream_seek ()
gint64 g_mime_stream_seek (GMimeStream *stream
,gint64 offset
,GMimeSeekWhence whence
);
Repositions the offset of the stream stream
to
the argument offset
according to the
directive whence
as follows:
GMIME_STREAM_SEEK_SET: Seek offset
bytes relative to
the beginning (bound_start) of the stream.
GMIME_STREAM_SEEK_CUR: Seek offset
bytes relative to the
current offset of the stream.
GMIME_STREAM_SEEK_END: Seek offset
bytes relative to the
end of the stream (bound_end if non-negative).
g_mime_stream_tell ()
gint64
g_mime_stream_tell (GMimeStream *stream
);
Gets the current offset within the stream.
g_mime_stream_eos ()
gboolean
g_mime_stream_eos (GMimeStream *stream
);
Tests the end-of-stream indicator for stream
.
g_mime_stream_length ()
gint64
g_mime_stream_length (GMimeStream *stream
);
Gets the length of the stream.
g_mime_stream_substream ()
GMimeStream * g_mime_stream_substream (GMimeStream *stream
,gint64 start
,gint64 end
);
Creates a new substream of stream
with bounds start
and end
.
g_mime_stream_set_bounds ()
void g_mime_stream_set_bounds (GMimeStream *stream
,gint64 start
,gint64 end
);
Set the bounds on a stream.
g_mime_stream_write_string ()
ssize_t g_mime_stream_write_string (GMimeStream *stream
,const char *str
);
Writes string
to stream
.
g_mime_stream_printf ()
ssize_t g_mime_stream_printf (GMimeStream *stream
,const char *fmt
,...
);
Write formatted output to a stream.
g_mime_stream_write_to_stream ()
gint64 g_mime_stream_write_to_stream (GMimeStream *src
,GMimeStream *dest
);
Attempts to write the source stream to the destination stream.
g_mime_stream_writev ()
gint64 g_mime_stream_writev (GMimeStream *stream
,GMimeStreamIOVector *vector
,size_t count
);
Writes at most count
blocks described by vector
to stream
.
Types and Values
GMimeStreamIOVector
typedef struct { void *data; size_t len; } GMimeStreamIOVector;
An I/O vector for use with g_mime_stream_writev()
.