
/**
 * This code was generated by [react-native-codegen](https://www.npmjs.com/package/react-native-codegen).
 *
 * Do not edit this file as changes may cause incorrect behavior and will be lost
 * once the code is regenerated.
 *
 * @generated by codegen project: GenerateModuleJniCpp.js
 */

#include "NativeAhrsSpec.h"

namespace facebook::react {

static facebook::jsi::Value __hostFunction_NativeAhrsSpecJSI_startAhrs(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
  static jmethodID cachedMethodId = nullptr;
  return static_cast<JavaTurboModule &>(turboModule).invokeJavaMethod(rt, VoidKind, "startAhrs", "()V", args, count, cachedMethodId);
}

static facebook::jsi::Value __hostFunction_NativeAhrsSpecJSI_stopAhrs(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
  static jmethodID cachedMethodId = nullptr;
  return static_cast<JavaTurboModule &>(turboModule).invokeJavaMethod(rt, VoidKind, "stopAhrs", "()V", args, count, cachedMethodId);
}

static facebook::jsi::Value __hostFunction_NativeAhrsSpecJSI_resetAhrs(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
  static jmethodID cachedMethodId = nullptr;
  return static_cast<JavaTurboModule &>(turboModule).invokeJavaMethod(rt, VoidKind, "resetAhrs", "()V", args, count, cachedMethodId);
}

static facebook::jsi::Value __hostFunction_NativeAhrsSpecJSI_levelAhrs(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
  static jmethodID cachedMethodId = nullptr;
  return static_cast<JavaTurboModule &>(turboModule).invokeJavaMethod(rt, VoidKind, "levelAhrs", "()V", args, count, cachedMethodId);
}

static facebook::jsi::Value __hostFunction_NativeAhrsSpecJSI_setAhrsRate(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
  static jmethodID cachedMethodId = nullptr;
  return static_cast<JavaTurboModule &>(turboModule).invokeJavaMethod(rt, VoidKind, "setAhrsRate", "(D)V", args, count, cachedMethodId);
}

static facebook::jsi::Value __hostFunction_NativeAhrsSpecJSI_setAhrsGain(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
  static jmethodID cachedMethodId = nullptr;
  return static_cast<JavaTurboModule &>(turboModule).invokeJavaMethod(rt, VoidKind, "setAhrsGain", "(D)V", args, count, cachedMethodId);
}

static facebook::jsi::Value __hostFunction_NativeAhrsSpecJSI_setAhrsRotation(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
  static jmethodID cachedMethodId = nullptr;
  return static_cast<JavaTurboModule &>(turboModule).invokeJavaMethod(rt, VoidKind, "setAhrsRotation", "(Ljava/lang/String;)V", args, count, cachedMethodId);
}

NativeAhrsSpecJSI::NativeAhrsSpecJSI(const JavaTurboModule::InitParams &params)
  : JavaTurboModule(params) {
  methodMap_["startAhrs"] = MethodMetadata {0, __hostFunction_NativeAhrsSpecJSI_startAhrs};
  methodMap_["stopAhrs"] = MethodMetadata {0, __hostFunction_NativeAhrsSpecJSI_stopAhrs};
  methodMap_["resetAhrs"] = MethodMetadata {0, __hostFunction_NativeAhrsSpecJSI_resetAhrs};
  methodMap_["levelAhrs"] = MethodMetadata {0, __hostFunction_NativeAhrsSpecJSI_levelAhrs};
  methodMap_["setAhrsRate"] = MethodMetadata {1, __hostFunction_NativeAhrsSpecJSI_setAhrsRate};
  methodMap_["setAhrsGain"] = MethodMetadata {1, __hostFunction_NativeAhrsSpecJSI_setAhrsGain};
  methodMap_["setAhrsRotation"] = MethodMetadata {1, __hostFunction_NativeAhrsSpecJSI_setAhrsRotation};
  eventEmitterMap_["onAhrsUpdate"] = std::make_shared<AsyncEventEmitter<folly::dynamic>>();
  configureEventEmitterCallback();
}

std::shared_ptr<TurboModule> NativeAhrsSpec_ModuleProvider(const std::string &moduleName, const JavaTurboModule::InitParams &params) {
  if (moduleName == "NativeAhrs") {
    return std::make_shared<NativeAhrsSpecJSI>(params);
  }
  return nullptr;
}

} // namespace facebook::react
