init method

  1. @override
Future<void> init()
override

Starts running this isolate's "main" code. Usually used to spawn children.

Implementation

@override
Future<void> init() async {
  super.init();
  for (final name in CameraName.values) {
    switch (name) {
      case CameraName.CAMERA_NAME_UNDEFINED: continue;
      case CameraName.ROVER_FRONT: continue;  // shares feed with AUTONOMY_DEPTH
      case CameraName.AUTONOMY_DEPTH:
        final details = getRealsenseDetails(name);
        final isolate = RealSenseIsolate(details: details);
        await spawn(isolate);
      // All other cameras share the same logic, even future cameras
      default:  // ignore: no_default_cases
        final details = getDefaultDetails(name);
        final isolate = OpenCVCameraIsolate(details: details);
        await spawn(isolate);
    }
  }
}