A temporary collection of data available for enumeration.
You can enumerate the Elements within using a foreach loop over this collection.
Additional resources: ControlContext.SendData, ReturnDataContext.SendData.
struct ThingToCommunicate { public float MyData; } struct OtherThing { public int MyOtherData; } public void DataAvailable(DataAvailableContext context) { float myData = 0f; foreach(var element in context.GetAvailableData()) { if (element.TryGetData(out ThingToCommunicate thing)) { myData = thing.MyData; } else if (element.TryGetData(out OtherThing otherThing)) { myData = MathF.PI * otherThing.MyOtherData; } } }
Above example illustrates the pattern of how to enumerate ProcessorAvailableData, for instance from within Processor.IProcessor.DataAvailable or IProcessorControl.Update.