Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

The Abstract Communications Interface will provide a set of interfaces and abstract classes that serve as a layer between communicating with a device and the protocol used by said device. DevicesDevice, as well as the DeviceManager classes, will utilize this communications interface and implement the details of their specific communications protocol internally. This interface will be utilized in both Windows and Android implementations of the Communications library.

...

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 implementing 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 arrows illustrate the results of asynchronous tasks.

...

...

Image AddedImage Added

Image Added

Image Added

Image Added