addLocationGenerator method

  1. @override
String addLocationGenerator(
  1. double latMin,
  2. double latMax,
  3. double lonMin,
  4. double lonMax,
  5. double accMin,
  6. double accMax,
  7. int timeout,
)
override

@brief Method adds a location generator for simulating location measurements. @param latMin Minimum latitude for the simulated location. @param latMax Maximum latitude for the simulated location. @param lonMin Minimum longitude for the simulated location. @param lonMax Maximum longitude for the simulated location. @param accMin Minimum accuracy for the simulated location (in meters). @param accMax Maximum accuracy for the simulated location (in meters). @param timeout Duration of the generator in milliseconds. @return Unique identifier of the created location generator.

Dart code snippet: @snippet measurement_manager_example.dart dart_MeasurementManager_addLocationGenerator

Implementation

@override
String addLocationGenerator(double latMin, double latMax, double lonMin, double lonMax, double accMin, double accMax, int timeout) {
    final _addLocationGeneratorFfi = __lib.catchArgumentError(() => __lib.nativeLibrary.lookupFunction<
        Pointer<Void> Function(Pointer<Void>, Double, Double, Double, Double, Float, Float, Int32),
        Pointer<Void> Function(Pointer<Void>, double, double, double, double, double, double, int)
      >('navigine_sdk_flutter_MeasurementManager_addLocationGenerator__LatMin_LatMax_LonMin_LonMax_AccMin_AccMax_Timeout'));
    final _latMinHandle = navigine_sdk_flutter_double_ToFfi(latMin);
    final _latMaxHandle = navigine_sdk_flutter_double_ToFfi(latMax);
    final _lonMinHandle = navigine_sdk_flutter_double_ToFfi(lonMin);
    final _lonMaxHandle = navigine_sdk_flutter_double_ToFfi(lonMax);
    final _accMinHandle = navigine_sdk_flutter_double_ToFfi(accMin);
    final _accMaxHandle = navigine_sdk_flutter_double_ToFfi(accMax);
    final _timeoutHandle = navigine_sdk_flutter_int_ToFfi(timeout);
    final _handle = this.handle;
    final __resultHandle = _addLocationGeneratorFfi(_handle, _latMinHandle, _latMaxHandle, _lonMinHandle, _lonMaxHandle, _accMinHandle, _accMaxHandle, _timeoutHandle);
    navigine_sdk_flutter_double_ReleaseFfiHandle(_latMinHandle);
    navigine_sdk_flutter_double_ReleaseFfiHandle(_latMaxHandle);
    navigine_sdk_flutter_double_ReleaseFfiHandle(_lonMinHandle);
    navigine_sdk_flutter_double_ReleaseFfiHandle(_lonMaxHandle);
    navigine_sdk_flutter_double_ReleaseFfiHandle(_accMinHandle);
    navigine_sdk_flutter_double_ReleaseFfiHandle(_accMaxHandle);
    navigine_sdk_flutter_int_ReleaseFfiHandle(_timeoutHandle);
    final _result = navigine_sdk_flutter_String_FromFfi(__resultHandle);
    navigine_sdk_flutter_String_ReleaseFfiHandle(__resultHandle);
    return _result;
}