CameraManager class

A parent isolate that spawns CameraIsolates to manage the cameras.

With one isolate per camera, each camera can read in parallel. This class sends VideoCommands from the dashboard to the appropriate CameraIsolate, and receives IsolatePayloads which it uses to read an image from native memory and send to the dashboard. By not sending the frame from child isolate to the parent (just the pointer), we save a whole JPG image's worth of bytes from every camera, every frame, every second. That could be up to 5 MB per second of savings.

Inheritance
  • Object
  • Service
  • CameraManager

Constructors

CameraManager()

Properties

hashCode int
The hash code for this object.
no setterinherited
parent IsolateParent<VideoCommand, IsolatePayload>
The parent isolate that spawns the camera isolates.
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited

Methods

dispose() Future<void>
Closes the connection to the device.
override
init() Future<bool>
Initializes the connection to the device.
override
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
onData(IsolatePayload data) → void
Handles data coming from the child isolates.
onDisconnect() Future<void>
A callback to run when the program has disconnected from the Dashboard.
inherited
stopAll() → void
Stops all the cameras managed by this class.
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited