/// /// OmniOnLoad.cpp /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE. /// https://github.com/mrousavy/nitro /// Copyright © Marc Rousavy @ Margelo /// #ifndef BUILDING_OMNI_WITH_GENERATED_CMAKE_PROJECT #error OmniOnLoad.cpp is not being built with the autogenerated CMakeLists.txt project. Is a different CMakeLists.txt building this? #endif #include "OmniOnLoad.hpp" #include #include #include #include "JHybridOmniEventMapSpec.hpp" #include "JFunc_void.hpp" #include "JFunc_void_std__string_std__string.hpp" #include "JFunc_void_std__string.hpp" #include "JFunc_void_Track.hpp" #include "JFunc_void_std__optional_Track_.hpp" #include "JFunc_void_Rendition.hpp" #include "JHybridOmniPlayerSpec.hpp" #include "JHybridOmniPlayerFactorySpec.hpp" #include "JHybridOmniViewSpec.hpp" #include "views/JHybridOmniViewStateUpdater.hpp" #include namespace margelo::nitro::omni { int initialize(JavaVM* vm) { return facebook::jni::initialize(vm, []() { ::margelo::nitro::omni::registerAllNatives(); }); } struct JHybridOmniViewSpecImpl: public jni::JavaClass { static constexpr auto kJavaDescriptor = "Ldev/zoriya/omni/HybridOmniView;"; static std::shared_ptr create() { static const auto constructorFn = javaClassStatic()->getConstructor(); jni::local_ref javaPart = javaClassStatic()->newObject(constructorFn); return javaPart->getJHybridOmniViewSpec(); } }; struct JHybridOmniPlayerFactorySpecImpl: public jni::JavaClass { static constexpr auto kJavaDescriptor = "Ldev/zoriya/omni/HybridOmniPlayerFactory;"; static std::shared_ptr create() { static const auto constructorFn = javaClassStatic()->getConstructor(); jni::local_ref javaPart = javaClassStatic()->newObject(constructorFn); return javaPart->getJHybridOmniPlayerFactorySpec(); } }; void registerAllNatives() { using namespace margelo::nitro; using namespace margelo::nitro::omni; // Register native JNI methods margelo::nitro::omni::JHybridOmniEventMapSpec::CxxPart::registerNatives(); margelo::nitro::omni::JFunc_void_cxx::registerNatives(); margelo::nitro::omni::JFunc_void_std__string_std__string_cxx::registerNatives(); margelo::nitro::omni::JFunc_void_std__string_cxx::registerNatives(); margelo::nitro::omni::JFunc_void_Track_cxx::registerNatives(); margelo::nitro::omni::JFunc_void_std__optional_Track__cxx::registerNatives(); margelo::nitro::omni::JFunc_void_Rendition_cxx::registerNatives(); margelo::nitro::omni::JHybridOmniPlayerSpec::CxxPart::registerNatives(); margelo::nitro::omni::JHybridOmniPlayerFactorySpec::CxxPart::registerNatives(); margelo::nitro::omni::JHybridOmniViewSpec::CxxPart::registerNatives(); margelo::nitro::omni::views::JHybridOmniViewStateUpdater::registerNatives(); // Register Nitro Hybrid Objects HybridObjectRegistry::registerHybridObjectConstructor( "OmniView", []() -> std::shared_ptr { return JHybridOmniViewSpecImpl::create(); } ); HybridObjectRegistry::registerHybridObjectConstructor( "OmniPlayerFactory", []() -> std::shared_ptr { return JHybridOmniPlayerFactorySpecImpl::create(); } ); } } // namespace margelo::nitro::omni