class_streampeerbuffer.rst 7.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169
  1. :github_url: hide
  2. .. DO NOT EDIT THIS FILE!!!
  3. .. Generated automatically from Godot engine sources.
  4. .. Generator: https://github.com/godotengine/godot/tree/master/doc/tools/make_rst.py.
  5. .. XML source: https://github.com/godotengine/godot/tree/master/doc/classes/StreamPeerBuffer.xml.
  6. .. _class_StreamPeerBuffer:
  7. StreamPeerBuffer
  8. ================
  9. **Inherits:** :ref:`StreamPeer<class_StreamPeer>` **<** :ref:`RefCounted<class_RefCounted>` **<** :ref:`Object<class_Object>`
  10. A stream peer used to handle binary data streams.
  11. .. rst-class:: classref-introduction-group
  12. Description
  13. -----------
  14. 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.
  15. 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.
  16. .. rst-class:: classref-reftable-group
  17. Properties
  18. ----------
  19. .. table::
  20. :widths: auto
  21. +-----------------------------------------------+---------------------------------------------------------------+-----------------------+
  22. | :ref:`PackedByteArray<class_PackedByteArray>` | :ref:`data_array<class_StreamPeerBuffer_property_data_array>` | ``PackedByteArray()`` |
  23. +-----------------------------------------------+---------------------------------------------------------------+-----------------------+
  24. .. rst-class:: classref-reftable-group
  25. Methods
  26. -------
  27. .. table::
  28. :widths: auto
  29. +-------------------------------------------------+-----------------------------------------------------------------------------------------+
  30. | |void| | :ref:`clear<class_StreamPeerBuffer_method_clear>`\ (\ ) |
  31. +-------------------------------------------------+-----------------------------------------------------------------------------------------+
  32. | :ref:`StreamPeerBuffer<class_StreamPeerBuffer>` | :ref:`duplicate<class_StreamPeerBuffer_method_duplicate>`\ (\ ) |const| |
  33. +-------------------------------------------------+-----------------------------------------------------------------------------------------+
  34. | :ref:`int<class_int>` | :ref:`get_position<class_StreamPeerBuffer_method_get_position>`\ (\ ) |const| |
  35. +-------------------------------------------------+-----------------------------------------------------------------------------------------+
  36. | :ref:`int<class_int>` | :ref:`get_size<class_StreamPeerBuffer_method_get_size>`\ (\ ) |const| |
  37. +-------------------------------------------------+-----------------------------------------------------------------------------------------+
  38. | |void| | :ref:`resize<class_StreamPeerBuffer_method_resize>`\ (\ size\: :ref:`int<class_int>`\ ) |
  39. +-------------------------------------------------+-----------------------------------------------------------------------------------------+
  40. | |void| | :ref:`seek<class_StreamPeerBuffer_method_seek>`\ (\ position\: :ref:`int<class_int>`\ ) |
  41. +-------------------------------------------------+-----------------------------------------------------------------------------------------+
  42. .. rst-class:: classref-section-separator
  43. ----
  44. .. rst-class:: classref-descriptions-group
  45. Property Descriptions
  46. ---------------------
  47. .. _class_StreamPeerBuffer_property_data_array:
  48. .. rst-class:: classref-property
  49. :ref:`PackedByteArray<class_PackedByteArray>` **data_array** = ``PackedByteArray()`` :ref:`🔗<class_StreamPeerBuffer_property_data_array>`
  50. .. rst-class:: classref-property-setget
  51. - |void| **set_data_array**\ (\ value\: :ref:`PackedByteArray<class_PackedByteArray>`\ )
  52. - :ref:`PackedByteArray<class_PackedByteArray>` **get_data_array**\ (\ )
  53. The underlying data buffer. Setting this value resets the cursor.
  54. **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.
  55. .. rst-class:: classref-section-separator
  56. ----
  57. .. rst-class:: classref-descriptions-group
  58. Method Descriptions
  59. -------------------
  60. .. _class_StreamPeerBuffer_method_clear:
  61. .. rst-class:: classref-method
  62. |void| **clear**\ (\ ) :ref:`🔗<class_StreamPeerBuffer_method_clear>`
  63. Clears the :ref:`data_array<class_StreamPeerBuffer_property_data_array>` and resets the cursor.
  64. .. rst-class:: classref-item-separator
  65. ----
  66. .. _class_StreamPeerBuffer_method_duplicate:
  67. .. rst-class:: classref-method
  68. :ref:`StreamPeerBuffer<class_StreamPeerBuffer>` **duplicate**\ (\ ) |const| :ref:`🔗<class_StreamPeerBuffer_method_duplicate>`
  69. Returns a new **StreamPeerBuffer** with the same :ref:`data_array<class_StreamPeerBuffer_property_data_array>` content.
  70. .. rst-class:: classref-item-separator
  71. ----
  72. .. _class_StreamPeerBuffer_method_get_position:
  73. .. rst-class:: classref-method
  74. :ref:`int<class_int>` **get_position**\ (\ ) |const| :ref:`🔗<class_StreamPeerBuffer_method_get_position>`
  75. Returns the current cursor position.
  76. .. rst-class:: classref-item-separator
  77. ----
  78. .. _class_StreamPeerBuffer_method_get_size:
  79. .. rst-class:: classref-method
  80. :ref:`int<class_int>` **get_size**\ (\ ) |const| :ref:`🔗<class_StreamPeerBuffer_method_get_size>`
  81. Returns the size of :ref:`data_array<class_StreamPeerBuffer_property_data_array>`.
  82. .. rst-class:: classref-item-separator
  83. ----
  84. .. _class_StreamPeerBuffer_method_resize:
  85. .. rst-class:: classref-method
  86. |void| **resize**\ (\ size\: :ref:`int<class_int>`\ ) :ref:`🔗<class_StreamPeerBuffer_method_resize>`
  87. Resizes the :ref:`data_array<class_StreamPeerBuffer_property_data_array>`. This *doesn't* update the cursor.
  88. .. rst-class:: classref-item-separator
  89. ----
  90. .. _class_StreamPeerBuffer_method_seek:
  91. .. rst-class:: classref-method
  92. |void| **seek**\ (\ position\: :ref:`int<class_int>`\ ) :ref:`🔗<class_StreamPeerBuffer_method_seek>`
  93. Moves the cursor to the specified position. ``position`` must be a valid index of :ref:`data_array<class_StreamPeerBuffer_property_data_array>`.
  94. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
  95. .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
  96. .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`
  97. .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)`
  98. .. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)`
  99. .. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)`
  100. .. |bitfield| replace:: :abbr:`BitField (This value is an integer composed as a bitmask of the following flags.)`
  101. .. |void| replace:: :abbr:`void (No return value.)`