/// /// JHybridOmniPlayerSpec.cpp /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE. /// https://github.com/mrousavy/nitro /// Copyright © Marc Rousavy @ Margelo /// #include "JHybridOmniPlayerSpec.hpp" // Forward declaration of `HybridOmniEventMapSpec` to properly resolve imports. namespace margelo::nitro::omni { class HybridOmniEventMapSpec; } // Forward declaration of `Track` to properly resolve imports. namespace margelo::nitro::omni { struct Track; } // Forward declaration of `Rendition` to properly resolve imports. namespace margelo::nitro::omni { struct Rendition; } // Forward declaration of `Source` to properly resolve imports. namespace margelo::nitro::omni { struct Source; } // 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; } // Forward declaration of `PlayerStatus` to properly resolve imports. namespace margelo::nitro::omni { enum class PlayerStatus; } // Forward declaration of `CastStatus` to properly resolve imports. namespace margelo::nitro::omni { enum class CastStatus; } #include #include "HybridOmniEventMapSpec.hpp" #include "JHybridOmniEventMapSpec.hpp" #include #include "Track.hpp" #include #include "JTrack.hpp" #include #include "Rendition.hpp" #include "JRendition.hpp" #include "Source.hpp" #include "JSource.hpp" #include "VideoSrc.hpp" #include "JVideoSrc.hpp" #include #include "Subtitle.hpp" #include "JSubtitle.hpp" #include "Metadata.hpp" #include "JMetadata.hpp" #include "MixAudioMode.hpp" #include "JMixAudioMode.hpp" #include "PlayerStatus.hpp" #include "JPlayerStatus.hpp" #include "CastStatus.hpp" #include "JCastStatus.hpp" namespace margelo::nitro::omni { std::shared_ptr JHybridOmniPlayerSpec::JavaPart::getJHybridOmniPlayerSpec() { auto hybridObject = JHybridObject::JavaPart::getJHybridObject(); auto castHybridObject = std::dynamic_pointer_cast(hybridObject); if (castHybridObject == nullptr) [[unlikely]] { throw std::runtime_error("Failed to downcast JHybridObject to JHybridOmniPlayerSpec!"); } return castHybridObject; } jni::local_ref JHybridOmniPlayerSpec::CxxPart::initHybrid(jni::alias_ref jThis) { return makeCxxInstance(jThis); } std::shared_ptr JHybridOmniPlayerSpec::CxxPart::createHybridObject(const jni::local_ref& javaPart) { auto castJavaPart = jni::dynamic_ref_cast(javaPart); if (castJavaPart == nullptr) [[unlikely]] { throw std::runtime_error("Failed to cast JHybridObject::JavaPart to JHybridOmniPlayerSpec::JavaPart!"); } return std::make_shared(castJavaPart); } void JHybridOmniPlayerSpec::CxxPart::registerNatives() { registerHybrid({ makeNativeMethod("initHybrid", JHybridOmniPlayerSpec::CxxPart::initHybrid), }); } // Properties std::shared_ptr JHybridOmniPlayerSpec::getEventMap() { static const auto method = _javaPart->javaClassStatic()->getMethod()>("getEventMap"); auto __result = method(_javaPart); return __result->getJHybridOmniEventMapSpec(); } std::optional JHybridOmniPlayerSpec::getShowNotification() { static const auto method = _javaPart->javaClassStatic()->getMethod()>("getShowNotification"); auto __result = method(_javaPart); return __result != nullptr ? std::make_optional(static_cast(__result->value())) : std::nullopt; } void JHybridOmniPlayerSpec::setShowNotification(std::optional showNotification) { static const auto method = _javaPart->javaClassStatic()->getMethod /* showNotification */)>("setShowNotification"); method(_javaPart, showNotification.has_value() ? jni::JBoolean::valueOf(showNotification.value()) : nullptr); } bool JHybridOmniPlayerSpec::getHasPrev() { static const auto method = _javaPart->javaClassStatic()->getMethod("getHasPrev"); auto __result = method(_javaPart); return static_cast(__result); } bool JHybridOmniPlayerSpec::getHasNext() { static const auto method = _javaPart->javaClassStatic()->getMethod("getHasNext"); auto __result = method(_javaPart); return static_cast(__result); } std::vector JHybridOmniPlayerSpec::getVideos() { static const auto method = _javaPart->javaClassStatic()->getMethod>()>("getVideos"); auto __result = method(_javaPart); return [&](auto&& __input) { size_t __size = __input->size(); std::vector __vector; __vector.reserve(__size); for (size_t __i = 0; __i < __size; __i++) { auto __element = __input->getElement(__i); __vector.push_back(__element->toCpp()); } return __vector; }(__result); } std::vector JHybridOmniPlayerSpec::getAudios() { static const auto method = _javaPart->javaClassStatic()->getMethod>()>("getAudios"); auto __result = method(_javaPart); return [&](auto&& __input) { size_t __size = __input->size(); std::vector __vector; __vector.reserve(__size); for (size_t __i = 0; __i < __size; __i++) { auto __element = __input->getElement(__i); __vector.push_back(__element->toCpp()); } return __vector; }(__result); } std::vector JHybridOmniPlayerSpec::getSubtitles() { static const auto method = _javaPart->javaClassStatic()->getMethod>()>("getSubtitles"); auto __result = method(_javaPart); return [&](auto&& __input) { size_t __size = __input->size(); std::vector __vector; __vector.reserve(__size); for (size_t __i = 0; __i < __size; __i++) { auto __element = __input->getElement(__i); __vector.push_back(__element->toCpp()); } return __vector; }(__result); } std::vector JHybridOmniPlayerSpec::getRendition() { static const auto method = _javaPart->javaClassStatic()->getMethod>()>("getRendition"); auto __result = method(_javaPart); return [&](auto&& __input) { size_t __size = __input->size(); std::vector __vector; __vector.reserve(__size); for (size_t __i = 0; __i < __size; __i++) { auto __element = __input->getElement(__i); __vector.push_back(__element->toCpp()); } return __vector; }(__result); } std::optional JHybridOmniPlayerSpec::getSource() { static const auto method = _javaPart->javaClassStatic()->getMethod()>("getSource"); auto __result = method(_javaPart); return __result != nullptr ? std::make_optional(__result->toCpp()) : std::nullopt; } void JHybridOmniPlayerSpec::setSource(const std::optional& source) { static const auto method = _javaPart->javaClassStatic()->getMethod /* source */)>("setSource"); method(_javaPart, source.has_value() ? JSource::fromCpp(source.value()) : nullptr); } PlayerStatus JHybridOmniPlayerSpec::getStatus() { static const auto method = _javaPart->javaClassStatic()->getMethod()>("getStatus"); auto __result = method(_javaPart); return __result->toCpp(); } bool JHybridOmniPlayerSpec::getIsPlaying() { static const auto method = _javaPart->javaClassStatic()->getMethod("isPlaying"); auto __result = method(_javaPart); return static_cast(__result); } double JHybridOmniPlayerSpec::getCurrentTime() { static const auto method = _javaPart->javaClassStatic()->getMethod("getCurrentTime"); auto __result = method(_javaPart); return __result; } void JHybridOmniPlayerSpec::setCurrentTime(double currentTime) { static const auto method = _javaPart->javaClassStatic()->getMethod("setCurrentTime"); method(_javaPart, currentTime); } double JHybridOmniPlayerSpec::getBuffered() { static const auto method = _javaPart->javaClassStatic()->getMethod("getBuffered"); auto __result = method(_javaPart); return __result; } double JHybridOmniPlayerSpec::getDuration() { static const auto method = _javaPart->javaClassStatic()->getMethod("getDuration"); auto __result = method(_javaPart); return __result; } double JHybridOmniPlayerSpec::getPlaybackRate() { static const auto method = _javaPart->javaClassStatic()->getMethod("getPlaybackRate"); auto __result = method(_javaPart); return __result; } void JHybridOmniPlayerSpec::setPlaybackRate(double playbackRate) { static const auto method = _javaPart->javaClassStatic()->getMethod("setPlaybackRate"); method(_javaPart, playbackRate); } double JHybridOmniPlayerSpec::getVolume() { static const auto method = _javaPart->javaClassStatic()->getMethod("getVolume"); auto __result = method(_javaPart); return __result; } void JHybridOmniPlayerSpec::setVolume(double volume) { static const auto method = _javaPart->javaClassStatic()->getMethod("setVolume"); method(_javaPart, volume); } bool JHybridOmniPlayerSpec::getMuted() { static const auto method = _javaPart->javaClassStatic()->getMethod("getMuted"); auto __result = method(_javaPart); return static_cast(__result); } void JHybridOmniPlayerSpec::setMuted(bool muted) { static const auto method = _javaPart->javaClassStatic()->getMethod("setMuted"); method(_javaPart, muted); } bool JHybridOmniPlayerSpec::getIsAutoQuality() { static const auto method = _javaPart->javaClassStatic()->getMethod("isAutoQuality"); auto __result = method(_javaPart); return static_cast(__result); } CastStatus JHybridOmniPlayerSpec::getCastStatus() { static const auto method = _javaPart->javaClassStatic()->getMethod()>("getCastStatus"); auto __result = method(_javaPart); return __result->toCpp(); } // Methods void JHybridOmniPlayerSpec::play() { static const auto method = _javaPart->javaClassStatic()->getMethod("play"); method(_javaPart); } void JHybridOmniPlayerSpec::pause() { static const auto method = _javaPart->javaClassStatic()->getMethod("pause"); method(_javaPart); } void JHybridOmniPlayerSpec::seekBy(double offset) { static const auto method = _javaPart->javaClassStatic()->getMethod("seekBy"); method(_javaPart, offset); } void JHybridOmniPlayerSpec::toggleCastStatus() { static const auto method = _javaPart->javaClassStatic()->getMethod("toggleCastStatus"); method(_javaPart); } void JHybridOmniPlayerSpec::playPrev() { static const auto method = _javaPart->javaClassStatic()->getMethod("playPrev"); method(_javaPart); } void JHybridOmniPlayerSpec::playNext() { static const auto method = _javaPart->javaClassStatic()->getMethod("playNext"); method(_javaPart); } void JHybridOmniPlayerSpec::selectVideo(const Track& video) { static const auto method = _javaPart->javaClassStatic()->getMethod /* video */)>("selectVideo"); method(_javaPart, JTrack::fromCpp(video)); } void JHybridOmniPlayerSpec::selectAudio(const Track& audio) { static const auto method = _javaPart->javaClassStatic()->getMethod /* audio */)>("selectAudio"); method(_javaPart, JTrack::fromCpp(audio)); } void JHybridOmniPlayerSpec::selectSubtitle(const std::optional& subtitle) { static const auto method = _javaPart->javaClassStatic()->getMethod /* subtitle */)>("selectSubtitle"); method(_javaPart, subtitle.has_value() ? JTrack::fromCpp(subtitle.value()) : nullptr); } void JHybridOmniPlayerSpec::selectRendition(const std::optional& rendition) { static const auto method = _javaPart->javaClassStatic()->getMethod /* rendition */)>("selectRendition"); method(_javaPart, rendition.has_value() ? JRendition::fromCpp(rendition.value()) : nullptr); } } // namespace margelo::nitro::omni