initialize method

Future<void> initialize()

Initializes the texture.

Throws a DiveTextureException if the initialization fails.

Implementation

Future<void> initialize() async {
  ArgumentError.checkNotNull(trackingUUID, 'trackingUUID');
  if (_isDisposed || _isInitialized) {
    return Future<void>.value();
  }
  try {
    _creatingCompleter = Completer<void>();

    final int textureId = await obslib.initializeTexture(trackingUUID: trackingUUID!);
    _textureId = textureId;
    _isInitialized = true;
  } on PlatformException catch (e) {
    throw DiveTextureException(e.code, e.message);
  }
  _creatingCompleter!.complete();
  return _creatingCompleter!.future;
}