use objc2::__framework_prelude::*;
use objc2_foundation::*;
use crate::*;
extern_class!(
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct SFAcousticFeature;
unsafe impl ClassType for SFAcousticFeature {
type Super = NSObject;
type Mutability = InteriorMutable;
}
);
unsafe impl NSCoding for SFAcousticFeature {}
unsafe impl NSCopying for SFAcousticFeature {}
unsafe impl NSObjectProtocol for SFAcousticFeature {}
unsafe impl NSSecureCoding for SFAcousticFeature {}
extern_methods!(
unsafe impl SFAcousticFeature {
#[method_id(@__retain_semantics Other acousticFeatureValuePerFrame)]
pub unsafe fn acousticFeatureValuePerFrame(&self) -> Id<NSArray<NSNumber>>;
#[method(frameDuration)]
pub unsafe fn frameDuration(&self) -> NSTimeInterval;
}
);
extern_methods!(
unsafe impl SFAcousticFeature {
#[method_id(@__retain_semantics Init init)]
pub unsafe fn init(this: Allocated<Self>) -> Id<Self>;
#[method_id(@__retain_semantics New new)]
pub unsafe fn new() -> Id<Self>;
}
);
extern_class!(
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct SFVoiceAnalytics;
unsafe impl ClassType for SFVoiceAnalytics {
type Super = NSObject;
type Mutability = InteriorMutable;
}
);
unsafe impl NSCoding for SFVoiceAnalytics {}
unsafe impl NSCopying for SFVoiceAnalytics {}
unsafe impl NSObjectProtocol for SFVoiceAnalytics {}
unsafe impl NSSecureCoding for SFVoiceAnalytics {}
extern_methods!(
unsafe impl SFVoiceAnalytics {
#[method_id(@__retain_semantics Other jitter)]
pub unsafe fn jitter(&self) -> Id<SFAcousticFeature>;
#[method_id(@__retain_semantics Other shimmer)]
pub unsafe fn shimmer(&self) -> Id<SFAcousticFeature>;
#[method_id(@__retain_semantics Other pitch)]
pub unsafe fn pitch(&self) -> Id<SFAcousticFeature>;
#[method_id(@__retain_semantics Other voicing)]
pub unsafe fn voicing(&self) -> Id<SFAcousticFeature>;
}
);
extern_methods!(
unsafe impl SFVoiceAnalytics {
#[method_id(@__retain_semantics Init init)]
pub unsafe fn init(this: Allocated<Self>) -> Id<Self>;
#[method_id(@__retain_semantics New new)]
pub unsafe fn new() -> Id<Self>;
}
);