use cocoa::base::{id, BOOL};
use cocoa::foundation::NSUInteger;
use objc::*;
pub trait ICDeviceBrowser: Sized {
unsafe fn alloc(_: Self) -> id {
msg_send![class!(ICDeviceBrowser), alloc]
}
unsafe fn new(_: Self) -> id {
msg_send![class!(ICDeviceBrowser), new]
}
unsafe fn delegate(self) -> id;
unsafe fn setDelegate(self, delegate: id);
unsafe fn isBrowsing(self) -> BOOL;
unsafe fn browsedDeviceTypeMask(self) -> NSUInteger;
unsafe fn setBrowsedDeviceTypeMask(self, mask: NSUInteger);
unsafe fn devices(self) -> id ;
unsafe fn preferredDevice(self) -> id;
unsafe fn init(self) -> id;
unsafe fn start(self);
unsafe fn stop(self);
}
impl ICDeviceBrowser for id {
unsafe fn delegate(self) -> id {
msg_send![self, delegate]
}
unsafe fn setDelegate(self, delegate: id) {
msg_send![self, setDelegate: delegate]
}
unsafe fn browsedDeviceTypeMask(self) -> NSUInteger {
msg_send![self, browsedDeviceTypeMask]
}
unsafe fn setBrowsedDeviceTypeMask(self, mask: NSUInteger) {
msg_send![self, setBrowsedDeviceTypeMask: mask]
}
unsafe fn isBrowsing(self) -> BOOL {
msg_send![self, isBrowsing]
}
unsafe fn devices(self) -> id {
msg_send![self, devices]
}
unsafe fn preferredDevice(self) -> id {
msg_send![self, preferredDevice]
}
unsafe fn init(self) -> id {
msg_send![self, init]
}
unsafe fn start(self) {
msg_send![self, start]
}
unsafe fn stop(self) {
msg_send![self, stop]
}
}
#[link(name = "ImageCaptureCore", kind = "framework")]
extern "C" {}