fidl_fuchsia_bluetooth_avdtp_test_common/
fidl_fuchsia_bluetooth_avdtp_test_common.rs1#![warn(clippy::all)]
4#![allow(unused_parens, unused_mut, unused_imports, nonstandard_style)]
5
6use bitflags::bitflags;
7use fidl::encoding::{MessageBufFor, ProxyChannelBox, ResourceDialect};
8use futures::future::{self, MaybeDone, TryFutureExt};
9use zx_status;
10
11pub const MAX_PICONET_SIZE: u64 = 8;
14
15#[derive(Copy, Clone, Debug, Eq, PartialEq, Ord, PartialOrd, Hash)]
17#[repr(u32)]
18pub enum PeerError {
19 UnknownFailure = 1,
21 ProtocolError = 2,
23}
24
25impl PeerError {
26 #[inline]
27 pub fn from_primitive(prim: u32) -> Option<Self> {
28 match prim {
29 1 => Some(Self::UnknownFailure),
30 2 => Some(Self::ProtocolError),
31 _ => None,
32 }
33 }
34
35 #[inline]
36 pub const fn into_primitive(self) -> u32 {
37 self as u32
38 }
39}
40
41#[derive(Clone, Debug, PartialEq)]
42pub struct PeerManagerConnectedPeersResponse {
43 pub peer_ids: Vec<fidl_fuchsia_bluetooth_common::PeerId>,
44}
45
46impl fidl::Persistable for PeerManagerConnectedPeersResponse {}
47
48#[derive(Clone, Debug, PartialEq)]
49pub struct PeerManagerOnPeerConnectedRequest {
50 pub peer_id: fidl_fuchsia_bluetooth_common::PeerId,
51}
52
53impl fidl::Persistable for PeerManagerOnPeerConnectedRequest {}
54
55pub mod peer_controller_ordinals {
56 pub const SET_CONFIGURATION: u64 = 0x35f45144acf701ae;
57 pub const GET_CONFIGURATION: u64 = 0x507eb0483e8d50d;
58 pub const SUSPEND_STREAM: u64 = 0x43465c9341d472eb;
59 pub const SUSPEND_AND_RECONFIGURE: u64 = 0x7ce8e3b693e20fe3;
60 pub const ESTABLISH_STREAM: u64 = 0x438e16ccd91eb5e5;
61 pub const RELEASE_STREAM: u64 = 0x4884104b373151c6;
62 pub const ABORT_STREAM: u64 = 0xf85b067ed144997;
63 pub const START_STREAM: u64 = 0xd0ead9aec2ebf77;
64 pub const RECONFIGURE_STREAM: u64 = 0x559404d6a9629c60;
65 pub const GET_CAPABILITIES: u64 = 0x16884c07e6d969a7;
66 pub const GET_ALL_CAPABILITIES: u64 = 0x1e2c5b438e288cea;
67}
68
69pub mod peer_manager_ordinals {
70 pub const GET_PEER: u64 = 0x2a506872f2b04086;
71 pub const CONNECTED_PEERS: u64 = 0x1deaca0295d5f8d6;
72 pub const ON_PEER_CONNECTED: u64 = 0x154e6b9e519774d1;
73}
74
75mod internal {
76 use super::*;
77 unsafe impl fidl::encoding::TypeMarker for PeerError {
78 type Owned = Self;
79
80 #[inline(always)]
81 fn inline_align(_context: fidl::encoding::Context) -> usize {
82 std::mem::align_of::<u32>()
83 }
84
85 #[inline(always)]
86 fn inline_size(_context: fidl::encoding::Context) -> usize {
87 std::mem::size_of::<u32>()
88 }
89
90 #[inline(always)]
91 fn encode_is_copy() -> bool {
92 true
93 }
94
95 #[inline(always)]
96 fn decode_is_copy() -> bool {
97 false
98 }
99 }
100
101 impl fidl::encoding::ValueTypeMarker for PeerError {
102 type Borrowed<'a> = Self;
103 #[inline(always)]
104 fn borrow(value: &<Self as fidl::encoding::TypeMarker>::Owned) -> Self::Borrowed<'_> {
105 *value
106 }
107 }
108
109 unsafe impl<D: fidl::encoding::ResourceDialect> fidl::encoding::Encode<Self, D> for PeerError {
110 #[inline]
111 unsafe fn encode(
112 self,
113 encoder: &mut fidl::encoding::Encoder<'_, D>,
114 offset: usize,
115 _depth: fidl::encoding::Depth,
116 ) -> fidl::Result<()> {
117 encoder.debug_check_bounds::<Self>(offset);
118 encoder.write_num(self.into_primitive(), offset);
119 Ok(())
120 }
121 }
122
123 impl<D: fidl::encoding::ResourceDialect> fidl::encoding::Decode<Self, D> for PeerError {
124 #[inline(always)]
125 fn new_empty() -> Self {
126 Self::UnknownFailure
127 }
128
129 #[inline]
130 unsafe fn decode(
131 &mut self,
132 decoder: &mut fidl::encoding::Decoder<'_, D>,
133 offset: usize,
134 _depth: fidl::encoding::Depth,
135 ) -> fidl::Result<()> {
136 decoder.debug_check_bounds::<Self>(offset);
137 let prim = decoder.read_num::<u32>(offset);
138
139 *self = Self::from_primitive(prim).ok_or(fidl::Error::InvalidEnumValue)?;
140 Ok(())
141 }
142 }
143
144 impl fidl::encoding::ValueTypeMarker for PeerManagerConnectedPeersResponse {
145 type Borrowed<'a> = &'a Self;
146 fn borrow(value: &<Self as fidl::encoding::TypeMarker>::Owned) -> Self::Borrowed<'_> {
147 value
148 }
149 }
150
151 unsafe impl fidl::encoding::TypeMarker for PeerManagerConnectedPeersResponse {
152 type Owned = Self;
153
154 #[inline(always)]
155 fn inline_align(_context: fidl::encoding::Context) -> usize {
156 8
157 }
158
159 #[inline(always)]
160 fn inline_size(_context: fidl::encoding::Context) -> usize {
161 16
162 }
163 }
164
165 unsafe impl<D: fidl::encoding::ResourceDialect>
166 fidl::encoding::Encode<PeerManagerConnectedPeersResponse, D>
167 for &PeerManagerConnectedPeersResponse
168 {
169 #[inline]
170 unsafe fn encode(
171 self,
172 encoder: &mut fidl::encoding::Encoder<'_, D>,
173 offset: usize,
174 _depth: fidl::encoding::Depth,
175 ) -> fidl::Result<()> {
176 encoder.debug_check_bounds::<PeerManagerConnectedPeersResponse>(offset);
177 fidl::encoding::Encode::<PeerManagerConnectedPeersResponse, D>::encode(
179 (
180 <fidl::encoding::Vector<fidl_fuchsia_bluetooth_common::PeerId, 8> as fidl::encoding::ValueTypeMarker>::borrow(&self.peer_ids),
181 ),
182 encoder, offset, _depth
183 )
184 }
185 }
186 unsafe impl<
187 D: fidl::encoding::ResourceDialect,
188 T0: fidl::encoding::Encode<fidl::encoding::Vector<fidl_fuchsia_bluetooth_common::PeerId, 8>, D>,
189 > fidl::encoding::Encode<PeerManagerConnectedPeersResponse, D> for (T0,)
190 {
191 #[inline]
192 unsafe fn encode(
193 self,
194 encoder: &mut fidl::encoding::Encoder<'_, D>,
195 offset: usize,
196 depth: fidl::encoding::Depth,
197 ) -> fidl::Result<()> {
198 encoder.debug_check_bounds::<PeerManagerConnectedPeersResponse>(offset);
199 self.0.encode(encoder, offset + 0, depth)?;
203 Ok(())
204 }
205 }
206
207 impl<D: fidl::encoding::ResourceDialect> fidl::encoding::Decode<Self, D>
208 for PeerManagerConnectedPeersResponse
209 {
210 #[inline(always)]
211 fn new_empty() -> Self {
212 Self {
213 peer_ids: fidl::new_empty!(fidl::encoding::Vector<fidl_fuchsia_bluetooth_common::PeerId, 8>, D),
214 }
215 }
216
217 #[inline]
218 unsafe fn decode(
219 &mut self,
220 decoder: &mut fidl::encoding::Decoder<'_, D>,
221 offset: usize,
222 _depth: fidl::encoding::Depth,
223 ) -> fidl::Result<()> {
224 decoder.debug_check_bounds::<Self>(offset);
225 fidl::decode!(fidl::encoding::Vector<fidl_fuchsia_bluetooth_common::PeerId, 8>, D, &mut self.peer_ids, decoder, offset + 0, _depth)?;
227 Ok(())
228 }
229 }
230
231 impl fidl::encoding::ValueTypeMarker for PeerManagerOnPeerConnectedRequest {
232 type Borrowed<'a> = &'a Self;
233 fn borrow(value: &<Self as fidl::encoding::TypeMarker>::Owned) -> Self::Borrowed<'_> {
234 value
235 }
236 }
237
238 unsafe impl fidl::encoding::TypeMarker for PeerManagerOnPeerConnectedRequest {
239 type Owned = Self;
240
241 #[inline(always)]
242 fn inline_align(_context: fidl::encoding::Context) -> usize {
243 8
244 }
245
246 #[inline(always)]
247 fn inline_size(_context: fidl::encoding::Context) -> usize {
248 8
249 }
250 }
251
252 unsafe impl<D: fidl::encoding::ResourceDialect>
253 fidl::encoding::Encode<PeerManagerOnPeerConnectedRequest, D>
254 for &PeerManagerOnPeerConnectedRequest
255 {
256 #[inline]
257 unsafe fn encode(
258 self,
259 encoder: &mut fidl::encoding::Encoder<'_, D>,
260 offset: usize,
261 _depth: fidl::encoding::Depth,
262 ) -> fidl::Result<()> {
263 encoder.debug_check_bounds::<PeerManagerOnPeerConnectedRequest>(offset);
264 fidl::encoding::Encode::<PeerManagerOnPeerConnectedRequest, D>::encode(
266 (
267 <fidl_fuchsia_bluetooth_common::PeerId as fidl::encoding::ValueTypeMarker>::borrow(&self.peer_id),
268 ),
269 encoder, offset, _depth
270 )
271 }
272 }
273 unsafe impl<
274 D: fidl::encoding::ResourceDialect,
275 T0: fidl::encoding::Encode<fidl_fuchsia_bluetooth_common::PeerId, D>,
276 > fidl::encoding::Encode<PeerManagerOnPeerConnectedRequest, D> for (T0,)
277 {
278 #[inline]
279 unsafe fn encode(
280 self,
281 encoder: &mut fidl::encoding::Encoder<'_, D>,
282 offset: usize,
283 depth: fidl::encoding::Depth,
284 ) -> fidl::Result<()> {
285 encoder.debug_check_bounds::<PeerManagerOnPeerConnectedRequest>(offset);
286 self.0.encode(encoder, offset + 0, depth)?;
290 Ok(())
291 }
292 }
293
294 impl<D: fidl::encoding::ResourceDialect> fidl::encoding::Decode<Self, D>
295 for PeerManagerOnPeerConnectedRequest
296 {
297 #[inline(always)]
298 fn new_empty() -> Self {
299 Self { peer_id: fidl::new_empty!(fidl_fuchsia_bluetooth_common::PeerId, D) }
300 }
301
302 #[inline]
303 unsafe fn decode(
304 &mut self,
305 decoder: &mut fidl::encoding::Decoder<'_, D>,
306 offset: usize,
307 _depth: fidl::encoding::Depth,
308 ) -> fidl::Result<()> {
309 decoder.debug_check_bounds::<Self>(offset);
310 fidl::decode!(
312 fidl_fuchsia_bluetooth_common::PeerId,
313 D,
314 &mut self.peer_id,
315 decoder,
316 offset + 0,
317 _depth
318 )?;
319 Ok(())
320 }
321 }
322}