#ifndef TGCALLS_ANDROID_CONTEXT_H #define TGCALLS_ANDROID_CONTEXT_H #include "PlatformContext.h" #include #include namespace tgcalls { class AndroidContext final : public PlatformContext { public: AndroidContext(JNIEnv *env, jobject peerInstance, jobject groupInstance, bool screencast); ~AndroidContext() override; jobject getJavaCapturer(); jobject getJavaPeerInstance(); jobject getJavaGroupInstance(); jclass getJavaCapturerClass(); void setJavaPeerInstance(JNIEnv *env, jobject instance); void setJavaGroupInstance(JNIEnv *env, jobject instance); std::vector> audioStreamTasks; std::vector> videoStreamTasks; std::vector> descriptionTasks; private: jclass VideoCapturerDeviceClass = nullptr; jobject javaCapturer = nullptr; jobject javaPeerInstance = nullptr; jobject javaGroupInstance = nullptr; }; } // namespace tgcalls #endif