Hi,
I don’t know what is the behavior you are looking for, so from what I’ve understood from your code I can say you have done most of the work, so:
- To create your
FInstancedStruct
useUChooserFunctionLibrary
:
FInstancedStruct InstancedStruct = UChooserFunctionLibrary::MakeEvaluateChooser(ChooserTable);
- To add input (entry) to your
FChooserEvaluationContext
useUChooserFunctionLibrary
or its functions:
FChooserEvaluationContext EvaluationContext;
// Object
UChooserFunctionLibrary::AddChooserObjectInput(EvaluationContext, Object);
EvaluationContext.AddObjectParam(Object);
// Struct
UChooserFunctionLibrary::AddChooserStructInput(EvaluationContext, Struct);
EvaluationContext.AddStructParam(Struct)
- To get your out struct you can use the function below, since its params are references:
UChooserFunctionLibrary::GetChooserStructOutput(params)
- After that you can proceed with
UChooserFunctionLibrary::EvaluateChooserMult(params)
;
If I can give you a suggest, simple create a function that do all the work, and also return what you expect.
May that help you.
Bye