VectorPropagationParameterConfigureIndicesOnEvaluator Method |
This is called by PropagationStateElement instances using VectorPropagationParameter so that the element can update the indices used to identify the individual values corresponding to this vector in the state during evaluation. In general, this should only be called from within the GetConverter(EvaluatorGroup, MotionInt32) method when configuring the indices provided by the NumericalPropagatorDefinition.
The EvaluatorGroup will create an evaluator based on the StateParameter and the IntegrationAxes and cache it for future calls. This method updates the instance variables for the indices so that it will reflect the vector's elements within the state during evaluation. In general, this breaks the "Evaluator Pattern" by altering data on an evaluator after construction. However, so long as it is done once and only once prior to any evaluation this is deemed as following the "Evaluator Pattern" which stipulates that an evaluator should always return the same value for a given time.
Namespace: AGI.Foundation.Geometry
public static void ConfigureIndicesOnEvaluator( EvaluatorGroup group, VectorPropagationParameter vector, Motion<int[]> stateInputIndices )