1use super::class_requires::*;
2use super::*;
3#[allow(non_upper_case_globals, non_snake_case)]
10#[cfg_attr(feature = "json_schema", derive(schemars::JsonSchema))]
11#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
12#[derive(educe::Educe)]
13#[educe(Debug, Clone, Default, PartialEq)]
14pub struct hkbGetWorldFromModelModifierInternalState {
15 #[cfg_attr(
22 feature = "serde",
23 serde(skip_serializing_if = "Option::is_none", default)
24 )]
25 pub __ptr: Option<Pointer>,
26 #[cfg_attr(feature = "json_schema", schemars(flatten))]
28 #[cfg_attr(feature = "serde", serde(flatten))]
29 pub parent: hkReferencedObject,
30 #[cfg_attr(feature = "json_schema", schemars(rename = "translationOut"))]
35 #[cfg_attr(feature = "serde", serde(rename = "translationOut"))]
36 pub m_translationOut: Vector4,
37 #[cfg_attr(feature = "json_schema", schemars(rename = "rotationOut"))]
42 #[cfg_attr(feature = "serde", serde(rename = "rotationOut"))]
43 pub m_rotationOut: Quaternion,
44}
45const _: () = {
46 use havok_serde as _serde;
47 impl _serde::HavokClass for hkbGetWorldFromModelModifierInternalState {
48 #[inline]
49 fn name(&self) -> &'static str {
50 "hkbGetWorldFromModelModifierInternalState"
51 }
52 #[inline]
53 fn signature(&self) -> _serde::__private::Signature {
54 _serde::__private::Signature::new(0xa92ed39f)
55 }
56 #[allow(clippy::let_and_return, clippy::vec_init_then_push)]
57 fn deps_indexes(&self) -> Vec<usize> {
58 let mut v = Vec::new();
59 v
60 }
61 }
62 impl _serde::Serialize for hkbGetWorldFromModelModifierInternalState {
63 fn serialize<S>(&self, __serializer: S) -> Result<S::Ok, S::Error>
64 where
65 S: _serde::ser::Serializer,
66 {
67 let class_meta = self
68 .__ptr
69 .map(|name| (name, _serde::__private::Signature::new(0xa92ed39f)));
70 let mut serializer = __serializer
71 .serialize_struct(
72 "hkbGetWorldFromModelModifierInternalState",
73 class_meta,
74 (48u64, 48u64),
75 )?;
76 serializer.pad_field([0u8; 4usize].as_slice(), [0u8; 8usize].as_slice())?;
77 serializer.skip_field("memSizeAndFlags", &self.parent.m_memSizeAndFlags)?;
78 serializer.skip_field("referenceCount", &self.parent.m_referenceCount)?;
79 serializer.pad_field([0u8; 0usize].as_slice(), [0u8; 4usize].as_slice())?;
80 serializer.pad_field([0u8; 8usize].as_slice(), [0u8; 0usize].as_slice())?;
81 serializer.serialize_field("translationOut", &self.m_translationOut)?;
82 serializer.serialize_field("rotationOut", &self.m_rotationOut)?;
83 serializer.end()
84 }
85 }
86};
87#[doc(hidden)]
88#[allow(non_upper_case_globals, unused_attributes, unused_qualifications)]
89const _: () = {
90 use havok_serde as _serde;
91 #[automatically_derived]
92 impl<'de> _serde::Deserialize<'de> for hkbGetWorldFromModelModifierInternalState {
93 fn deserialize<__D>(deserializer: __D) -> core::result::Result<Self, __D::Error>
94 where
95 __D: _serde::Deserializer<'de>,
96 {
97 #[allow(non_camel_case_types)]
98 enum __Field {
99 m_translationOut,
100 m_rotationOut,
101 __ignore,
102 }
103 struct __FieldVisitor;
104 impl<'de> _serde::de::Visitor<'de> for __FieldVisitor {
105 type Value = __Field;
106 fn expecting(
107 &self,
108 __formatter: &mut core::fmt::Formatter,
109 ) -> core::fmt::Result {
110 core::fmt::Formatter::write_str(__formatter, "field identifier")
111 }
112 #[allow(clippy::match_single_binding)]
114 #[allow(clippy::reversed_empty_ranges)]
115 #[allow(clippy::single_match)]
116 fn visit_key<__E>(
117 self,
118 __value: &str,
119 ) -> core::result::Result<Self::Value, __E>
120 where
121 __E: _serde::de::Error,
122 {
123 match __value {
124 "translationOut" => Ok(__Field::m_translationOut),
125 "rotationOut" => Ok(__Field::m_rotationOut),
126 _ => Ok(__Field::__ignore),
127 }
128 }
129 }
130 impl<'de> _serde::Deserialize<'de> for __Field {
131 #[inline]
132 fn deserialize<__D>(
133 __deserializer: __D,
134 ) -> core::result::Result<Self, __D::Error>
135 where
136 __D: _serde::Deserializer<'de>,
137 {
138 _serde::Deserializer::deserialize_key(__deserializer, __FieldVisitor)
139 }
140 }
141 struct __hkbGetWorldFromModelModifierInternalStateVisitor<'de> {
142 marker: _serde::__private::PhantomData<
143 hkbGetWorldFromModelModifierInternalState,
144 >,
145 lifetime: _serde::__private::PhantomData<&'de ()>,
146 }
147 #[allow(clippy::match_single_binding)]
148 #[allow(clippy::reversed_empty_ranges)]
149 #[allow(clippy::single_match)]
150 impl<'de> _serde::de::Visitor<'de>
151 for __hkbGetWorldFromModelModifierInternalStateVisitor<'de> {
152 type Value = hkbGetWorldFromModelModifierInternalState;
153 fn expecting(
154 &self,
155 __formatter: &mut core::fmt::Formatter,
156 ) -> core::fmt::Result {
157 core::fmt::Formatter::write_str(
158 __formatter,
159 "struct hkbGetWorldFromModelModifierInternalState",
160 )
161 }
162 fn visit_struct_for_bytes<__A>(
163 self,
164 mut __map: __A,
165 ) -> _serde::__private::Result<Self::Value, __A::Error>
166 where
167 __A: _serde::de::MapAccess<'de>,
168 {
169 let __ptr = __A::class_ptr(&mut __map);
170 let parent = __A::parent_value(&mut __map)?;
171 let mut m_translationOut: _serde::__private::Option<Vector4> = _serde::__private::None;
172 let mut m_rotationOut: _serde::__private::Option<Quaternion> = _serde::__private::None;
173 for i in 0..2usize {
174 match i {
175 0usize => {
176 if _serde::__private::Option::is_some(&m_translationOut) {
177 return _serde::__private::Err(
178 <__A::Error as _serde::de::Error>::duplicate_field(
179 "translationOut",
180 ),
181 );
182 }
183 __A::pad(&mut __map, 8usize, 0usize)?;
184 m_translationOut = _serde::__private::Some(
185 match __A::next_value::<Vector4>(&mut __map) {
186 _serde::__private::Ok(__val) => __val,
187 _serde::__private::Err(__err) => {
188 return _serde::__private::Err(__err);
189 }
190 },
191 );
192 }
193 1usize => {
194 if _serde::__private::Option::is_some(&m_rotationOut) {
195 return _serde::__private::Err(
196 <__A::Error as _serde::de::Error>::duplicate_field(
197 "rotationOut",
198 ),
199 );
200 }
201 m_rotationOut = _serde::__private::Some(
202 match __A::next_value::<Quaternion>(&mut __map) {
203 _serde::__private::Ok(__val) => __val,
204 _serde::__private::Err(__err) => {
205 return _serde::__private::Err(__err);
206 }
207 },
208 );
209 }
210 _ => {}
211 }
212 }
213 let m_translationOut = match m_translationOut {
214 _serde::__private::Some(__field) => __field,
215 _serde::__private::None => {
216 return _serde::__private::Err(
217 <__A::Error as _serde::de::Error>::missing_field(
218 "translationOut",
219 ),
220 );
221 }
222 };
223 let m_rotationOut = match m_rotationOut {
224 _serde::__private::Some(__field) => __field,
225 _serde::__private::None => {
226 return _serde::__private::Err(
227 <__A::Error as _serde::de::Error>::missing_field(
228 "rotationOut",
229 ),
230 );
231 }
232 };
233 _serde::__private::Ok(hkbGetWorldFromModelModifierInternalState {
234 __ptr,
235 parent,
236 m_translationOut,
237 m_rotationOut,
238 })
239 }
240 #[allow(clippy::manual_unwrap_or_default)]
241 fn visit_struct<__A>(
242 self,
243 mut __map: __A,
244 ) -> _serde::__private::Result<Self::Value, __A::Error>
245 where
246 __A: _serde::de::MapAccess<'de>,
247 {
248 let mut m_translationOut: _serde::__private::Option<Vector4> = _serde::__private::None;
249 let mut m_rotationOut: _serde::__private::Option<Quaternion> = _serde::__private::None;
250 while let _serde::__private::Some(__key) = {
251 __A::next_key::<__Field>(&mut __map)?
252 } {
253 match __key {
254 __Field::m_translationOut => {
255 #[cfg(
256 any(feature = "strict", feature = "ignore_duplicates")
257 )]
258 if _serde::__private::Option::is_some(&m_translationOut) {
259 #[cfg(feature = "ignore_duplicates")]
260 {
261 __A::skip_value(&mut __map)?;
262 continue;
263 }
264 #[cfg(feature = "strict")]
265 return _serde::__private::Err(
266 <__A::Error as _serde::de::Error>::duplicate_field(
267 "translationOut",
268 ),
269 );
270 }
271 m_translationOut = _serde::__private::Some(
272 match __A::next_value::<Vector4>(&mut __map) {
273 _serde::__private::Ok(__val) => __val,
274 _serde::__private::Err(__err) => {
275 return _serde::__private::Err(__err);
276 }
277 },
278 );
279 }
280 __Field::m_rotationOut => {
281 #[cfg(
282 any(feature = "strict", feature = "ignore_duplicates")
283 )]
284 if _serde::__private::Option::is_some(&m_rotationOut) {
285 #[cfg(feature = "ignore_duplicates")]
286 {
287 __A::skip_value(&mut __map)?;
288 continue;
289 }
290 #[cfg(feature = "strict")]
291 return _serde::__private::Err(
292 <__A::Error as _serde::de::Error>::duplicate_field(
293 "rotationOut",
294 ),
295 );
296 }
297 m_rotationOut = _serde::__private::Some(
298 match __A::next_value::<Quaternion>(&mut __map) {
299 _serde::__private::Ok(__val) => __val,
300 _serde::__private::Err(__err) => {
301 return _serde::__private::Err(__err);
302 }
303 },
304 );
305 }
306 _ => __A::skip_value(&mut __map)?,
307 }
308 }
309 let m_translationOut = match m_translationOut {
310 _serde::__private::Some(__field) => __field,
311 _serde::__private::None => {
312 #[cfg(feature = "strict")]
313 return _serde::__private::Err(
314 <__A::Error as _serde::de::Error>::missing_field(
315 "translationOut",
316 ),
317 );
318 #[cfg(not(feature = "strict"))] Default::default()
319 }
320 };
321 let m_rotationOut = match m_rotationOut {
322 _serde::__private::Some(__field) => __field,
323 _serde::__private::None => {
324 #[cfg(feature = "strict")]
325 return _serde::__private::Err(
326 <__A::Error as _serde::de::Error>::missing_field(
327 "rotationOut",
328 ),
329 );
330 #[cfg(not(feature = "strict"))] Default::default()
331 }
332 };
333 let __ptr = None;
334 let parent = hkBaseObject { __ptr };
335 let parent = hkReferencedObject {
336 __ptr,
337 parent,
338 ..Default::default()
339 };
340 let __ptr = __A::class_ptr(&mut __map);
341 _serde::__private::Ok(hkbGetWorldFromModelModifierInternalState {
342 __ptr,
343 parent,
344 m_translationOut,
345 m_rotationOut,
346 })
347 }
348 }
349 const FIELDS: &[&str] = &["translationOut", "rotationOut"];
350 _serde::Deserializer::deserialize_struct(
351 deserializer,
352 "hkbGetWorldFromModelModifierInternalState",
353 FIELDS,
354 __hkbGetWorldFromModelModifierInternalStateVisitor {
355 marker: _serde::__private::PhantomData::<
356 hkbGetWorldFromModelModifierInternalState,
357 >,
358 lifetime: _serde::__private::PhantomData,
359 },
360 )
361 }
362 }
363};