mirror of
https://github.com/zoriya/react-native-omni.git
synced 2026-08-06 06:07:30 +00:00
148 lines
6.7 KiB
C++
Generated
148 lines
6.7 KiB
C++
Generated
///
|
|
/// JHybridOmniPlayerPropsSpec.cpp
|
|
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
/// https://github.com/mrousavy/nitro
|
|
/// Copyright © Marc Rousavy @ Margelo
|
|
///
|
|
|
|
#include "JHybridOmniPlayerPropsSpec.hpp"
|
|
|
|
// Forward declaration of `VideoSrc` to properly resolve imports.
|
|
namespace margelo::nitro::omni { struct VideoSrc; }
|
|
// Forward declaration of `Subtitle` to properly resolve imports.
|
|
namespace margelo::nitro::omni { struct Subtitle; }
|
|
// Forward declaration of `Metadata` to properly resolve imports.
|
|
namespace margelo::nitro::omni { struct Metadata; }
|
|
// Forward declaration of `MixAudioMode` to properly resolve imports.
|
|
namespace margelo::nitro::omni { enum class MixAudioMode; }
|
|
|
|
#include "VideoSrc.hpp"
|
|
#include <vector>
|
|
#include "JVideoSrc.hpp"
|
|
#include <string>
|
|
#include <optional>
|
|
#include <unordered_map>
|
|
#include "Subtitle.hpp"
|
|
#include "JSubtitle.hpp"
|
|
#include "Metadata.hpp"
|
|
#include "JMetadata.hpp"
|
|
#include "MixAudioMode.hpp"
|
|
#include "JMixAudioMode.hpp"
|
|
|
|
namespace margelo::nitro::omni {
|
|
|
|
std::shared_ptr<JHybridOmniPlayerPropsSpec> JHybridOmniPlayerPropsSpec::JavaPart::getJHybridOmniPlayerPropsSpec() {
|
|
auto hybridObject = JHybridObject::JavaPart::getJHybridObject();
|
|
auto castHybridObject = std::dynamic_pointer_cast<JHybridOmniPlayerPropsSpec>(hybridObject);
|
|
if (castHybridObject == nullptr) [[unlikely]] {
|
|
throw std::runtime_error("Failed to downcast JHybridObject to JHybridOmniPlayerPropsSpec!");
|
|
}
|
|
return castHybridObject;
|
|
}
|
|
|
|
jni::local_ref<JHybridOmniPlayerPropsSpec::CxxPart::jhybriddata> JHybridOmniPlayerPropsSpec::CxxPart::initHybrid(jni::alias_ref<jhybridobject> jThis) {
|
|
return makeCxxInstance(jThis);
|
|
}
|
|
|
|
std::shared_ptr<JHybridObject> JHybridOmniPlayerPropsSpec::CxxPart::createHybridObject(const jni::local_ref<JHybridObject::JavaPart>& javaPart) {
|
|
auto castJavaPart = jni::dynamic_ref_cast<JHybridOmniPlayerPropsSpec::JavaPart>(javaPart);
|
|
if (castJavaPart == nullptr) [[unlikely]] {
|
|
throw std::runtime_error("Failed to cast JHybridObject::JavaPart to JHybridOmniPlayerPropsSpec::JavaPart!");
|
|
}
|
|
return std::make_shared<JHybridOmniPlayerPropsSpec>(castJavaPart);
|
|
}
|
|
|
|
void JHybridOmniPlayerPropsSpec::CxxPart::registerNatives() {
|
|
registerHybrid({
|
|
makeNativeMethod("initHybrid", JHybridOmniPlayerPropsSpec::CxxPart::initHybrid),
|
|
});
|
|
}
|
|
|
|
// Properties
|
|
std::vector<VideoSrc> JHybridOmniPlayerPropsSpec::getSrc() {
|
|
static const auto method = _javaPart->javaClassStatic()->getMethod<jni::local_ref<jni::JArrayClass<JVideoSrc>>()>("getSrc");
|
|
auto __result = method(_javaPart);
|
|
return [&]() {
|
|
size_t __size = __result->size();
|
|
std::vector<VideoSrc> __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 JHybridOmniPlayerPropsSpec::setSrc(const std::vector<VideoSrc>& src) {
|
|
static const auto method = _javaPart->javaClassStatic()->getMethod<void(jni::alias_ref<jni::JArrayClass<JVideoSrc>> /* src */)>("setSrc");
|
|
method(_javaPart, [&]() {
|
|
size_t __size = src.size();
|
|
jni::local_ref<jni::JArrayClass<JVideoSrc>> __array = jni::JArrayClass<JVideoSrc>::newArray(__size);
|
|
for (size_t __i = 0; __i < __size; __i++) {
|
|
const auto& __element = src[__i];
|
|
auto __elementJni = JVideoSrc::fromCpp(__element);
|
|
__array->setElement(__i, *__elementJni);
|
|
}
|
|
return __array;
|
|
}());
|
|
}
|
|
std::optional<double> JHybridOmniPlayerPropsSpec::getStartTime() {
|
|
static const auto method = _javaPart->javaClassStatic()->getMethod<jni::local_ref<jni::JDouble>()>("getStartTime");
|
|
auto __result = method(_javaPart);
|
|
return __result != nullptr ? std::make_optional(__result->value()) : std::nullopt;
|
|
}
|
|
void JHybridOmniPlayerPropsSpec::setStartTime(std::optional<double> startTime) {
|
|
static const auto method = _javaPart->javaClassStatic()->getMethod<void(jni::alias_ref<jni::JDouble> /* startTime */)>("setStartTime");
|
|
method(_javaPart, startTime.has_value() ? jni::JDouble::valueOf(startTime.value()) : nullptr);
|
|
}
|
|
std::vector<Subtitle> JHybridOmniPlayerPropsSpec::getSubtitles() {
|
|
static const auto method = _javaPart->javaClassStatic()->getMethod<jni::local_ref<jni::JArrayClass<JSubtitle>>()>("getSubtitles");
|
|
auto __result = method(_javaPart);
|
|
return [&]() {
|
|
size_t __size = __result->size();
|
|
std::vector<Subtitle> __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 JHybridOmniPlayerPropsSpec::setSubtitles(const std::vector<Subtitle>& subtitles) {
|
|
static const auto method = _javaPart->javaClassStatic()->getMethod<void(jni::alias_ref<jni::JArrayClass<JSubtitle>> /* subtitles */)>("setSubtitles");
|
|
method(_javaPart, [&]() {
|
|
size_t __size = subtitles.size();
|
|
jni::local_ref<jni::JArrayClass<JSubtitle>> __array = jni::JArrayClass<JSubtitle>::newArray(__size);
|
|
for (size_t __i = 0; __i < __size; __i++) {
|
|
const auto& __element = subtitles[__i];
|
|
auto __elementJni = JSubtitle::fromCpp(__element);
|
|
__array->setElement(__i, *__elementJni);
|
|
}
|
|
return __array;
|
|
}());
|
|
}
|
|
std::optional<Metadata> JHybridOmniPlayerPropsSpec::getMetadata() {
|
|
static const auto method = _javaPart->javaClassStatic()->getMethod<jni::local_ref<JMetadata>()>("getMetadata");
|
|
auto __result = method(_javaPart);
|
|
return __result != nullptr ? std::make_optional(__result->toCpp()) : std::nullopt;
|
|
}
|
|
void JHybridOmniPlayerPropsSpec::setMetadata(const std::optional<Metadata>& metadata) {
|
|
static const auto method = _javaPart->javaClassStatic()->getMethod<void(jni::alias_ref<JMetadata> /* metadata */)>("setMetadata");
|
|
method(_javaPart, metadata.has_value() ? JMetadata::fromCpp(metadata.value()) : nullptr);
|
|
}
|
|
std::optional<MixAudioMode> JHybridOmniPlayerPropsSpec::getMixAudio() {
|
|
static const auto method = _javaPart->javaClassStatic()->getMethod<jni::local_ref<JMixAudioMode>()>("getMixAudio");
|
|
auto __result = method(_javaPart);
|
|
return __result != nullptr ? std::make_optional(__result->toCpp()) : std::nullopt;
|
|
}
|
|
void JHybridOmniPlayerPropsSpec::setMixAudio(std::optional<MixAudioMode> mixAudio) {
|
|
static const auto method = _javaPart->javaClassStatic()->getMethod<void(jni::alias_ref<JMixAudioMode> /* mixAudio */)>("setMixAudio");
|
|
method(_javaPart, mixAudio.has_value() ? JMixAudioMode::fromCpp(mixAudio.value()) : nullptr);
|
|
}
|
|
|
|
// Methods
|
|
|
|
|
|
} // namespace margelo::nitro::omni
|