mirror of
https://github.com/zoriya/react-native-video.git
synced 2026-06-21 17:34:18 +00:00
285 lines
14 KiB
C++
Generated
285 lines
14 KiB
C++
Generated
///
|
|
/// JHybridVideoPlayerSpec.cpp
|
|
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
/// https://github.com/mrousavy/nitro
|
|
/// Copyright © Marc Rousavy @ Margelo
|
|
///
|
|
|
|
#include "JHybridVideoPlayerSpec.hpp"
|
|
|
|
// Forward declaration of `HybridVideoPlayerSourceSpec` to properly resolve imports.
|
|
namespace margelo::nitro::video { class HybridVideoPlayerSourceSpec; }
|
|
// Forward declaration of `HybridVideoPlayerEventEmitterSpec` to properly resolve imports.
|
|
namespace margelo::nitro::video { class HybridVideoPlayerEventEmitterSpec; }
|
|
// Forward declaration of `VideoPlayerStatus` to properly resolve imports.
|
|
namespace margelo::nitro::video { enum class VideoPlayerStatus; }
|
|
// Forward declaration of `MixAudioMode` to properly resolve imports.
|
|
namespace margelo::nitro::video { enum class MixAudioMode; }
|
|
// Forward declaration of `IgnoreSilentSwitchMode` to properly resolve imports.
|
|
namespace margelo::nitro::video { enum class IgnoreSilentSwitchMode; }
|
|
// Forward declaration of `TextTrack` to properly resolve imports.
|
|
namespace margelo::nitro::video { struct TextTrack; }
|
|
|
|
#include <memory>
|
|
#include "HybridVideoPlayerSourceSpec.hpp"
|
|
#include "JHybridVideoPlayerSourceSpec.hpp"
|
|
#include "HybridVideoPlayerEventEmitterSpec.hpp"
|
|
#include "JHybridVideoPlayerEventEmitterSpec.hpp"
|
|
#include "VideoPlayerStatus.hpp"
|
|
#include "JVideoPlayerStatus.hpp"
|
|
#include "MixAudioMode.hpp"
|
|
#include "JMixAudioMode.hpp"
|
|
#include "IgnoreSilentSwitchMode.hpp"
|
|
#include "JIgnoreSilentSwitchMode.hpp"
|
|
#include "TextTrack.hpp"
|
|
#include <optional>
|
|
#include "JTextTrack.hpp"
|
|
#include <string>
|
|
#include <NitroModules/Promise.hpp>
|
|
#include <NitroModules/JPromise.hpp>
|
|
#include <NitroModules/JUnit.hpp>
|
|
#include <vector>
|
|
#include <NitroModules/Null.hpp>
|
|
#include <variant>
|
|
#include "JVariant_NullType_HybridVideoPlayerSourceSpec.hpp"
|
|
#include <NitroModules/JNull.hpp>
|
|
#include "JVariant_NullType_TextTrack.hpp"
|
|
|
|
namespace margelo::nitro::video {
|
|
|
|
std::shared_ptr<JHybridVideoPlayerSpec> JHybridVideoPlayerSpec::JavaPart::getJHybridVideoPlayerSpec() {
|
|
auto hybridObject = JHybridObject::JavaPart::getJHybridObject();
|
|
auto castHybridObject = std::dynamic_pointer_cast<JHybridVideoPlayerSpec>(hybridObject);
|
|
if (castHybridObject == nullptr) [[unlikely]] {
|
|
throw std::runtime_error("Failed to downcast JHybridObject to JHybridVideoPlayerSpec!");
|
|
}
|
|
return castHybridObject;
|
|
}
|
|
|
|
jni::local_ref<JHybridVideoPlayerSpec::CxxPart::jhybriddata> JHybridVideoPlayerSpec::CxxPart::initHybrid(jni::alias_ref<jhybridobject> jThis) {
|
|
return makeCxxInstance(jThis);
|
|
}
|
|
|
|
std::shared_ptr<JHybridObject> JHybridVideoPlayerSpec::CxxPart::createHybridObject(const jni::local_ref<JHybridObject::JavaPart>& javaPart) {
|
|
auto castJavaPart = jni::dynamic_ref_cast<JHybridVideoPlayerSpec::JavaPart>(javaPart);
|
|
if (castJavaPart == nullptr) [[unlikely]] {
|
|
throw std::runtime_error("Failed to cast JHybridObject::JavaPart to JHybridVideoPlayerSpec::JavaPart!");
|
|
}
|
|
return std::make_shared<JHybridVideoPlayerSpec>(castJavaPart);
|
|
}
|
|
|
|
void JHybridVideoPlayerSpec::CxxPart::registerNatives() {
|
|
registerHybrid({
|
|
makeNativeMethod("initHybrid", JHybridVideoPlayerSpec::CxxPart::initHybrid),
|
|
});
|
|
}
|
|
|
|
// Properties
|
|
std::shared_ptr<HybridVideoPlayerSourceSpec> JHybridVideoPlayerSpec::getSource() {
|
|
static const auto method = _javaPart->javaClassStatic()->getMethod<jni::local_ref<JHybridVideoPlayerSourceSpec::JavaPart>()>("getSource");
|
|
auto __result = method(_javaPart);
|
|
return __result->getJHybridVideoPlayerSourceSpec();
|
|
}
|
|
std::shared_ptr<HybridVideoPlayerEventEmitterSpec> JHybridVideoPlayerSpec::getEventEmitter() {
|
|
static const auto method = _javaPart->javaClassStatic()->getMethod<jni::local_ref<JHybridVideoPlayerEventEmitterSpec::JavaPart>()>("getEventEmitter");
|
|
auto __result = method(_javaPart);
|
|
return __result->getJHybridVideoPlayerEventEmitterSpec();
|
|
}
|
|
bool JHybridVideoPlayerSpec::getShowNotificationControls() {
|
|
static const auto method = _javaPart->javaClassStatic()->getMethod<jboolean()>("getShowNotificationControls");
|
|
auto __result = method(_javaPart);
|
|
return static_cast<bool>(__result);
|
|
}
|
|
void JHybridVideoPlayerSpec::setShowNotificationControls(bool showNotificationControls) {
|
|
static const auto method = _javaPart->javaClassStatic()->getMethod<void(jboolean /* showNotificationControls */)>("setShowNotificationControls");
|
|
method(_javaPart, showNotificationControls);
|
|
}
|
|
VideoPlayerStatus JHybridVideoPlayerSpec::getStatus() {
|
|
static const auto method = _javaPart->javaClassStatic()->getMethod<jni::local_ref<JVideoPlayerStatus>()>("getStatus");
|
|
auto __result = method(_javaPart);
|
|
return __result->toCpp();
|
|
}
|
|
double JHybridVideoPlayerSpec::getDuration() {
|
|
static const auto method = _javaPart->javaClassStatic()->getMethod<double()>("getDuration");
|
|
auto __result = method(_javaPart);
|
|
return __result;
|
|
}
|
|
double JHybridVideoPlayerSpec::getVolume() {
|
|
static const auto method = _javaPart->javaClassStatic()->getMethod<double()>("getVolume");
|
|
auto __result = method(_javaPart);
|
|
return __result;
|
|
}
|
|
void JHybridVideoPlayerSpec::setVolume(double volume) {
|
|
static const auto method = _javaPart->javaClassStatic()->getMethod<void(double /* volume */)>("setVolume");
|
|
method(_javaPart, volume);
|
|
}
|
|
double JHybridVideoPlayerSpec::getCurrentTime() {
|
|
static const auto method = _javaPart->javaClassStatic()->getMethod<double()>("getCurrentTime");
|
|
auto __result = method(_javaPart);
|
|
return __result;
|
|
}
|
|
void JHybridVideoPlayerSpec::setCurrentTime(double currentTime) {
|
|
static const auto method = _javaPart->javaClassStatic()->getMethod<void(double /* currentTime */)>("setCurrentTime");
|
|
method(_javaPart, currentTime);
|
|
}
|
|
bool JHybridVideoPlayerSpec::getMuted() {
|
|
static const auto method = _javaPart->javaClassStatic()->getMethod<jboolean()>("getMuted");
|
|
auto __result = method(_javaPart);
|
|
return static_cast<bool>(__result);
|
|
}
|
|
void JHybridVideoPlayerSpec::setMuted(bool muted) {
|
|
static const auto method = _javaPart->javaClassStatic()->getMethod<void(jboolean /* muted */)>("setMuted");
|
|
method(_javaPart, muted);
|
|
}
|
|
bool JHybridVideoPlayerSpec::getLoop() {
|
|
static const auto method = _javaPart->javaClassStatic()->getMethod<jboolean()>("getLoop");
|
|
auto __result = method(_javaPart);
|
|
return static_cast<bool>(__result);
|
|
}
|
|
void JHybridVideoPlayerSpec::setLoop(bool loop) {
|
|
static const auto method = _javaPart->javaClassStatic()->getMethod<void(jboolean /* loop */)>("setLoop");
|
|
method(_javaPart, loop);
|
|
}
|
|
double JHybridVideoPlayerSpec::getRate() {
|
|
static const auto method = _javaPart->javaClassStatic()->getMethod<double()>("getRate");
|
|
auto __result = method(_javaPart);
|
|
return __result;
|
|
}
|
|
void JHybridVideoPlayerSpec::setRate(double rate) {
|
|
static const auto method = _javaPart->javaClassStatic()->getMethod<void(double /* rate */)>("setRate");
|
|
method(_javaPart, rate);
|
|
}
|
|
MixAudioMode JHybridVideoPlayerSpec::getMixAudioMode() {
|
|
static const auto method = _javaPart->javaClassStatic()->getMethod<jni::local_ref<JMixAudioMode>()>("getMixAudioMode");
|
|
auto __result = method(_javaPart);
|
|
return __result->toCpp();
|
|
}
|
|
void JHybridVideoPlayerSpec::setMixAudioMode(MixAudioMode mixAudioMode) {
|
|
static const auto method = _javaPart->javaClassStatic()->getMethod<void(jni::alias_ref<JMixAudioMode> /* mixAudioMode */)>("setMixAudioMode");
|
|
method(_javaPart, JMixAudioMode::fromCpp(mixAudioMode));
|
|
}
|
|
IgnoreSilentSwitchMode JHybridVideoPlayerSpec::getIgnoreSilentSwitchMode() {
|
|
static const auto method = _javaPart->javaClassStatic()->getMethod<jni::local_ref<JIgnoreSilentSwitchMode>()>("getIgnoreSilentSwitchMode");
|
|
auto __result = method(_javaPart);
|
|
return __result->toCpp();
|
|
}
|
|
void JHybridVideoPlayerSpec::setIgnoreSilentSwitchMode(IgnoreSilentSwitchMode ignoreSilentSwitchMode) {
|
|
static const auto method = _javaPart->javaClassStatic()->getMethod<void(jni::alias_ref<JIgnoreSilentSwitchMode> /* ignoreSilentSwitchMode */)>("setIgnoreSilentSwitchMode");
|
|
method(_javaPart, JIgnoreSilentSwitchMode::fromCpp(ignoreSilentSwitchMode));
|
|
}
|
|
bool JHybridVideoPlayerSpec::getPlayInBackground() {
|
|
static const auto method = _javaPart->javaClassStatic()->getMethod<jboolean()>("getPlayInBackground");
|
|
auto __result = method(_javaPart);
|
|
return static_cast<bool>(__result);
|
|
}
|
|
void JHybridVideoPlayerSpec::setPlayInBackground(bool playInBackground) {
|
|
static const auto method = _javaPart->javaClassStatic()->getMethod<void(jboolean /* playInBackground */)>("setPlayInBackground");
|
|
method(_javaPart, playInBackground);
|
|
}
|
|
bool JHybridVideoPlayerSpec::getPlayWhenInactive() {
|
|
static const auto method = _javaPart->javaClassStatic()->getMethod<jboolean()>("getPlayWhenInactive");
|
|
auto __result = method(_javaPart);
|
|
return static_cast<bool>(__result);
|
|
}
|
|
void JHybridVideoPlayerSpec::setPlayWhenInactive(bool playWhenInactive) {
|
|
static const auto method = _javaPart->javaClassStatic()->getMethod<void(jboolean /* playWhenInactive */)>("setPlayWhenInactive");
|
|
method(_javaPart, playWhenInactive);
|
|
}
|
|
bool JHybridVideoPlayerSpec::getIsPlaying() {
|
|
static const auto method = _javaPart->javaClassStatic()->getMethod<jboolean()>("isPlaying");
|
|
auto __result = method(_javaPart);
|
|
return static_cast<bool>(__result);
|
|
}
|
|
std::optional<TextTrack> JHybridVideoPlayerSpec::getSelectedTrack() {
|
|
static const auto method = _javaPart->javaClassStatic()->getMethod<jni::local_ref<JTextTrack>()>("getSelectedTrack");
|
|
auto __result = method(_javaPart);
|
|
return __result != nullptr ? std::make_optional(__result->toCpp()) : std::nullopt;
|
|
}
|
|
|
|
// Methods
|
|
std::shared_ptr<Promise<void>> JHybridVideoPlayerSpec::replaceSourceAsync(const std::optional<std::variant<nitro::NullType, std::shared_ptr<HybridVideoPlayerSourceSpec>>>& source) {
|
|
static const auto method = _javaPart->javaClassStatic()->getMethod<jni::local_ref<JPromise::javaobject>(jni::alias_ref<JVariant_NullType_HybridVideoPlayerSourceSpec> /* source */)>("replaceSourceAsync");
|
|
auto __result = method(_javaPart, source.has_value() ? JVariant_NullType_HybridVideoPlayerSourceSpec::fromCpp(source.value()) : nullptr);
|
|
return [&]() {
|
|
auto __promise = Promise<void>::create();
|
|
__result->cthis()->addOnResolvedListener([=](const jni::alias_ref<jni::JObject>& /* unit */) {
|
|
__promise->resolve();
|
|
});
|
|
__result->cthis()->addOnRejectedListener([=](const jni::alias_ref<jni::JThrowable>& __throwable) {
|
|
jni::JniException __jniError(__throwable);
|
|
__promise->reject(std::make_exception_ptr(__jniError));
|
|
});
|
|
return __promise;
|
|
}();
|
|
}
|
|
std::vector<TextTrack> JHybridVideoPlayerSpec::getAvailableTextTracks() {
|
|
static const auto method = _javaPart->javaClassStatic()->getMethod<jni::local_ref<jni::JArrayClass<JTextTrack>>()>("getAvailableTextTracks");
|
|
auto __result = method(_javaPart);
|
|
return [&]() {
|
|
size_t __size = __result->size();
|
|
std::vector<TextTrack> __vector;
|
|
__vector.reserve(__size);
|
|
for (size_t __i = 0; __i < __size; __i++) {
|
|
auto __element = __result->getElement(__i);
|
|
__vector.push_back(__element->toCpp());
|
|
}
|
|
return __vector;
|
|
}();
|
|
}
|
|
void JHybridVideoPlayerSpec::selectTextTrack(const std::optional<std::variant<nitro::NullType, TextTrack>>& textTrack) {
|
|
static const auto method = _javaPart->javaClassStatic()->getMethod<void(jni::alias_ref<JVariant_NullType_TextTrack> /* textTrack */)>("selectTextTrack");
|
|
method(_javaPart, textTrack.has_value() ? JVariant_NullType_TextTrack::fromCpp(textTrack.value()) : nullptr);
|
|
}
|
|
void JHybridVideoPlayerSpec::release() {
|
|
static const auto method = _javaPart->javaClassStatic()->getMethod<void()>("release");
|
|
method(_javaPart);
|
|
}
|
|
std::shared_ptr<Promise<void>> JHybridVideoPlayerSpec::initialize() {
|
|
static const auto method = _javaPart->javaClassStatic()->getMethod<jni::local_ref<JPromise::javaobject>()>("initialize");
|
|
auto __result = method(_javaPart);
|
|
return [&]() {
|
|
auto __promise = Promise<void>::create();
|
|
__result->cthis()->addOnResolvedListener([=](const jni::alias_ref<jni::JObject>& /* unit */) {
|
|
__promise->resolve();
|
|
});
|
|
__result->cthis()->addOnRejectedListener([=](const jni::alias_ref<jni::JThrowable>& __throwable) {
|
|
jni::JniException __jniError(__throwable);
|
|
__promise->reject(std::make_exception_ptr(__jniError));
|
|
});
|
|
return __promise;
|
|
}();
|
|
}
|
|
std::shared_ptr<Promise<void>> JHybridVideoPlayerSpec::preload() {
|
|
static const auto method = _javaPart->javaClassStatic()->getMethod<jni::local_ref<JPromise::javaobject>()>("preload");
|
|
auto __result = method(_javaPart);
|
|
return [&]() {
|
|
auto __promise = Promise<void>::create();
|
|
__result->cthis()->addOnResolvedListener([=](const jni::alias_ref<jni::JObject>& /* unit */) {
|
|
__promise->resolve();
|
|
});
|
|
__result->cthis()->addOnRejectedListener([=](const jni::alias_ref<jni::JThrowable>& __throwable) {
|
|
jni::JniException __jniError(__throwable);
|
|
__promise->reject(std::make_exception_ptr(__jniError));
|
|
});
|
|
return __promise;
|
|
}();
|
|
}
|
|
void JHybridVideoPlayerSpec::play() {
|
|
static const auto method = _javaPart->javaClassStatic()->getMethod<void()>("play");
|
|
method(_javaPart);
|
|
}
|
|
void JHybridVideoPlayerSpec::pause() {
|
|
static const auto method = _javaPart->javaClassStatic()->getMethod<void()>("pause");
|
|
method(_javaPart);
|
|
}
|
|
void JHybridVideoPlayerSpec::seekBy(double time) {
|
|
static const auto method = _javaPart->javaClassStatic()->getMethod<void(double /* time */)>("seekBy");
|
|
method(_javaPart, time);
|
|
}
|
|
void JHybridVideoPlayerSpec::seekTo(double time) {
|
|
static const auto method = _javaPart->javaClassStatic()->getMethod<void(double /* time */)>("seekTo");
|
|
method(_javaPart, time);
|
|
}
|
|
|
|
} // namespace margelo::nitro::video
|