objc2_media_player/generated/
MPMusicPlayerApplicationController.rs1use core::ffi::*;
4use core::ptr::NonNull;
5use objc2::__framework_prelude::*;
6use objc2_foundation::*;
7
8use crate::*;
9
10extern_class!(
11 #[unsafe(super(NSObject))]
13 #[derive(Debug, PartialEq, Eq, Hash)]
14 pub struct MPMusicPlayerControllerQueue;
15);
16
17extern_conformance!(
18 unsafe impl NSObjectProtocol for MPMusicPlayerControllerQueue {}
19);
20
21impl MPMusicPlayerControllerQueue {
22 extern_methods!(
23 #[unsafe(method(new))]
24 #[unsafe(method_family = new)]
25 pub unsafe fn new() -> Retained<Self>;
26
27 #[unsafe(method(init))]
28 #[unsafe(method_family = init)]
29 pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
30
31 #[cfg(all(feature = "MPMediaEntity", feature = "MPMediaItem"))]
32 #[unsafe(method(items))]
33 #[unsafe(method_family = none)]
34 pub unsafe fn items(&self) -> Retained<NSArray<MPMediaItem>>;
35 );
36}
37
38extern_class!(
39 #[unsafe(super(MPMusicPlayerControllerQueue, NSObject))]
41 #[derive(Debug, PartialEq, Eq, Hash)]
42 pub struct MPMusicPlayerControllerMutableQueue;
43);
44
45extern_conformance!(
46 unsafe impl NSObjectProtocol for MPMusicPlayerControllerMutableQueue {}
47);
48
49impl MPMusicPlayerControllerMutableQueue {
50 extern_methods!(
51 #[cfg(all(
52 feature = "MPMediaEntity",
53 feature = "MPMediaItem",
54 feature = "MPMusicPlayerQueueDescriptor"
55 ))]
56 #[unsafe(method(insertQueueDescriptor:afterItem:))]
57 #[unsafe(method_family = none)]
58 pub unsafe fn insertQueueDescriptor_afterItem(
59 &self,
60 queue_descriptor: &MPMusicPlayerQueueDescriptor,
61 after_item: Option<&MPMediaItem>,
62 );
63
64 #[cfg(all(feature = "MPMediaEntity", feature = "MPMediaItem"))]
65 #[unsafe(method(removeItem:))]
66 #[unsafe(method_family = none)]
67 pub unsafe fn removeItem(&self, item: &MPMediaItem);
68 );
69}
70
71impl MPMusicPlayerControllerMutableQueue {
73 extern_methods!(
74 #[unsafe(method(new))]
75 #[unsafe(method_family = new)]
76 pub unsafe fn new() -> Retained<Self>;
77
78 #[unsafe(method(init))]
79 #[unsafe(method_family = init)]
80 pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
81 );
82}
83
84extern_class!(
85 #[unsafe(super(MPMusicPlayerController, NSObject))]
87 #[derive(Debug, PartialEq, Eq, Hash)]
88 #[cfg(feature = "MPMusicPlayerController")]
89 pub struct MPMusicPlayerApplicationController;
90);
91
92#[cfg(all(feature = "MPMediaPlayback", feature = "MPMusicPlayerController"))]
93extern_conformance!(
94 unsafe impl MPMediaPlayback for MPMusicPlayerApplicationController {}
95);
96
97#[cfg(feature = "MPMusicPlayerController")]
98extern_conformance!(
99 unsafe impl NSObjectProtocol for MPMusicPlayerApplicationController {}
100);
101
102#[cfg(feature = "MPMusicPlayerController")]
103impl MPMusicPlayerApplicationController {
104 extern_methods!(
105 #[cfg(feature = "block2")]
106 #[unsafe(method(performQueueTransaction:completionHandler:))]
107 #[unsafe(method_family = none)]
108 pub unsafe fn performQueueTransaction_completionHandler(
109 &self,
110 queue_transaction: &block2::DynBlock<
111 dyn Fn(NonNull<MPMusicPlayerControllerMutableQueue>),
112 >,
113 completion_handler: &block2::DynBlock<
114 dyn Fn(NonNull<MPMusicPlayerControllerQueue>, *mut NSError),
115 >,
116 );
117 );
118}
119
120#[cfg(feature = "MPMusicPlayerController")]
122impl MPMusicPlayerApplicationController {
123 extern_methods!(
124 #[unsafe(method(new))]
125 #[unsafe(method_family = new)]
126 pub unsafe fn new() -> Retained<Self>;
127
128 #[unsafe(method(init))]
129 #[unsafe(method_family = init)]
130 pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
131 );
132}
133
134extern "C" {
135 pub static MPMusicPlayerControllerQueueDidChangeNotification: &'static NSString;
137}