use core::ffi::*;
use core::ptr::NonNull;
use objc2::__framework_prelude::*;
use crate::*;
extern_class!(
#[unsafe(super(NSObject))]
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct GKNoiseSource;
);
extern_conformance!(
unsafe impl NSObjectProtocol for GKNoiseSource {}
);
impl GKNoiseSource {
extern_methods!();
}
impl GKNoiseSource {
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(GKNoiseSource, NSObject))]
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct GKCoherentNoiseSource;
);
extern_conformance!(
unsafe impl NSObjectProtocol for GKCoherentNoiseSource {}
);
impl GKCoherentNoiseSource {
extern_methods!(
#[unsafe(method(frequency))]
#[unsafe(method_family = none)]
pub unsafe fn frequency(&self) -> c_double;
#[unsafe(method(setFrequency:))]
#[unsafe(method_family = none)]
pub unsafe fn setFrequency(&self, frequency: c_double);
#[unsafe(method(octaveCount))]
#[unsafe(method_family = none)]
pub unsafe fn octaveCount(&self) -> NSInteger;
#[unsafe(method(setOctaveCount:))]
#[unsafe(method_family = none)]
pub unsafe fn setOctaveCount(&self, octave_count: NSInteger);
#[unsafe(method(lacunarity))]
#[unsafe(method_family = none)]
pub unsafe fn lacunarity(&self) -> c_double;
#[unsafe(method(setLacunarity:))]
#[unsafe(method_family = none)]
pub unsafe fn setLacunarity(&self, lacunarity: c_double);
#[unsafe(method(seed))]
#[unsafe(method_family = none)]
pub unsafe fn seed(&self) -> i32;
#[unsafe(method(setSeed:))]
#[unsafe(method_family = none)]
pub unsafe fn setSeed(&self, seed: i32);
);
}
impl GKCoherentNoiseSource {
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(GKCoherentNoiseSource, GKNoiseSource, NSObject))]
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct GKPerlinNoiseSource;
);
extern_conformance!(
unsafe impl NSObjectProtocol for GKPerlinNoiseSource {}
);
impl GKPerlinNoiseSource {
extern_methods!(
#[unsafe(method(persistence))]
#[unsafe(method_family = none)]
pub unsafe fn persistence(&self) -> c_double;
#[unsafe(method(setPersistence:))]
#[unsafe(method_family = none)]
pub unsafe fn setPersistence(&self, persistence: c_double);
#[unsafe(method(perlinNoiseSourceWithFrequency:octaveCount:persistence:lacunarity:seed:))]
#[unsafe(method_family = none)]
pub unsafe fn perlinNoiseSourceWithFrequency_octaveCount_persistence_lacunarity_seed(
frequency: c_double,
octave_count: NSInteger,
persistence: c_double,
lacunarity: c_double,
seed: i32,
) -> Retained<Self>;
#[unsafe(method(initWithFrequency:octaveCount:persistence:lacunarity:seed:))]
#[unsafe(method_family = init)]
pub unsafe fn initWithFrequency_octaveCount_persistence_lacunarity_seed(
this: Allocated<Self>,
frequency: c_double,
octave_count: NSInteger,
persistence: c_double,
lacunarity: c_double,
seed: i32,
) -> Retained<Self>;
);
}
impl GKPerlinNoiseSource {
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(GKCoherentNoiseSource, GKNoiseSource, NSObject))]
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct GKBillowNoiseSource;
);
extern_conformance!(
unsafe impl NSObjectProtocol for GKBillowNoiseSource {}
);
impl GKBillowNoiseSource {
extern_methods!(
#[unsafe(method(persistence))]
#[unsafe(method_family = none)]
pub unsafe fn persistence(&self) -> c_double;
#[unsafe(method(setPersistence:))]
#[unsafe(method_family = none)]
pub unsafe fn setPersistence(&self, persistence: c_double);
#[unsafe(method(billowNoiseSourceWithFrequency:octaveCount:persistence:lacunarity:seed:))]
#[unsafe(method_family = none)]
pub unsafe fn billowNoiseSourceWithFrequency_octaveCount_persistence_lacunarity_seed(
frequency: c_double,
octave_count: NSInteger,
persistence: c_double,
lacunarity: c_double,
seed: i32,
) -> Retained<Self>;
#[unsafe(method(initWithFrequency:octaveCount:persistence:lacunarity:seed:))]
#[unsafe(method_family = init)]
pub unsafe fn initWithFrequency_octaveCount_persistence_lacunarity_seed(
this: Allocated<Self>,
frequency: c_double,
octave_count: NSInteger,
persistence: c_double,
lacunarity: c_double,
seed: i32,
) -> Retained<Self>;
);
}
impl GKBillowNoiseSource {
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(GKCoherentNoiseSource, GKNoiseSource, NSObject))]
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct GKRidgedNoiseSource;
);
extern_conformance!(
unsafe impl NSObjectProtocol for GKRidgedNoiseSource {}
);
impl GKRidgedNoiseSource {
extern_methods!(
#[unsafe(method(ridgedNoiseSourceWithFrequency:octaveCount:lacunarity:seed:))]
#[unsafe(method_family = none)]
pub unsafe fn ridgedNoiseSourceWithFrequency_octaveCount_lacunarity_seed(
frequency: c_double,
octave_count: NSInteger,
lacunarity: c_double,
seed: i32,
) -> Retained<Self>;
#[unsafe(method(initWithFrequency:octaveCount:lacunarity:seed:))]
#[unsafe(method_family = init)]
pub unsafe fn initWithFrequency_octaveCount_lacunarity_seed(
this: Allocated<Self>,
frequency: c_double,
octave_count: NSInteger,
lacunarity: c_double,
seed: i32,
) -> Retained<Self>;
);
}
impl GKRidgedNoiseSource {
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(GKNoiseSource, NSObject))]
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct GKVoronoiNoiseSource;
);
extern_conformance!(
unsafe impl NSObjectProtocol for GKVoronoiNoiseSource {}
);
impl GKVoronoiNoiseSource {
extern_methods!(
#[unsafe(method(frequency))]
#[unsafe(method_family = none)]
pub unsafe fn frequency(&self) -> c_double;
#[unsafe(method(setFrequency:))]
#[unsafe(method_family = none)]
pub unsafe fn setFrequency(&self, frequency: c_double);
#[unsafe(method(displacement))]
#[unsafe(method_family = none)]
pub unsafe fn displacement(&self) -> c_double;
#[unsafe(method(setDisplacement:))]
#[unsafe(method_family = none)]
pub unsafe fn setDisplacement(&self, displacement: c_double);
#[unsafe(method(isDistanceEnabled))]
#[unsafe(method_family = none)]
pub unsafe fn isDistanceEnabled(&self) -> bool;
#[unsafe(method(setDistanceEnabled:))]
#[unsafe(method_family = none)]
pub unsafe fn setDistanceEnabled(&self, distance_enabled: bool);
#[unsafe(method(seed))]
#[unsafe(method_family = none)]
pub unsafe fn seed(&self) -> i32;
#[unsafe(method(setSeed:))]
#[unsafe(method_family = none)]
pub unsafe fn setSeed(&self, seed: i32);
#[unsafe(method(voronoiNoiseWithFrequency:displacement:distanceEnabled:seed:))]
#[unsafe(method_family = none)]
pub unsafe fn voronoiNoiseWithFrequency_displacement_distanceEnabled_seed(
frequency: c_double,
displacement: c_double,
distance_enabled: bool,
seed: i32,
) -> Retained<Self>;
#[unsafe(method(initWithFrequency:displacement:distanceEnabled:seed:))]
#[unsafe(method_family = init)]
pub unsafe fn initWithFrequency_displacement_distanceEnabled_seed(
this: Allocated<Self>,
frequency: c_double,
displacement: c_double,
distance_enabled: bool,
seed: i32,
) -> Retained<Self>;
);
}
impl GKVoronoiNoiseSource {
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(GKNoiseSource, NSObject))]
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct GKConstantNoiseSource;
);
extern_conformance!(
unsafe impl NSObjectProtocol for GKConstantNoiseSource {}
);
impl GKConstantNoiseSource {
extern_methods!(
#[unsafe(method(value))]
#[unsafe(method_family = none)]
pub unsafe fn value(&self) -> c_double;
#[unsafe(method(setValue:))]
#[unsafe(method_family = none)]
pub unsafe fn setValue(&self, value: c_double);
#[unsafe(method(constantNoiseWithValue:))]
#[unsafe(method_family = none)]
pub unsafe fn constantNoiseWithValue(value: c_double) -> Retained<Self>;
#[unsafe(method(initWithValue:))]
#[unsafe(method_family = init)]
pub unsafe fn initWithValue(this: Allocated<Self>, value: c_double) -> Retained<Self>;
);
}
impl GKConstantNoiseSource {
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(GKNoiseSource, NSObject))]
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct GKCylindersNoiseSource;
);
extern_conformance!(
unsafe impl NSObjectProtocol for GKCylindersNoiseSource {}
);
impl GKCylindersNoiseSource {
extern_methods!(
#[unsafe(method(frequency))]
#[unsafe(method_family = none)]
pub unsafe fn frequency(&self) -> c_double;
#[unsafe(method(setFrequency:))]
#[unsafe(method_family = none)]
pub unsafe fn setFrequency(&self, frequency: c_double);
#[unsafe(method(cylindersNoiseWithFrequency:))]
#[unsafe(method_family = none)]
pub unsafe fn cylindersNoiseWithFrequency(frequency: c_double) -> Retained<Self>;
#[unsafe(method(initWithFrequency:))]
#[unsafe(method_family = init)]
pub unsafe fn initWithFrequency(
this: Allocated<Self>,
frequency: c_double,
) -> Retained<Self>;
);
}
impl GKCylindersNoiseSource {
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(GKNoiseSource, NSObject))]
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct GKSpheresNoiseSource;
);
extern_conformance!(
unsafe impl NSObjectProtocol for GKSpheresNoiseSource {}
);
impl GKSpheresNoiseSource {
extern_methods!(
#[unsafe(method(frequency))]
#[unsafe(method_family = none)]
pub unsafe fn frequency(&self) -> c_double;
#[unsafe(method(setFrequency:))]
#[unsafe(method_family = none)]
pub unsafe fn setFrequency(&self, frequency: c_double);
#[unsafe(method(spheresNoiseWithFrequency:))]
#[unsafe(method_family = none)]
pub unsafe fn spheresNoiseWithFrequency(frequency: c_double) -> Retained<Self>;
#[unsafe(method(initWithFrequency:))]
#[unsafe(method_family = init)]
pub unsafe fn initWithFrequency(
this: Allocated<Self>,
frequency: c_double,
) -> Retained<Self>;
);
}
impl GKSpheresNoiseSource {
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(GKNoiseSource, NSObject))]
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct GKCheckerboardNoiseSource;
);
extern_conformance!(
unsafe impl NSObjectProtocol for GKCheckerboardNoiseSource {}
);
impl GKCheckerboardNoiseSource {
extern_methods!(
#[unsafe(method(squareSize))]
#[unsafe(method_family = none)]
pub unsafe fn squareSize(&self) -> c_double;
#[unsafe(method(setSquareSize:))]
#[unsafe(method_family = none)]
pub unsafe fn setSquareSize(&self, square_size: c_double);
#[unsafe(method(checkerboardNoiseWithSquareSize:))]
#[unsafe(method_family = none)]
pub unsafe fn checkerboardNoiseWithSquareSize(square_size: c_double) -> Retained<Self>;
#[unsafe(method(initWithSquareSize:))]
#[unsafe(method_family = init)]
pub unsafe fn initWithSquareSize(
this: Allocated<Self>,
square_size: c_double,
) -> Retained<Self>;
);
}
impl GKCheckerboardNoiseSource {
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>;
);
}