Navigation
API > API/Plugins > API/Plugins/OptimusCore
References
| Module | OptimusCore |
| Header | /Engine/Plugins/Animation/DeformerGraph/Source/OptimusCore/Public/OptimusDataDomain.h |
| Include | #include "OptimusDataDomain.h" |
Syntax
USTRUCT&40;&41;
struct FOptimusDataDomain
Remarks
A struct to specify the domain range of a resource buffer, as defined by compute kernels and data interfaces. Data domains can be multi-dimensional, expression-based, or empty. Empty domains on pins imply a single value, like a parameter.
Domains come in two flavors, either as a pre-defined list with a multiplier, or as an arithmetic expression. For domains with a multiplier, the multiplier only applies to the innermost dimension (e.g. Vertex.Bone x 2, allows for two values per-bone, but not two values per-bone and per-vertex)
The expression can take any execution domain, or none (e.g. "Vertex * 2 + 1", "Triangle * 2 + Vertex * 6", "1024"). If an expression is used, the domain is one-dimensional. As of now, expression domain comparison is done on the string level, such that "Vertex * 2" and "2 * Vertex" are not marked as compatible domains.
Variables
| Type | Name | Description | |
|---|---|---|---|
| TArray< FName > | DimensionNames | The name of the context that this resource/kernel applies to. | |
| FString | Expression | ||
| int32 | Multiplier | ||
| EOptimusDataDomainType | Type |
Constructors
| Type | Name | Description | |
|---|---|---|---|
FOptimusDataDomain
(
TArray< FName > InDimensionNames |
|||
FOptimusDataDomain
(
FString InExpression |
|||
FOptimusDataDomain
(
TArray< FName > InDimensionNames, |
Functions
| Type | Name | Description | |
|---|---|---|---|
| void | |||
| FOptimusDataDomain | FromString
(
const FString& InString |
Create a data domain object from a serializable string generated by the above function. | |
| TOptional< int32 > | GetElementCount
(
TMap< FName, int32 > InDomainCounts |
A convenience function to compute element counts from a data domain based on execution domain element counts. | |
| bool | IsSingleton () |
Convenience function to check if this data domain is a singleton | |
| void | PostSerialize
(
const FArchive& Ar |
||
| FString | ToString () |
Convert the data domain to a text serializable string |
Operators
| Type | Name | Description | |
|---|---|---|---|
| bool | operator!=
(
const FOptimusDataDomain& InOtherDomain |
||
| bool | operator==
(
const FOptimusDataDomain& InOtherDomain |