Module |
|
Header |
/Engine/Source/Runtime/RigVM/Public/RigVMCore/RigVMMemory.h |
Include |
#include "RigVMCore/RigVMMemory.h" |
struct FRigVMRegister
The register represents an address with the VM's memory. Within a register we can store arbitrary data, so it provides a series of properties to describe the memory location. Registers also support the notion of slices. A slice is a complete copy of the memory - so for example if your register stores 4 Vectors, then a slice would contain 48 bytes (4 * 3 * 4). The register can however store multiple slices / copies of that if needed. Slices can be used to provide per-invocation memory to functions within the same register. An integrator for example that needs to store a simulated position might want access to a separate memory per loop iteration.
Name | Description | ||
---|---|---|---|
|
AlignmentBytes |
The number of leading bytes for alignment. |
|
|
bIsArray |
If true defines this register as an array. |
|
|
bIsDynamic |
If true defines this register to use dynamic storage. |
|
|
ByteIndex |
The index of the first work byte. |
|
|
ElementCount |
The number of elements in this register. |
|
|
ElementSize |
The size of each store element. |
|
|
Name |
The name of the register (can be None) |
|
|
ScriptStructIndex |
For struct registers this is the index of the struct used - otherwise INDEX_NONE |
|
|
SliceCount |
The number of slices (complete copies) |
|
|
TrailingBytes |
The number of trailing bytes. These originate after shrinking a register. |
|
|
Type |
The type of register (plain, name, string, etc.) |
Name | Description | |
---|---|---|
|
FRigVMRegister() |
Name | Description | ||
---|---|---|---|
|
GetAlignmentBytes() |
Returns the leading alignment bytes. |
|
|
GetAllocatedBytes() |
Returns the number of allocated bytes (including alignment + trailing bytes) |
|
|
GetFirstAllocatedByte() |
Returns the first allocated byte in the data byte array |
|
|
GetNumBytesAllSlices() |
Returns the number of bytes for all slices. |
|
|
GetNumBytesPerSlice() |
Returns the number of bytes for a complete slice. |
|
|
GetTotalElementCount() |
Returns the total number of elements (elementcount * slicecount) in the register. |
|
|
GetWorkByteIndex ( |
Returns the current address of the register within the data byte array. |
|
|
IsArray() |
Returns true if the register stores more than one element. |
|
|
IsDynamic() |
Returns true if this register is using a dynamic array for storage |
|
|
IsNestedDynamic() |
Returns true if this register is using a dynamic array for storage |
|
|
IsShallow() |
Returns true if the register stores shallow memory. |
|
|
Serialize ( |