use core::ffi::*;
use core::ptr::NonNull;
use objc2::__framework_prelude::*;
use objc2_foundation::*;
use crate::*;
pub type CHHapticEventParameterID = NSString;
extern "C" {
pub static CHHapticEventParameterIDHapticIntensity: &'static CHHapticEventParameterID;
}
extern "C" {
pub static CHHapticEventParameterIDHapticSharpness: &'static CHHapticEventParameterID;
}
extern "C" {
pub static CHHapticEventParameterIDAttackTime: &'static CHHapticEventParameterID;
}
extern "C" {
pub static CHHapticEventParameterIDDecayTime: &'static CHHapticEventParameterID;
}
extern "C" {
pub static CHHapticEventParameterIDReleaseTime: &'static CHHapticEventParameterID;
}
extern "C" {
pub static CHHapticEventParameterIDSustained: &'static CHHapticEventParameterID;
}
extern "C" {
pub static CHHapticEventParameterIDAudioVolume: &'static CHHapticEventParameterID;
}
extern "C" {
pub static CHHapticEventParameterIDAudioPitch: &'static CHHapticEventParameterID;
}
extern "C" {
pub static CHHapticEventParameterIDAudioPan: &'static CHHapticEventParameterID;
}
extern "C" {
pub static CHHapticEventParameterIDAudioBrightness: &'static CHHapticEventParameterID;
}
pub type CHHapticDynamicParameterID = NSString;
extern "C" {
pub static CHHapticDynamicParameterIDHapticIntensityControl:
&'static CHHapticDynamicParameterID;
}
extern "C" {
pub static CHHapticDynamicParameterIDHapticSharpnessControl:
&'static CHHapticDynamicParameterID;
}
extern "C" {
pub static CHHapticDynamicParameterIDHapticAttackTimeControl:
&'static CHHapticDynamicParameterID;
}
extern "C" {
pub static CHHapticDynamicParameterIDHapticDecayTimeControl:
&'static CHHapticDynamicParameterID;
}
extern "C" {
pub static CHHapticDynamicParameterIDHapticReleaseTimeControl:
&'static CHHapticDynamicParameterID;
}
extern "C" {
pub static CHHapticDynamicParameterIDAudioVolumeControl: &'static CHHapticDynamicParameterID;
}
extern "C" {
pub static CHHapticDynamicParameterIDAudioPanControl: &'static CHHapticDynamicParameterID;
}
extern "C" {
pub static CHHapticDynamicParameterIDAudioBrightnessControl:
&'static CHHapticDynamicParameterID;
}
extern "C" {
pub static CHHapticDynamicParameterIDAudioPitchControl: &'static CHHapticDynamicParameterID;
}
extern "C" {
pub static CHHapticDynamicParameterIDAudioAttackTimeControl:
&'static CHHapticDynamicParameterID;
}
extern "C" {
pub static CHHapticDynamicParameterIDAudioDecayTimeControl: &'static CHHapticDynamicParameterID;
}
extern "C" {
pub static CHHapticDynamicParameterIDAudioReleaseTimeControl:
&'static CHHapticDynamicParameterID;
}
extern_class!(
#[unsafe(super(NSObject))]
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct CHHapticEventParameter;
);
extern_conformance!(
unsafe impl NSObjectProtocol for CHHapticEventParameter {}
);
impl CHHapticEventParameter {
extern_methods!(
#[unsafe(method(parameterID))]
#[unsafe(method_family = none)]
pub unsafe fn parameterID(&self) -> Retained<CHHapticEventParameterID>;
#[unsafe(method(value))]
#[unsafe(method_family = none)]
pub unsafe fn value(&self) -> c_float;
#[unsafe(method(setValue:))]
#[unsafe(method_family = none)]
pub unsafe fn setValue(&self, value: c_float);
#[unsafe(method(init))]
#[unsafe(method_family = init)]
pub unsafe fn init(this: Allocated<Self>) -> Option<Retained<Self>>;
#[unsafe(method(initWithParameterID:value:))]
#[unsafe(method_family = init)]
pub unsafe fn initWithParameterID_value(
this: Allocated<Self>,
parameter_id: &CHHapticEventParameterID,
value: c_float,
) -> Retained<Self>;
);
}
impl CHHapticEventParameter {
extern_methods!(
#[unsafe(method(new))]
#[unsafe(method_family = new)]
pub unsafe fn new() -> Retained<Self>;
);
}
extern_class!(
#[unsafe(super(NSObject))]
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct CHHapticDynamicParameter;
);
extern_conformance!(
unsafe impl NSObjectProtocol for CHHapticDynamicParameter {}
);
impl CHHapticDynamicParameter {
extern_methods!(
#[unsafe(method(parameterID))]
#[unsafe(method_family = none)]
pub unsafe fn parameterID(&self) -> Retained<CHHapticDynamicParameterID>;
#[unsafe(method(value))]
#[unsafe(method_family = none)]
pub unsafe fn value(&self) -> c_float;
#[unsafe(method(setValue:))]
#[unsafe(method_family = none)]
pub unsafe fn setValue(&self, value: c_float);
#[unsafe(method(relativeTime))]
#[unsafe(method_family = none)]
pub unsafe fn relativeTime(&self) -> NSTimeInterval;
#[unsafe(method(setRelativeTime:))]
#[unsafe(method_family = none)]
pub unsafe fn setRelativeTime(&self, relative_time: NSTimeInterval);
#[unsafe(method(init))]
#[unsafe(method_family = init)]
pub unsafe fn init(this: Allocated<Self>) -> Option<Retained<Self>>;
#[unsafe(method(initWithParameterID:value:relativeTime:))]
#[unsafe(method_family = init)]
pub unsafe fn initWithParameterID_value_relativeTime(
this: Allocated<Self>,
parameter_id: &CHHapticDynamicParameterID,
value: c_float,
time: NSTimeInterval,
) -> Retained<Self>;
);
}
impl CHHapticDynamicParameter {
extern_methods!(
#[unsafe(method(new))]
#[unsafe(method_family = new)]
pub unsafe fn new() -> Retained<Self>;
);
}
extern_class!(
#[unsafe(super(NSObject))]
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct CHHapticParameterCurveControlPoint;
);
extern_conformance!(
unsafe impl NSObjectProtocol for CHHapticParameterCurveControlPoint {}
);
impl CHHapticParameterCurveControlPoint {
extern_methods!(
#[unsafe(method(relativeTime))]
#[unsafe(method_family = none)]
pub unsafe fn relativeTime(&self) -> NSTimeInterval;
#[unsafe(method(setRelativeTime:))]
#[unsafe(method_family = none)]
pub unsafe fn setRelativeTime(&self, relative_time: NSTimeInterval);
#[unsafe(method(value))]
#[unsafe(method_family = none)]
pub unsafe fn value(&self) -> c_float;
#[unsafe(method(setValue:))]
#[unsafe(method_family = none)]
pub unsafe fn setValue(&self, value: c_float);
#[unsafe(method(init))]
#[unsafe(method_family = init)]
pub unsafe fn init(this: Allocated<Self>) -> Option<Retained<Self>>;
#[unsafe(method(initWithRelativeTime:value:))]
#[unsafe(method_family = init)]
pub unsafe fn initWithRelativeTime_value(
this: Allocated<Self>,
time: NSTimeInterval,
value: c_float,
) -> Retained<Self>;
);
}
impl CHHapticParameterCurveControlPoint {
extern_methods!(
#[unsafe(method(new))]
#[unsafe(method_family = new)]
pub unsafe fn new() -> Retained<Self>;
);
}
extern_class!(
#[unsafe(super(NSObject))]
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct CHHapticParameterCurve;
);
extern_conformance!(
unsafe impl NSObjectProtocol for CHHapticParameterCurve {}
);
impl CHHapticParameterCurve {
extern_methods!(
#[unsafe(method(parameterID))]
#[unsafe(method_family = none)]
pub unsafe fn parameterID(&self) -> Retained<CHHapticDynamicParameterID>;
#[unsafe(method(relativeTime))]
#[unsafe(method_family = none)]
pub unsafe fn relativeTime(&self) -> NSTimeInterval;
#[unsafe(method(setRelativeTime:))]
#[unsafe(method_family = none)]
pub unsafe fn setRelativeTime(&self, relative_time: NSTimeInterval);
#[unsafe(method(controlPoints))]
#[unsafe(method_family = none)]
pub unsafe fn controlPoints(&self)
-> Retained<NSArray<CHHapticParameterCurveControlPoint>>;
#[unsafe(method(init))]
#[unsafe(method_family = init)]
pub unsafe fn init(this: Allocated<Self>) -> Option<Retained<Self>>;
#[unsafe(method(initWithParameterID:controlPoints:relativeTime:))]
#[unsafe(method_family = init)]
pub unsafe fn initWithParameterID_controlPoints_relativeTime(
this: Allocated<Self>,
parameter_id: &CHHapticDynamicParameterID,
control_points: &NSArray<CHHapticParameterCurveControlPoint>,
relative_time: NSTimeInterval,
) -> Retained<Self>;
);
}
impl CHHapticParameterCurve {
extern_methods!(
#[unsafe(method(new))]
#[unsafe(method_family = new)]
pub unsafe fn new() -> Retained<Self>;
);
}