Choose your operating system:
Windows
macOS
Linux
Module |
|
Header |
/Engine/Source/Runtime/Core/Public/Memory/CompositeBuffer.h |
Include |
#include "Memory/CompositeBuffer.h" |
class FCompositeBuffer
FCompositeBuffer is a non-contiguous buffer composed of zero or more immutable shared buffers.
A composite buffer is most efficient when its segments are consumed as they are, but it can be flattened into a contiguous buffer when necessary, by calling ToShared(). Ownership of segment buffers is not changed on construction, but if ownership of segments is required then that can be guaranteed by calling MakeOwned().
Name | Description | |
---|---|---|
|
FCompositeBuffer ( |
Construct a composite buffer by concatenating the buffers. |
Name | Description | ||
---|---|---|---|
|
CopyTo ( |
Copies a range of the buffer to a contiguous region of memory. |
|
|
TConstArrayV... |
GetSegments() |
Returns the segments that the buffer is composed from. |
|
GetSize() |
Returns the total size of the composite buffer in bytes. |
|
|
IsNull() |
Returns true if the composite buffer is null. |
|
|
IsOwned() |
Returns true if every segment in the composite buffer is owned. |
|
|
IterateRange ( |
Invokes a visitor with a view of each segment that intersects with a range. |
|
|
IterateRange ( |
||
|
FCompositeBu... |
MakeOwned() |
Returns a copy of the buffer where every segment is owned. |
|
FCompositeBu... |
MakeOwned() |
|
|
FCompositeBu... |
Mid |
Returns the middle part of the buffer by taking the size starting at the offset. |
|
Reset() |
Reset this to null. |
|
|
FSharedBuffe... |
ToShared() |
Returns the concatenation of the segments into a contiguous buffer. |
|
FSharedBuffe... |
ToShared() |
|
|
ViewOrCopyRange ( |
Returns a view of the range if contained by one segment, otherwise a view of a copy of the range. |
Name | Description | ||
---|---|---|---|
|
operator bool() |
Returns true if the composite buffer is not null. |
Name |
Description |
---|---|
CanAppendBufferType |
Name |
Description |
---|---|
Null |
A null composite buffer. |