Gio.MemoryOutputStream¶
| Subclasses: | None |
|---|
Methods¶
| Inherited: | Gio.OutputStream (29), GObject.Object (37), Gio.PollableOutputStream (5), Gio.Seekable (5) |
|---|---|
| Structs: | GObject.ObjectClass (5) |
| class | new_resizable () |
get_data () |
|
get_data_size () |
|
get_size () |
|
steal_as_bytes () |
|
steal_data () |
Virtual Methods¶
| Inherited: | Gio.OutputStream (15), GObject.Object (7), Gio.PollableOutputStream (5), Gio.Seekable (5) |
|---|
Properties¶
| Name | Type | Flags | Short Description |
|---|---|---|---|
data |
int |
r/w/co | Pointer to buffer where data will be written. |
data-size |
int |
r | Size of data written to the buffer. |
size |
int |
r/w/co | Current size of the data buffer. |
Signals¶
| Inherited: | GObject.Object (1) |
|---|
Fields¶
| Inherited: | GObject.Object (1) |
|---|
| Name | Type | Access | Description |
|---|---|---|---|
| parent_instance | Gio.OutputStream |
r |
Class Details¶
-
class
Gio.MemoryOutputStream(**kwargs)¶ Bases: Gio.OutputStream,Gio.PollableOutputStream,Gio.SeekableAbstract: No Structure: Gio.MemoryOutputStreamClassGio.MemoryOutputStreamis a class for using arbitrary memory chunks as output for GIO streaming output operations.As of GLib 2.34,
Gio.MemoryOutputStreamtrivially implementsGio.PollableOutputStream: it always polls as ready.-
classmethod
new_resizable()[source]¶ Return type: Gio.OutputStreamCreates a new
Gio.MemoryOutputStream, usingGLib.realloc() andGLib.free() for memory allocation.New in version 2.36.
-
get_data()[source]¶ Returns: pointer to the stream’s data, or Noneif the data has been stolenReturn type: objectorNoneGets any loaded data from the self.
Note that the returned pointer may become invalid on the next write or truncate operation on the stream.
-
get_data_size()[source]¶ Returns: the number of bytes written to the stream Return type: intReturns the number of bytes from the start up to including the last byte written in the stream that has not been truncated away.
New in version 2.18.
-
get_size()[source]¶ Returns: the number of bytes allocated for the data buffer Return type: intGets the size of the currently allocated data area (available from
Gio.MemoryOutputStream.get_data()).You probably don’t want to use this function on resizable streams. See
Gio.MemoryOutputStream.get_data_size() instead. For resizable streams the size returned by this function is an implementation detail and may be change at any time in response to operations on the stream.If the stream is fixed-sized (ie: no realloc was passed to g_memory_output_stream_new()) then this is the maximum size of the stream and further writes will return
Gio.IOErrorEnum.NO_SPACE.In any case, if you want the number of bytes currently written to the stream, use
Gio.MemoryOutputStream.get_data_size().
-
steal_as_bytes()[source]¶ Returns: the stream’s data Return type: GLib.BytesReturns data from the self as a
GLib.Bytes. self must be closed before calling this function.New in version 2.34.
-
steal_data()[source]¶ Returns: the stream’s data, or Noneif it has previously been stolenReturn type: objectorNoneGets any loaded data from the self. Ownership of the data is transferred to the caller; when no longer needed it must be freed using the free function set in self’s
Gio.MemoryOutputStream:destroy-functionproperty.self must be closed before calling this function.
New in version 2.26.
-
classmethod
Property Details¶
-
Gio.MemoryOutputStream.props.data¶ Name: dataType: intDefault Value: NoneFlags: READABLE,WRITABLE,CONSTRUCT_ONLYPointer to buffer where data will be written.
New in version 2.24.
-
Gio.MemoryOutputStream.props.data_size¶ Name: data-sizeType: intDefault Value: 0Flags: READABLESize of data written to the buffer.
New in version 2.24.
-
Gio.MemoryOutputStream.props.size¶ Name: sizeType: intDefault Value: 0Flags: READABLE,WRITABLE,CONSTRUCT_ONLYCurrent size of the data buffer.
New in version 2.24.