123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169 |
- :github_url: hide
- .. DO NOT EDIT THIS FILE!!!
- .. Generated automatically from Godot engine sources.
- .. Generator: https://github.com/godotengine/godot/tree/master/doc/tools/make_rst.py.
- .. XML source: https://github.com/godotengine/godot/tree/master/doc/classes/StreamPeerBuffer.xml.
- .. _class_StreamPeerBuffer:
- StreamPeerBuffer
- ================
- **Inherits:** :ref:`StreamPeer<class_StreamPeer>` **<** :ref:`RefCounted<class_RefCounted>` **<** :ref:`Object<class_Object>`
- A stream peer used to handle binary data streams.
- .. rst-class:: classref-introduction-group
- Description
- -----------
- A data buffer stream peer that uses a byte array as the stream. This object can be used to handle binary data from network sessions. To handle binary data stored in files, :ref:`FileAccess<class_FileAccess>` can be used directly.
- A **StreamPeerBuffer** object keeps an internal cursor which is the offset in bytes to the start of the buffer. Get and put operations are performed at the cursor position and will move the cursor accordingly.
- .. rst-class:: classref-reftable-group
- Properties
- ----------
- .. table::
- :widths: auto
- +-----------------------------------------------+---------------------------------------------------------------+-----------------------+
- | :ref:`PackedByteArray<class_PackedByteArray>` | :ref:`data_array<class_StreamPeerBuffer_property_data_array>` | ``PackedByteArray()`` |
- +-----------------------------------------------+---------------------------------------------------------------+-----------------------+
- .. rst-class:: classref-reftable-group
- Methods
- -------
- .. table::
- :widths: auto
- +-------------------------------------------------+-----------------------------------------------------------------------------------------+
- | |void| | :ref:`clear<class_StreamPeerBuffer_method_clear>`\ (\ ) |
- +-------------------------------------------------+-----------------------------------------------------------------------------------------+
- | :ref:`StreamPeerBuffer<class_StreamPeerBuffer>` | :ref:`duplicate<class_StreamPeerBuffer_method_duplicate>`\ (\ ) |const| |
- +-------------------------------------------------+-----------------------------------------------------------------------------------------+
- | :ref:`int<class_int>` | :ref:`get_position<class_StreamPeerBuffer_method_get_position>`\ (\ ) |const| |
- +-------------------------------------------------+-----------------------------------------------------------------------------------------+
- | :ref:`int<class_int>` | :ref:`get_size<class_StreamPeerBuffer_method_get_size>`\ (\ ) |const| |
- +-------------------------------------------------+-----------------------------------------------------------------------------------------+
- | |void| | :ref:`resize<class_StreamPeerBuffer_method_resize>`\ (\ size\: :ref:`int<class_int>`\ ) |
- +-------------------------------------------------+-----------------------------------------------------------------------------------------+
- | |void| | :ref:`seek<class_StreamPeerBuffer_method_seek>`\ (\ position\: :ref:`int<class_int>`\ ) |
- +-------------------------------------------------+-----------------------------------------------------------------------------------------+
- .. rst-class:: classref-section-separator
- ----
- .. rst-class:: classref-descriptions-group
- Property Descriptions
- ---------------------
- .. _class_StreamPeerBuffer_property_data_array:
- .. rst-class:: classref-property
- :ref:`PackedByteArray<class_PackedByteArray>` **data_array** = ``PackedByteArray()`` :ref:`🔗<class_StreamPeerBuffer_property_data_array>`
- .. rst-class:: classref-property-setget
- - |void| **set_data_array**\ (\ value\: :ref:`PackedByteArray<class_PackedByteArray>`\ )
- - :ref:`PackedByteArray<class_PackedByteArray>` **get_data_array**\ (\ )
- The underlying data buffer. Setting this value resets the cursor.
- **Note:** The returned array is *copied* and any changes to it will not update the original property value. See :ref:`PackedByteArray<class_PackedByteArray>` for more details.
- .. rst-class:: classref-section-separator
- ----
- .. rst-class:: classref-descriptions-group
- Method Descriptions
- -------------------
- .. _class_StreamPeerBuffer_method_clear:
- .. rst-class:: classref-method
- |void| **clear**\ (\ ) :ref:`🔗<class_StreamPeerBuffer_method_clear>`
- Clears the :ref:`data_array<class_StreamPeerBuffer_property_data_array>` and resets the cursor.
- .. rst-class:: classref-item-separator
- ----
- .. _class_StreamPeerBuffer_method_duplicate:
- .. rst-class:: classref-method
- :ref:`StreamPeerBuffer<class_StreamPeerBuffer>` **duplicate**\ (\ ) |const| :ref:`🔗<class_StreamPeerBuffer_method_duplicate>`
- Returns a new **StreamPeerBuffer** with the same :ref:`data_array<class_StreamPeerBuffer_property_data_array>` content.
- .. rst-class:: classref-item-separator
- ----
- .. _class_StreamPeerBuffer_method_get_position:
- .. rst-class:: classref-method
- :ref:`int<class_int>` **get_position**\ (\ ) |const| :ref:`🔗<class_StreamPeerBuffer_method_get_position>`
- Returns the current cursor position.
- .. rst-class:: classref-item-separator
- ----
- .. _class_StreamPeerBuffer_method_get_size:
- .. rst-class:: classref-method
- :ref:`int<class_int>` **get_size**\ (\ ) |const| :ref:`🔗<class_StreamPeerBuffer_method_get_size>`
- Returns the size of :ref:`data_array<class_StreamPeerBuffer_property_data_array>`.
- .. rst-class:: classref-item-separator
- ----
- .. _class_StreamPeerBuffer_method_resize:
- .. rst-class:: classref-method
- |void| **resize**\ (\ size\: :ref:`int<class_int>`\ ) :ref:`🔗<class_StreamPeerBuffer_method_resize>`
- Resizes the :ref:`data_array<class_StreamPeerBuffer_property_data_array>`. This *doesn't* update the cursor.
- .. rst-class:: classref-item-separator
- ----
- .. _class_StreamPeerBuffer_method_seek:
- .. rst-class:: classref-method
- |void| **seek**\ (\ position\: :ref:`int<class_int>`\ ) :ref:`🔗<class_StreamPeerBuffer_method_seek>`
- Moves the cursor to the specified position. ``position`` must be a valid index of :ref:`data_array<class_StreamPeerBuffer_property_data_array>`.
- .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
- .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
- .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`
- .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)`
- .. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)`
- .. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)`
- .. |bitfield| replace:: :abbr:`BitField (This value is an integer composed as a bitmask of the following flags.)`
- .. |void| replace:: :abbr:`void (No return value.)`
|