use core::ffi::*;
use core::ptr::NonNull;
use objc2::__framework_prelude::*;
#[cfg(feature = "objc2-core-location")]
use objc2_core_location::*;
use objc2_foundation::*;
use crate::*;
extern "C" {
#[cfg(feature = "objc2-core-location")]
pub static MKPointsOfInterestRequestMaxRadius: CLLocationDistance;
}
extern_class!(
#[unsafe(super(NSObject))]
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct MKLocalPointsOfInterestRequest;
);
extern_conformance!(
unsafe impl NSCopying for MKLocalPointsOfInterestRequest {}
);
unsafe impl CopyingHelper for MKLocalPointsOfInterestRequest {
type Result = Self;
}
extern_conformance!(
unsafe impl NSObjectProtocol for MKLocalPointsOfInterestRequest {}
);
impl MKLocalPointsOfInterestRequest {
extern_methods!(
#[unsafe(method(init))]
#[unsafe(method_family = init)]
pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
#[cfg(feature = "objc2-core-location")]
#[unsafe(method(initWithCenterCoordinate:radius:))]
#[unsafe(method_family = init)]
pub unsafe fn initWithCenterCoordinate_radius(
this: Allocated<Self>,
coordinate: CLLocationCoordinate2D,
radius: CLLocationDistance,
) -> Retained<Self>;
#[cfg(all(feature = "MKGeometry", feature = "objc2-core-location"))]
#[unsafe(method(initWithCoordinateRegion:))]
#[unsafe(method_family = init)]
pub unsafe fn initWithCoordinateRegion(
this: Allocated<Self>,
region: MKCoordinateRegion,
) -> Retained<Self>;
#[cfg(feature = "objc2-core-location")]
#[unsafe(method(coordinate))]
#[unsafe(method_family = none)]
pub unsafe fn coordinate(&self) -> CLLocationCoordinate2D;
#[cfg(feature = "objc2-core-location")]
#[unsafe(method(radius))]
#[unsafe(method_family = none)]
pub unsafe fn radius(&self) -> CLLocationDistance;
#[cfg(all(feature = "MKGeometry", feature = "objc2-core-location"))]
#[unsafe(method(region))]
#[unsafe(method_family = none)]
pub unsafe fn region(&self) -> MKCoordinateRegion;
#[cfg(feature = "MKPointOfInterestFilter")]
#[unsafe(method(pointOfInterestFilter))]
#[unsafe(method_family = none)]
pub unsafe fn pointOfInterestFilter(&self) -> Option<Retained<MKPointOfInterestFilter>>;
#[cfg(feature = "MKPointOfInterestFilter")]
#[unsafe(method(setPointOfInterestFilter:))]
#[unsafe(method_family = none)]
pub unsafe fn setPointOfInterestFilter(
&self,
point_of_interest_filter: Option<&MKPointOfInterestFilter>,
);
);
}
impl MKLocalPointsOfInterestRequest {
extern_methods!(
#[unsafe(method(new))]
#[unsafe(method_family = new)]
pub unsafe fn new() -> Retained<Self>;
);
}