objc2-sound-analysis 0.2.0

Bindings to the SoundAnalysis framework
Documentation
//! This file has been automatically generated by `objc2`'s `header-translator`.
//! DO NOT EDIT
use objc2::__framework_prelude::*;
use objc2_foundation::*;

use crate::*;

extern_class!(
    #[derive(Debug, PartialEq, Eq, Hash)]
    pub struct SNClassifySoundRequest;

    unsafe impl ClassType for SNClassifySoundRequest {
        type Super = NSObject;
        type Mutability = InteriorMutable;
    }
);

unsafe impl NSObjectProtocol for SNClassifySoundRequest {}

#[cfg(feature = "SNRequest")]
unsafe impl SNRequest for SNClassifySoundRequest {}

extern_methods!(
    unsafe impl SNClassifySoundRequest {
        #[method(overlapFactor)]
        pub unsafe fn overlapFactor(&self) -> c_double;

        #[method(setOverlapFactor:)]
        pub unsafe fn setOverlapFactor(&self, overlap_factor: c_double);

        #[cfg(feature = "SNTimeDurationConstraint")]
        #[method_id(@__retain_semantics Other windowDurationConstraint)]
        pub unsafe fn windowDurationConstraint(&self) -> Id<SNTimeDurationConstraint>;

        #[method_id(@__retain_semantics Other knownClassifications)]
        pub unsafe fn knownClassifications(&self) -> Id<NSArray<NSString>>;

        #[cfg(feature = "SNTypes")]
        #[method_id(@__retain_semantics Init initWithClassifierIdentifier:error:_)]
        pub unsafe fn initWithClassifierIdentifier_error(
            this: Allocated<Self>,
            classifier_identifier: &SNClassifierIdentifier,
        ) -> Result<Id<Self>, Id<NSError>>;

        #[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>;
    }
);