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<
189 fidl::encoding::Vector<fidl_fuchsia_bluetooth__common::PeerId, 8>,
190 D,
191 >,
192 > fidl::encoding::Encode<PeerManagerConnectedPeersResponse, D> for (T0,)
193 {
194 #[inline]
195 unsafe fn encode(
196 self,
197 encoder: &mut fidl::encoding::Encoder<'_, D>,
198 offset: usize,
199 depth: fidl::encoding::Depth,
200 ) -> fidl::Result<()> {
201 encoder.debug_check_bounds::<PeerManagerConnectedPeersResponse>(offset);
202 self.0.encode(encoder, offset + 0, depth)?;
206 Ok(())
207 }
208 }
209
210 impl<D: fidl::encoding::ResourceDialect> fidl::encoding::Decode<Self, D>
211 for PeerManagerConnectedPeersResponse
212 {
213 #[inline(always)]
214 fn new_empty() -> Self {
215 Self {
216 peer_ids: fidl::new_empty!(fidl::encoding::Vector<fidl_fuchsia_bluetooth__common::PeerId, 8>, D),
217 }
218 }
219
220 #[inline]
221 unsafe fn decode(
222 &mut self,
223 decoder: &mut fidl::encoding::Decoder<'_, D>,
224 offset: usize,
225 _depth: fidl::encoding::Depth,
226 ) -> fidl::Result<()> {
227 decoder.debug_check_bounds::<Self>(offset);
228 fidl::decode!(fidl::encoding::Vector<fidl_fuchsia_bluetooth__common::PeerId, 8>, D, &mut self.peer_ids, decoder, offset + 0, _depth)?;
230 Ok(())
231 }
232 }
233
234 impl fidl::encoding::ValueTypeMarker for PeerManagerOnPeerConnectedRequest {
235 type Borrowed<'a> = &'a Self;
236 fn borrow(value: &<Self as fidl::encoding::TypeMarker>::Owned) -> Self::Borrowed<'_> {
237 value
238 }
239 }
240
241 unsafe impl fidl::encoding::TypeMarker for PeerManagerOnPeerConnectedRequest {
242 type Owned = Self;
243
244 #[inline(always)]
245 fn inline_align(_context: fidl::encoding::Context) -> usize {
246 8
247 }
248
249 #[inline(always)]
250 fn inline_size(_context: fidl::encoding::Context) -> usize {
251 8
252 }
253 }
254
255 unsafe impl<D: fidl::encoding::ResourceDialect>
256 fidl::encoding::Encode<PeerManagerOnPeerConnectedRequest, D>
257 for &PeerManagerOnPeerConnectedRequest
258 {
259 #[inline]
260 unsafe fn encode(
261 self,
262 encoder: &mut fidl::encoding::Encoder<'_, D>,
263 offset: usize,
264 _depth: fidl::encoding::Depth,
265 ) -> fidl::Result<()> {
266 encoder.debug_check_bounds::<PeerManagerOnPeerConnectedRequest>(offset);
267 fidl::encoding::Encode::<PeerManagerOnPeerConnectedRequest, D>::encode(
269 (
270 <fidl_fuchsia_bluetooth__common::PeerId as fidl::encoding::ValueTypeMarker>::borrow(&self.peer_id),
271 ),
272 encoder, offset, _depth
273 )
274 }
275 }
276 unsafe impl<
277 D: fidl::encoding::ResourceDialect,
278 T0: fidl::encoding::Encode<fidl_fuchsia_bluetooth__common::PeerId, D>,
279 > fidl::encoding::Encode<PeerManagerOnPeerConnectedRequest, D> for (T0,)
280 {
281 #[inline]
282 unsafe fn encode(
283 self,
284 encoder: &mut fidl::encoding::Encoder<'_, D>,
285 offset: usize,
286 depth: fidl::encoding::Depth,
287 ) -> fidl::Result<()> {
288 encoder.debug_check_bounds::<PeerManagerOnPeerConnectedRequest>(offset);
289 self.0.encode(encoder, offset + 0, depth)?;
293 Ok(())
294 }
295 }
296
297 impl<D: fidl::encoding::ResourceDialect> fidl::encoding::Decode<Self, D>
298 for PeerManagerOnPeerConnectedRequest
299 {
300 #[inline(always)]
301 fn new_empty() -> Self {
302 Self { peer_id: fidl::new_empty!(fidl_fuchsia_bluetooth__common::PeerId, D) }
303 }
304
305 #[inline]
306 unsafe fn decode(
307 &mut self,
308 decoder: &mut fidl::encoding::Decoder<'_, D>,
309 offset: usize,
310 _depth: fidl::encoding::Depth,
311 ) -> fidl::Result<()> {
312 decoder.debug_check_bounds::<Self>(offset);
313 fidl::decode!(
315 fidl_fuchsia_bluetooth__common::PeerId,
316 D,
317 &mut self.peer_id,
318 decoder,
319 offset + 0,
320 _depth
321 )?;
322 Ok(())
323 }
324 }
325}