mirror of
https://github.com/zoriya/react-native-omni.git
synced 2026-08-16 02:44:51 +00:00
Create types for player & view
This commit is contained in:
@@ -0,0 +1,147 @@
|
||||
///
|
||||
/// 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
|
||||
Reference in New Issue
Block a user