#pragma once #include #include #include #include #include #include #include "UIScheduler.h" namespace reanimated { using namespace facebook; class AndroidUIScheduler : public jni::HybridClass { public: static auto constexpr kJavaDescriptor = "Lcom/swmansion/reanimated/AndroidUIScheduler;"; static jni::local_ref initHybrid( jni::alias_ref jThis); static void registerNatives(); std::shared_ptr getUIScheduler() { return uiScheduler_; } void scheduleTriggerOnUI(); private: friend HybridBase; void triggerUI(); jni::global_ref javaPart_; std::shared_ptr uiScheduler_; explicit AndroidUIScheduler( jni::alias_ref jThis); }; } // namespace reanimated