Navigation
API > API/Runtime > API/Runtime/UniversalObjectLocator
Inheritance Hierarchy
- FResolveParameterBuffer
- TInlineResolveParameterBuffer
References
| Module | UniversalObjectLocator |
| Header | /Engine/Source/Runtime/UniversalObjectLocator/Public/UniversalObjectLocatorResolveParameterBuffer.h |
| Include | #include "UniversalObjectLocatorResolveParameterBuffer.h" |
Syntax
struct FResolveParameterBuffer
Remarks
A buffer of parameter structs that can be optionally supplied to a UOL when resolving to supply additional context.
Parameter types are registered through IUniversalObjectLocatorModule::RegisterParameterType and are identified by a unique index. Parameter structs are stored contiguously in memory after an array of headers that specify the offset of each parameter type.
Checking for the presence of a specific parameter type is very fast, amounting to a a simple bit operation.
Variables
| Type | Name | Description | ||||||
|---|---|---|---|---|---|---|---|---|
| uint32 | AllParameters | Bitmask of all the parameters contained within this container | ||||||
| bool | bCanFreeMemory | Boolean that indicates whether we own the memory pointed to by Memory, or if it was supplied externally | ||||||
| uint16 | Capacity | Current capacity of Memory in bytes | ||||||
| uint8 * | Memory | Memory allocation of the layout [header_1 | ... | header_n | entry_0 | ... | entry_n] | |
| uint8 | Num | The number of parameters (and thus, headers) in this container |
Constructors
| Type | Name | Description | |
|---|---|---|---|
| Default constructor | |||
FResolveParameterBuffer
(
const FResolveParameterBuffer& |
Non-copyable | ||
| Non-moveable |
Destructors
| Type | Name | Description | |
|---|---|---|---|
| Destructor that calls each parameter's destructor, and frees the memory if necessary |
Functions
| Type | Name | Description | |
|---|---|---|---|
| T * | AddParameter
(
TParameterTypeHandle< T > ParameterTypeHandle, |
Add a new parameter to this container using its preregistered type handle. | |
| ParameterType * | AddParameterImpl
(
uint32 ParameterBit, |
Creates and stores a new Parameter object at the given bit. | |
| void | Destroy () |
Destroy this buffer and all its parameters | |
| const T * | Find a parameter of the specified type. | ||
| const T * | FindParameter
(
TParameterTypeHandle< T > ParameterTypeHandle |
Find a parameter within this container that was added with the specified handle. | |
| const void * | FindParameterImpl
(
uint32 ParameterBit |
Implementation function for finding a parameter ptr by its bit | |
| const FResolveParameterHeader & | Retrieve the header at the specified index | ||
| int32 | GetParameterIndex
(
uint32 ParameterBit |
Compute the index of the parameter that relates to the specified bit | |
| bool | HasParameter
(
uint32 ParameterBit |
Check whether the parameter for the specified parameter bit is present |
Operators
| Type | Name | Description | |
|---|---|---|---|
| FResolveParameterBuffer & | operator=
(
const FResolveParameterBuffer& |
||
| FResolveParameterBuffer & | operator=
(
FResolveParameterBuffer&& RHS |
Constants
| Name | Description |
|---|---|
| MaxNumParameters |