...
Similar to other interfaces dealing with communications to the VictoR device, asynchronous calls to the device will be made available from the interface.
OS Requirements
The Two version of this interface will be used by both Windows and Android applicationsbuilt: one to support communications on Windows platforms and one for Android platforms.
Standardization
This interface defines the contract that any communication device or device manager built within the Victor SDK will follow.
Ease of Use
The interface will assist in abstracting away the details of a specific communications protocol.
...
The sequence diagram below illustrates an abstracted workflow for connecting to a device. Users can expect any device manager that uses the Device Manager interface will provide a means to begin a scan for devices. This scan can either be provided a callback for any devices found during the scan, or simply wait for a list of found devices to be provided at the end of a scan (the below diagram illustrates the first case). On finding several devices, a connect for one of the found devices is called on the Device Manager. This triggers a creation of an object using the Device interface with definitions for any communications protocol specific functionality. Once a successful connection has been made to the physical device, a task result of a bool is returned by the Device, which propagates back to the end-user application. Important items to make note of are that any asynchronous calls made within this sequence are illustrated by open arrows with solid lines, whereas dotted lines with open -back arrows illustrate the results of asynchronous tasks.
...