use core::ffi::*;
use core::ptr::NonNull;
#[cfg(feature = "dispatch2")]
use dispatch2::*;
use objc2::__framework_prelude::*;
#[cfg(feature = "objc2-core-media")]
use objc2_core_media::*;
use objc2_foundation::*;
use crate::*;
extern_protocol!(
pub unsafe trait AVMetricEventStreamPublisher {}
);
extern_protocol!(
pub unsafe trait AVMetricEventStreamSubscriber {
#[unsafe(method(publisher:didReceiveEvent:))]
#[unsafe(method_family = none)]
unsafe fn publisher_didReceiveEvent(
&self,
publisher: &ProtocolObject<dyn AVMetricEventStreamPublisher>,
event: &AVMetricEvent,
);
}
);
extern_class!(
#[unsafe(super(NSObject))]
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct AVMetricEventStream;
);
extern_conformance!(
unsafe impl NSObjectProtocol for AVMetricEventStream {}
);
impl AVMetricEventStream {
extern_methods!(
#[unsafe(method(init))]
#[unsafe(method_family = init)]
pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
#[unsafe(method(new))]
#[unsafe(method_family = new)]
pub unsafe fn new() -> Retained<Self>;
#[unsafe(method(eventStream))]
#[unsafe(method_family = none)]
pub unsafe fn eventStream() -> Retained<Self>;
#[unsafe(method(addPublisher:))]
#[unsafe(method_family = none)]
pub unsafe fn addPublisher(
&self,
publisher: &ProtocolObject<dyn AVMetricEventStreamPublisher>,
) -> bool;
#[cfg(feature = "dispatch2")]
#[unsafe(method(setSubscriber:queue:))]
#[unsafe(method_family = none)]
pub unsafe fn setSubscriber_queue(
&self,
subscriber: &ProtocolObject<dyn AVMetricEventStreamSubscriber>,
queue: Option<&DispatchQueue>,
) -> bool;
#[unsafe(method(subscribeToMetricEvent:))]
#[unsafe(method_family = none)]
pub unsafe fn subscribeToMetricEvent(&self, metric_event_class: &AnyClass);
#[unsafe(method(subscribeToMetricEvents:))]
#[unsafe(method_family = none)]
pub unsafe fn subscribeToMetricEvents(&self, metric_event_classes: &NSArray<AnyClass>);
#[unsafe(method(subscribeToAllMetricEvents))]
#[unsafe(method_family = none)]
pub unsafe fn subscribeToAllMetricEvents(&self);
);
}
extern_class!(
#[unsafe(super(NSObject))]
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct AVMetricEvent;
);
unsafe impl Send for AVMetricEvent {}
unsafe impl Sync for AVMetricEvent {}
extern_conformance!(
unsafe impl NSCoding for AVMetricEvent {}
);
extern_conformance!(
unsafe impl NSObjectProtocol for AVMetricEvent {}
);
extern_conformance!(
unsafe impl NSSecureCoding for AVMetricEvent {}
);
impl AVMetricEvent {
extern_methods!(
#[unsafe(method(init))]
#[unsafe(method_family = init)]
pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
#[unsafe(method(new))]
#[unsafe(method_family = new)]
pub unsafe fn new() -> Retained<Self>;
#[unsafe(method(date))]
#[unsafe(method_family = none)]
pub unsafe fn date(&self) -> Retained<NSDate>;
#[cfg(feature = "objc2-core-media")]
#[unsafe(method(mediaTime))]
#[unsafe(method_family = none)]
pub unsafe fn mediaTime(&self) -> CMTime;
#[unsafe(method(sessionID))]
#[unsafe(method_family = none)]
pub unsafe fn sessionID(&self) -> Option<Retained<NSString>>;
);
}
extern_class!(
#[unsafe(super(AVMetricEvent, NSObject))]
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct AVMetricErrorEvent;
);
unsafe impl Send for AVMetricErrorEvent {}
unsafe impl Sync for AVMetricErrorEvent {}
extern_conformance!(
unsafe impl NSCoding for AVMetricErrorEvent {}
);
extern_conformance!(
unsafe impl NSObjectProtocol for AVMetricErrorEvent {}
);
extern_conformance!(
unsafe impl NSSecureCoding for AVMetricErrorEvent {}
);
impl AVMetricErrorEvent {
extern_methods!(
#[unsafe(method(init))]
#[unsafe(method_family = init)]
pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
#[unsafe(method(new))]
#[unsafe(method_family = new)]
pub unsafe fn new() -> Retained<Self>;
#[unsafe(method(didRecover))]
#[unsafe(method_family = none)]
pub unsafe fn didRecover(&self) -> bool;
#[unsafe(method(error))]
#[unsafe(method_family = none)]
pub unsafe fn error(&self) -> Retained<NSError>;
);
}
extern_class!(
#[unsafe(super(AVMetricEvent, NSObject))]
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct AVMetricMediaResourceRequestEvent;
);
unsafe impl Send for AVMetricMediaResourceRequestEvent {}
unsafe impl Sync for AVMetricMediaResourceRequestEvent {}
extern_conformance!(
unsafe impl NSCoding for AVMetricMediaResourceRequestEvent {}
);
extern_conformance!(
unsafe impl NSObjectProtocol for AVMetricMediaResourceRequestEvent {}
);
extern_conformance!(
unsafe impl NSSecureCoding for AVMetricMediaResourceRequestEvent {}
);
impl AVMetricMediaResourceRequestEvent {
extern_methods!(
#[unsafe(method(init))]
#[unsafe(method_family = init)]
pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
#[unsafe(method(new))]
#[unsafe(method_family = new)]
pub unsafe fn new() -> Retained<Self>;
#[unsafe(method(url))]
#[unsafe(method_family = none)]
pub unsafe fn url(&self) -> Option<Retained<NSURL>>;
#[unsafe(method(serverAddress))]
#[unsafe(method_family = none)]
pub unsafe fn serverAddress(&self) -> Option<Retained<NSString>>;
#[unsafe(method(requestStartTime))]
#[unsafe(method_family = none)]
pub unsafe fn requestStartTime(&self) -> Retained<NSDate>;
#[unsafe(method(requestEndTime))]
#[unsafe(method_family = none)]
pub unsafe fn requestEndTime(&self) -> Retained<NSDate>;
#[unsafe(method(responseStartTime))]
#[unsafe(method_family = none)]
pub unsafe fn responseStartTime(&self) -> Retained<NSDate>;
#[unsafe(method(responseEndTime))]
#[unsafe(method_family = none)]
pub unsafe fn responseEndTime(&self) -> Retained<NSDate>;
#[unsafe(method(byteRange))]
#[unsafe(method_family = none)]
pub unsafe fn byteRange(&self) -> NSRange;
#[unsafe(method(wasReadFromCache))]
#[unsafe(method_family = none)]
pub unsafe fn wasReadFromCache(&self) -> bool;
#[unsafe(method(errorEvent))]
#[unsafe(method_family = none)]
pub unsafe fn errorEvent(&self) -> Option<Retained<AVMetricErrorEvent>>;
#[unsafe(method(networkTransactionMetrics))]
#[unsafe(method_family = none)]
pub unsafe fn networkTransactionMetrics(&self)
-> Option<Retained<NSURLSessionTaskMetrics>>;
);
}
extern_class!(
#[unsafe(super(AVMetricEvent, NSObject))]
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct AVMetricHLSPlaylistRequestEvent;
);
unsafe impl Send for AVMetricHLSPlaylistRequestEvent {}
unsafe impl Sync for AVMetricHLSPlaylistRequestEvent {}
extern_conformance!(
unsafe impl NSCoding for AVMetricHLSPlaylistRequestEvent {}
);
extern_conformance!(
unsafe impl NSObjectProtocol for AVMetricHLSPlaylistRequestEvent {}
);
extern_conformance!(
unsafe impl NSSecureCoding for AVMetricHLSPlaylistRequestEvent {}
);
impl AVMetricHLSPlaylistRequestEvent {
extern_methods!(
#[unsafe(method(init))]
#[unsafe(method_family = init)]
pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
#[unsafe(method(new))]
#[unsafe(method_family = new)]
pub unsafe fn new() -> Retained<Self>;
#[unsafe(method(url))]
#[unsafe(method_family = none)]
pub unsafe fn url(&self) -> Option<Retained<NSURL>>;
#[unsafe(method(isMultivariantPlaylist))]
#[unsafe(method_family = none)]
pub unsafe fn isMultivariantPlaylist(&self) -> bool;
#[cfg(feature = "AVMediaFormat")]
#[unsafe(method(mediaType))]
#[unsafe(method_family = none)]
pub unsafe fn mediaType(&self) -> Retained<AVMediaType>;
#[unsafe(method(mediaResourceRequestEvent))]
#[unsafe(method_family = none)]
pub unsafe fn mediaResourceRequestEvent(
&self,
) -> Option<Retained<AVMetricMediaResourceRequestEvent>>;
);
}
extern_class!(
#[unsafe(super(AVMetricEvent, NSObject))]
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct AVMetricHLSMediaSegmentRequestEvent;
);
unsafe impl Send for AVMetricHLSMediaSegmentRequestEvent {}
unsafe impl Sync for AVMetricHLSMediaSegmentRequestEvent {}
extern_conformance!(
unsafe impl NSCoding for AVMetricHLSMediaSegmentRequestEvent {}
);
extern_conformance!(
unsafe impl NSObjectProtocol for AVMetricHLSMediaSegmentRequestEvent {}
);
extern_conformance!(
unsafe impl NSSecureCoding for AVMetricHLSMediaSegmentRequestEvent {}
);
impl AVMetricHLSMediaSegmentRequestEvent {
extern_methods!(
#[unsafe(method(init))]
#[unsafe(method_family = init)]
pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
#[unsafe(method(new))]
#[unsafe(method_family = new)]
pub unsafe fn new() -> Retained<Self>;
#[unsafe(method(url))]
#[unsafe(method_family = none)]
pub unsafe fn url(&self) -> Option<Retained<NSURL>>;
#[unsafe(method(isMapSegment))]
#[unsafe(method_family = none)]
pub unsafe fn isMapSegment(&self) -> bool;
#[cfg(feature = "AVMediaFormat")]
#[unsafe(method(mediaType))]
#[unsafe(method_family = none)]
pub unsafe fn mediaType(&self) -> Retained<AVMediaType>;
#[unsafe(method(byteRange))]
#[unsafe(method_family = none)]
pub unsafe fn byteRange(&self) -> NSRange;
#[unsafe(method(indexFileURL))]
#[unsafe(method_family = none)]
pub unsafe fn indexFileURL(&self) -> Retained<NSURL>;
#[unsafe(method(segmentDuration))]
#[unsafe(method_family = none)]
pub unsafe fn segmentDuration(&self) -> NSTimeInterval;
#[unsafe(method(mediaResourceRequestEvent))]
#[unsafe(method_family = none)]
pub unsafe fn mediaResourceRequestEvent(
&self,
) -> Option<Retained<AVMetricMediaResourceRequestEvent>>;
);
}
extern_class!(
#[unsafe(super(AVMetricEvent, NSObject))]
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct AVMetricContentKeyRequestEvent;
);
unsafe impl Send for AVMetricContentKeyRequestEvent {}
unsafe impl Sync for AVMetricContentKeyRequestEvent {}
extern_conformance!(
unsafe impl NSCoding for AVMetricContentKeyRequestEvent {}
);
extern_conformance!(
unsafe impl NSObjectProtocol for AVMetricContentKeyRequestEvent {}
);
extern_conformance!(
unsafe impl NSSecureCoding for AVMetricContentKeyRequestEvent {}
);
impl AVMetricContentKeyRequestEvent {
extern_methods!(
#[unsafe(method(init))]
#[unsafe(method_family = init)]
pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
#[unsafe(method(new))]
#[unsafe(method_family = new)]
pub unsafe fn new() -> Retained<Self>;
#[cfg(feature = "AVContentKeySession")]
#[unsafe(method(contentKeySpecifier))]
#[unsafe(method_family = none)]
pub unsafe fn contentKeySpecifier(&self) -> Retained<AVContentKeySpecifier>;
#[cfg(feature = "AVMediaFormat")]
#[unsafe(method(mediaType))]
#[unsafe(method_family = none)]
pub unsafe fn mediaType(&self) -> Retained<AVMediaType>;
#[unsafe(method(isClientInitiated))]
#[unsafe(method_family = none)]
pub unsafe fn isClientInitiated(&self) -> bool;
#[unsafe(method(mediaResourceRequestEvent))]
#[unsafe(method_family = none)]
pub unsafe fn mediaResourceRequestEvent(
&self,
) -> Option<Retained<AVMetricMediaResourceRequestEvent>>;
);
}
extern_class!(
#[unsafe(super(AVMetricEvent, NSObject))]
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct AVMetricPlayerItemLikelyToKeepUpEvent;
);
unsafe impl Send for AVMetricPlayerItemLikelyToKeepUpEvent {}
unsafe impl Sync for AVMetricPlayerItemLikelyToKeepUpEvent {}
extern_conformance!(
unsafe impl NSCoding for AVMetricPlayerItemLikelyToKeepUpEvent {}
);
extern_conformance!(
unsafe impl NSObjectProtocol for AVMetricPlayerItemLikelyToKeepUpEvent {}
);
extern_conformance!(
unsafe impl NSSecureCoding for AVMetricPlayerItemLikelyToKeepUpEvent {}
);
impl AVMetricPlayerItemLikelyToKeepUpEvent {
extern_methods!(
#[unsafe(method(init))]
#[unsafe(method_family = init)]
pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
#[unsafe(method(new))]
#[unsafe(method_family = new)]
pub unsafe fn new() -> Retained<Self>;
#[cfg(feature = "AVAssetVariant")]
#[unsafe(method(variant))]
#[unsafe(method_family = none)]
pub unsafe fn variant(&self) -> Option<Retained<AVAssetVariant>>;
#[unsafe(method(timeTaken))]
#[unsafe(method_family = none)]
pub unsafe fn timeTaken(&self) -> NSTimeInterval;
#[unsafe(method(loadedTimeRanges))]
#[unsafe(method_family = none)]
pub unsafe fn loadedTimeRanges(&self) -> Retained<NSArray<NSValue>>;
);
}
extern_class!(
#[unsafe(super(AVMetricPlayerItemLikelyToKeepUpEvent, AVMetricEvent, NSObject))]
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct AVMetricPlayerItemInitialLikelyToKeepUpEvent;
);
unsafe impl Send for AVMetricPlayerItemInitialLikelyToKeepUpEvent {}
unsafe impl Sync for AVMetricPlayerItemInitialLikelyToKeepUpEvent {}
extern_conformance!(
unsafe impl NSCoding for AVMetricPlayerItemInitialLikelyToKeepUpEvent {}
);
extern_conformance!(
unsafe impl NSObjectProtocol for AVMetricPlayerItemInitialLikelyToKeepUpEvent {}
);
extern_conformance!(
unsafe impl NSSecureCoding for AVMetricPlayerItemInitialLikelyToKeepUpEvent {}
);
impl AVMetricPlayerItemInitialLikelyToKeepUpEvent {
extern_methods!(
#[unsafe(method(init))]
#[unsafe(method_family = init)]
pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
#[unsafe(method(new))]
#[unsafe(method_family = new)]
pub unsafe fn new() -> Retained<Self>;
#[unsafe(method(playlistRequestEvents))]
#[unsafe(method_family = none)]
pub unsafe fn playlistRequestEvents(
&self,
) -> Retained<NSArray<AVMetricHLSPlaylistRequestEvent>>;
#[unsafe(method(mediaSegmentRequestEvents))]
#[unsafe(method_family = none)]
pub unsafe fn mediaSegmentRequestEvents(
&self,
) -> Retained<NSArray<AVMetricHLSMediaSegmentRequestEvent>>;
#[unsafe(method(contentKeyRequestEvents))]
#[unsafe(method_family = none)]
pub unsafe fn contentKeyRequestEvents(
&self,
) -> Retained<NSArray<AVMetricContentKeyRequestEvent>>;
);
}
extern_class!(
#[unsafe(super(AVMetricEvent, NSObject))]
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct AVMetricPlayerItemRateChangeEvent;
);
unsafe impl Send for AVMetricPlayerItemRateChangeEvent {}
unsafe impl Sync for AVMetricPlayerItemRateChangeEvent {}
extern_conformance!(
unsafe impl NSCoding for AVMetricPlayerItemRateChangeEvent {}
);
extern_conformance!(
unsafe impl NSObjectProtocol for AVMetricPlayerItemRateChangeEvent {}
);
extern_conformance!(
unsafe impl NSSecureCoding for AVMetricPlayerItemRateChangeEvent {}
);
impl AVMetricPlayerItemRateChangeEvent {
extern_methods!(
#[unsafe(method(init))]
#[unsafe(method_family = init)]
pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
#[unsafe(method(new))]
#[unsafe(method_family = new)]
pub unsafe fn new() -> Retained<Self>;
#[unsafe(method(rate))]
#[unsafe(method_family = none)]
pub unsafe fn rate(&self) -> c_double;
#[unsafe(method(previousRate))]
#[unsafe(method_family = none)]
pub unsafe fn previousRate(&self) -> c_double;
#[cfg(feature = "AVAssetVariant")]
#[unsafe(method(variant))]
#[unsafe(method_family = none)]
pub unsafe fn variant(&self) -> Option<Retained<AVAssetVariant>>;
);
}
extern_class!(
#[unsafe(super(AVMetricPlayerItemRateChangeEvent, AVMetricEvent, NSObject))]
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct AVMetricPlayerItemStallEvent;
);
unsafe impl Send for AVMetricPlayerItemStallEvent {}
unsafe impl Sync for AVMetricPlayerItemStallEvent {}
extern_conformance!(
unsafe impl NSCoding for AVMetricPlayerItemStallEvent {}
);
extern_conformance!(
unsafe impl NSObjectProtocol for AVMetricPlayerItemStallEvent {}
);
extern_conformance!(
unsafe impl NSSecureCoding for AVMetricPlayerItemStallEvent {}
);
impl AVMetricPlayerItemStallEvent {
extern_methods!(
#[unsafe(method(init))]
#[unsafe(method_family = init)]
pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
#[unsafe(method(new))]
#[unsafe(method_family = new)]
pub unsafe fn new() -> Retained<Self>;
);
}
extern_class!(
#[unsafe(super(AVMetricPlayerItemRateChangeEvent, AVMetricEvent, NSObject))]
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct AVMetricPlayerItemSeekEvent;
);
unsafe impl Send for AVMetricPlayerItemSeekEvent {}
unsafe impl Sync for AVMetricPlayerItemSeekEvent {}
extern_conformance!(
unsafe impl NSCoding for AVMetricPlayerItemSeekEvent {}
);
extern_conformance!(
unsafe impl NSObjectProtocol for AVMetricPlayerItemSeekEvent {}
);
extern_conformance!(
unsafe impl NSSecureCoding for AVMetricPlayerItemSeekEvent {}
);
impl AVMetricPlayerItemSeekEvent {
extern_methods!(
#[unsafe(method(init))]
#[unsafe(method_family = init)]
pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
#[unsafe(method(new))]
#[unsafe(method_family = new)]
pub unsafe fn new() -> Retained<Self>;
);
}
extern_class!(
#[unsafe(super(AVMetricPlayerItemRateChangeEvent, AVMetricEvent, NSObject))]
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct AVMetricPlayerItemSeekDidCompleteEvent;
);
unsafe impl Send for AVMetricPlayerItemSeekDidCompleteEvent {}
unsafe impl Sync for AVMetricPlayerItemSeekDidCompleteEvent {}
extern_conformance!(
unsafe impl NSCoding for AVMetricPlayerItemSeekDidCompleteEvent {}
);
extern_conformance!(
unsafe impl NSObjectProtocol for AVMetricPlayerItemSeekDidCompleteEvent {}
);
extern_conformance!(
unsafe impl NSSecureCoding for AVMetricPlayerItemSeekDidCompleteEvent {}
);
impl AVMetricPlayerItemSeekDidCompleteEvent {
extern_methods!(
#[unsafe(method(init))]
#[unsafe(method_family = init)]
pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
#[unsafe(method(new))]
#[unsafe(method_family = new)]
pub unsafe fn new() -> Retained<Self>;
#[unsafe(method(didSeekInBuffer))]
#[unsafe(method_family = none)]
pub unsafe fn didSeekInBuffer(&self) -> bool;
);
}
extern_class!(
#[unsafe(super(NSObject))]
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct AVMetricMediaRendition;
);
unsafe impl Send for AVMetricMediaRendition {}
unsafe impl Sync for AVMetricMediaRendition {}
extern_conformance!(
unsafe impl NSCoding for AVMetricMediaRendition {}
);
extern_conformance!(
unsafe impl NSObjectProtocol for AVMetricMediaRendition {}
);
extern_conformance!(
unsafe impl NSSecureCoding for AVMetricMediaRendition {}
);
impl AVMetricMediaRendition {
extern_methods!(
#[unsafe(method(init))]
#[unsafe(method_family = init)]
pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
#[unsafe(method(new))]
#[unsafe(method_family = new)]
pub unsafe fn new() -> Retained<Self>;
#[unsafe(method(stableID))]
#[unsafe(method_family = none)]
pub unsafe fn stableID(&self) -> Option<Retained<NSString>>;
#[unsafe(method(URL))]
#[unsafe(method_family = none)]
pub unsafe fn URL(&self) -> Option<Retained<NSURL>>;
);
}
extern_class!(
#[unsafe(super(AVMetricEvent, NSObject))]
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct AVMetricPlayerItemVariantSwitchEvent;
);
unsafe impl Send for AVMetricPlayerItemVariantSwitchEvent {}
unsafe impl Sync for AVMetricPlayerItemVariantSwitchEvent {}
extern_conformance!(
unsafe impl NSCoding for AVMetricPlayerItemVariantSwitchEvent {}
);
extern_conformance!(
unsafe impl NSObjectProtocol for AVMetricPlayerItemVariantSwitchEvent {}
);
extern_conformance!(
unsafe impl NSSecureCoding for AVMetricPlayerItemVariantSwitchEvent {}
);
impl AVMetricPlayerItemVariantSwitchEvent {
extern_methods!(
#[unsafe(method(init))]
#[unsafe(method_family = init)]
pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
#[unsafe(method(new))]
#[unsafe(method_family = new)]
pub unsafe fn new() -> Retained<Self>;
#[cfg(feature = "AVAssetVariant")]
#[unsafe(method(fromVariant))]
#[unsafe(method_family = none)]
pub unsafe fn fromVariant(&self) -> Option<Retained<AVAssetVariant>>;
#[cfg(feature = "AVAssetVariant")]
#[unsafe(method(toVariant))]
#[unsafe(method_family = none)]
pub unsafe fn toVariant(&self) -> Retained<AVAssetVariant>;
#[unsafe(method(loadedTimeRanges))]
#[unsafe(method_family = none)]
pub unsafe fn loadedTimeRanges(&self) -> Retained<NSArray<NSValue>>;
#[unsafe(method(videoRendition))]
#[unsafe(method_family = none)]
pub unsafe fn videoRendition(&self) -> Retained<AVMetricMediaRendition>;
#[unsafe(method(audioRendition))]
#[unsafe(method_family = none)]
pub unsafe fn audioRendition(&self) -> Retained<AVMetricMediaRendition>;
#[unsafe(method(subtitleRendition))]
#[unsafe(method_family = none)]
pub unsafe fn subtitleRendition(&self) -> Retained<AVMetricMediaRendition>;
#[unsafe(method(didSucceed))]
#[unsafe(method_family = none)]
pub unsafe fn didSucceed(&self) -> bool;
);
}
extern_class!(
#[unsafe(super(AVMetricEvent, NSObject))]
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct AVMetricPlayerItemVariantSwitchStartEvent;
);
unsafe impl Send for AVMetricPlayerItemVariantSwitchStartEvent {}
unsafe impl Sync for AVMetricPlayerItemVariantSwitchStartEvent {}
extern_conformance!(
unsafe impl NSCoding for AVMetricPlayerItemVariantSwitchStartEvent {}
);
extern_conformance!(
unsafe impl NSObjectProtocol for AVMetricPlayerItemVariantSwitchStartEvent {}
);
extern_conformance!(
unsafe impl NSSecureCoding for AVMetricPlayerItemVariantSwitchStartEvent {}
);
impl AVMetricPlayerItemVariantSwitchStartEvent {
extern_methods!(
#[unsafe(method(init))]
#[unsafe(method_family = init)]
pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
#[unsafe(method(new))]
#[unsafe(method_family = new)]
pub unsafe fn new() -> Retained<Self>;
#[cfg(feature = "AVAssetVariant")]
#[unsafe(method(fromVariant))]
#[unsafe(method_family = none)]
pub unsafe fn fromVariant(&self) -> Option<Retained<AVAssetVariant>>;
#[cfg(feature = "AVAssetVariant")]
#[unsafe(method(toVariant))]
#[unsafe(method_family = none)]
pub unsafe fn toVariant(&self) -> Retained<AVAssetVariant>;
#[unsafe(method(loadedTimeRanges))]
#[unsafe(method_family = none)]
pub unsafe fn loadedTimeRanges(&self) -> Retained<NSArray<NSValue>>;
#[unsafe(method(videoRendition))]
#[unsafe(method_family = none)]
pub unsafe fn videoRendition(&self) -> Retained<AVMetricMediaRendition>;
#[unsafe(method(audioRendition))]
#[unsafe(method_family = none)]
pub unsafe fn audioRendition(&self) -> Retained<AVMetricMediaRendition>;
#[unsafe(method(subtitleRendition))]
#[unsafe(method_family = none)]
pub unsafe fn subtitleRendition(&self) -> Retained<AVMetricMediaRendition>;
);
}
extern_class!(
#[unsafe(super(AVMetricEvent, NSObject))]
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct AVMetricPlayerItemPlaybackSummaryEvent;
);
unsafe impl Send for AVMetricPlayerItemPlaybackSummaryEvent {}
unsafe impl Sync for AVMetricPlayerItemPlaybackSummaryEvent {}
extern_conformance!(
unsafe impl NSCoding for AVMetricPlayerItemPlaybackSummaryEvent {}
);
extern_conformance!(
unsafe impl NSObjectProtocol for AVMetricPlayerItemPlaybackSummaryEvent {}
);
extern_conformance!(
unsafe impl NSSecureCoding for AVMetricPlayerItemPlaybackSummaryEvent {}
);
impl AVMetricPlayerItemPlaybackSummaryEvent {
extern_methods!(
#[unsafe(method(init))]
#[unsafe(method_family = init)]
pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
#[unsafe(method(new))]
#[unsafe(method_family = new)]
pub unsafe fn new() -> Retained<Self>;
#[unsafe(method(errorEvent))]
#[unsafe(method_family = none)]
pub unsafe fn errorEvent(&self) -> Option<Retained<AVMetricErrorEvent>>;
#[unsafe(method(recoverableErrorCount))]
#[unsafe(method_family = none)]
pub unsafe fn recoverableErrorCount(&self) -> NSInteger;
#[unsafe(method(stallCount))]
#[unsafe(method_family = none)]
pub unsafe fn stallCount(&self) -> NSInteger;
#[unsafe(method(variantSwitchCount))]
#[unsafe(method_family = none)]
pub unsafe fn variantSwitchCount(&self) -> NSInteger;
#[unsafe(method(playbackDuration))]
#[unsafe(method_family = none)]
pub unsafe fn playbackDuration(&self) -> NSInteger;
#[unsafe(method(mediaResourceRequestCount))]
#[unsafe(method_family = none)]
pub unsafe fn mediaResourceRequestCount(&self) -> NSInteger;
#[unsafe(method(timeSpentRecoveringFromStall))]
#[unsafe(method_family = none)]
pub unsafe fn timeSpentRecoveringFromStall(&self) -> NSTimeInterval;
#[unsafe(method(timeSpentInInitialStartup))]
#[unsafe(method_family = none)]
pub unsafe fn timeSpentInInitialStartup(&self) -> NSTimeInterval;
#[unsafe(method(timeWeightedAverageBitrate))]
#[unsafe(method_family = none)]
pub unsafe fn timeWeightedAverageBitrate(&self) -> NSInteger;
#[unsafe(method(timeWeightedPeakBitrate))]
#[unsafe(method_family = none)]
pub unsafe fn timeWeightedPeakBitrate(&self) -> NSInteger;
);
}
extern_class!(
#[unsafe(super(AVMetricEvent, NSObject))]
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct AVMetricDownloadSummaryEvent;
);
unsafe impl Send for AVMetricDownloadSummaryEvent {}
unsafe impl Sync for AVMetricDownloadSummaryEvent {}
extern_conformance!(
unsafe impl NSCoding for AVMetricDownloadSummaryEvent {}
);
extern_conformance!(
unsafe impl NSObjectProtocol for AVMetricDownloadSummaryEvent {}
);
extern_conformance!(
unsafe impl NSSecureCoding for AVMetricDownloadSummaryEvent {}
);
impl AVMetricDownloadSummaryEvent {
extern_methods!(
#[unsafe(method(init))]
#[unsafe(method_family = init)]
pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
#[unsafe(method(new))]
#[unsafe(method_family = new)]
pub unsafe fn new() -> Retained<Self>;
#[unsafe(method(errorEvent))]
#[unsafe(method_family = none)]
pub unsafe fn errorEvent(&self) -> Option<Retained<AVMetricErrorEvent>>;
#[unsafe(method(recoverableErrorCount))]
#[unsafe(method_family = none)]
pub unsafe fn recoverableErrorCount(&self) -> NSInteger;
#[unsafe(method(mediaResourceRequestCount))]
#[unsafe(method_family = none)]
pub unsafe fn mediaResourceRequestCount(&self) -> NSInteger;
#[unsafe(method(bytesDownloadedCount))]
#[unsafe(method_family = none)]
pub unsafe fn bytesDownloadedCount(&self) -> NSInteger;
#[unsafe(method(downloadDuration))]
#[unsafe(method_family = none)]
pub unsafe fn downloadDuration(&self) -> NSTimeInterval;
#[cfg(feature = "AVAssetVariant")]
#[unsafe(method(variants))]
#[unsafe(method_family = none)]
pub unsafe fn variants(&self) -> Retained<NSArray<AVAssetVariant>>;
);
}