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 hkbEventRaisedInfo<'a> {
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 = "characterId"))]
35 #[cfg_attr(feature = "serde", serde(rename = "characterId"))]
36 pub m_characterId: u64,
37 #[cfg_attr(feature = "serde", serde(borrow))]
42 #[cfg_attr(feature = "json_schema", schemars(rename = "eventName"))]
43 #[cfg_attr(feature = "serde", serde(rename = "eventName"))]
44 pub m_eventName: StringPtr<'a>,
45 #[cfg_attr(feature = "json_schema", schemars(rename = "raisedBySdk"))]
50 #[cfg_attr(feature = "serde", serde(rename = "raisedBySdk"))]
51 pub m_raisedBySdk: bool,
52 #[cfg_attr(feature = "json_schema", schemars(rename = "senderId"))]
57 #[cfg_attr(feature = "serde", serde(rename = "senderId"))]
58 pub m_senderId: i32,
59 #[cfg_attr(feature = "json_schema", schemars(rename = "padding"))]
64 #[cfg_attr(feature = "serde", serde(rename = "padding"))]
65 pub m_padding: i32,
66}
67const _: () = {
68 use havok_serde as _serde;
69 impl<'a> _serde::HavokClass for hkbEventRaisedInfo<'a> {
70 #[inline]
71 fn name(&self) -> &'static str {
72 "hkbEventRaisedInfo"
73 }
74 #[inline]
75 fn signature(&self) -> _serde::__private::Signature {
76 _serde::__private::Signature::new(0xc02da3)
77 }
78 #[allow(clippy::let_and_return, clippy::vec_init_then_push)]
79 fn deps_indexes(&self) -> Vec<usize> {
80 let mut v = Vec::new();
81 v
82 }
83 }
84 impl<'a> _serde::Serialize for hkbEventRaisedInfo<'a> {
85 fn serialize<S>(&self, __serializer: S) -> Result<S::Ok, S::Error>
86 where
87 S: _serde::ser::Serializer,
88 {
89 let class_meta = self
90 .__ptr
91 .map(|name| (name, _serde::__private::Signature::new(0xc02da3)));
92 let mut serializer = __serializer
93 .serialize_struct("hkbEventRaisedInfo", class_meta, (32u64, 48u64))?;
94 serializer.pad_field([0u8; 4usize].as_slice(), [0u8; 8usize].as_slice())?;
95 serializer.skip_field("memSizeAndFlags", &self.parent.m_memSizeAndFlags)?;
96 serializer.skip_field("referenceCount", &self.parent.m_referenceCount)?;
97 serializer.pad_field([0u8; 0usize].as_slice(), [0u8; 4usize].as_slice())?;
98 serializer.serialize_field("characterId", &self.m_characterId)?;
99 serializer.serialize_field("eventName", &self.m_eventName)?;
100 serializer.serialize_field("raisedBySdk", &self.m_raisedBySdk)?;
101 serializer.pad_field([0u8; 3usize].as_slice(), [0u8; 3usize].as_slice())?;
102 serializer.serialize_field("senderId", &self.m_senderId)?;
103 serializer.serialize_field("padding", &self.m_padding)?;
104 serializer.pad_field([0u8; 0usize].as_slice(), [0u8; 4usize].as_slice())?;
105 serializer.end()
106 }
107 }
108};
109#[doc(hidden)]
110#[allow(non_upper_case_globals, unused_attributes, unused_qualifications)]
111const _: () = {
112 use havok_serde as _serde;
113 #[automatically_derived]
114 impl<'de> _serde::Deserialize<'de> for hkbEventRaisedInfo<'de> {
115 fn deserialize<__D>(deserializer: __D) -> core::result::Result<Self, __D::Error>
116 where
117 __D: _serde::Deserializer<'de>,
118 {
119 #[allow(non_camel_case_types)]
120 enum __Field {
121 m_characterId,
122 m_eventName,
123 m_raisedBySdk,
124 m_senderId,
125 m_padding,
126 __ignore,
127 }
128 struct __FieldVisitor;
129 impl<'de> _serde::de::Visitor<'de> for __FieldVisitor {
130 type Value = __Field;
131 fn expecting(
132 &self,
133 __formatter: &mut core::fmt::Formatter,
134 ) -> core::fmt::Result {
135 core::fmt::Formatter::write_str(__formatter, "field identifier")
136 }
137 #[allow(clippy::match_single_binding)]
139 #[allow(clippy::reversed_empty_ranges)]
140 #[allow(clippy::single_match)]
141 fn visit_key<__E>(
142 self,
143 __value: &str,
144 ) -> core::result::Result<Self::Value, __E>
145 where
146 __E: _serde::de::Error,
147 {
148 match __value {
149 "characterId" => Ok(__Field::m_characterId),
150 "eventName" => Ok(__Field::m_eventName),
151 "raisedBySdk" => Ok(__Field::m_raisedBySdk),
152 "senderId" => Ok(__Field::m_senderId),
153 "padding" => Ok(__Field::m_padding),
154 _ => Ok(__Field::__ignore),
155 }
156 }
157 }
158 impl<'de> _serde::Deserialize<'de> for __Field {
159 #[inline]
160 fn deserialize<__D>(
161 __deserializer: __D,
162 ) -> core::result::Result<Self, __D::Error>
163 where
164 __D: _serde::Deserializer<'de>,
165 {
166 _serde::Deserializer::deserialize_key(__deserializer, __FieldVisitor)
167 }
168 }
169 struct __hkbEventRaisedInfoVisitor<'de> {
170 marker: _serde::__private::PhantomData<hkbEventRaisedInfo<'de>>,
171 lifetime: _serde::__private::PhantomData<&'de ()>,
172 }
173 #[allow(clippy::match_single_binding)]
174 #[allow(clippy::reversed_empty_ranges)]
175 #[allow(clippy::single_match)]
176 impl<'de> _serde::de::Visitor<'de> for __hkbEventRaisedInfoVisitor<'de> {
177 type Value = hkbEventRaisedInfo<'de>;
178 fn expecting(
179 &self,
180 __formatter: &mut core::fmt::Formatter,
181 ) -> core::fmt::Result {
182 core::fmt::Formatter::write_str(
183 __formatter,
184 "struct hkbEventRaisedInfo",
185 )
186 }
187 fn visit_struct_for_bytes<__A>(
188 self,
189 mut __map: __A,
190 ) -> _serde::__private::Result<Self::Value, __A::Error>
191 where
192 __A: _serde::de::MapAccess<'de>,
193 {
194 let __ptr = __A::class_ptr(&mut __map);
195 let parent = __A::parent_value(&mut __map)?;
196 let mut m_characterId: _serde::__private::Option<u64> = _serde::__private::None;
197 let mut m_eventName: _serde::__private::Option<StringPtr<'de>> = _serde::__private::None;
198 let mut m_raisedBySdk: _serde::__private::Option<bool> = _serde::__private::None;
199 let mut m_senderId: _serde::__private::Option<i32> = _serde::__private::None;
200 let mut m_padding: _serde::__private::Option<i32> = _serde::__private::None;
201 for i in 0..5usize {
202 match i {
203 0usize => {
204 if _serde::__private::Option::is_some(&m_characterId) {
205 return _serde::__private::Err(
206 <__A::Error as _serde::de::Error>::duplicate_field(
207 "characterId",
208 ),
209 );
210 }
211 m_characterId = _serde::__private::Some(
212 match __A::next_value::<u64>(&mut __map) {
213 _serde::__private::Ok(__val) => __val,
214 _serde::__private::Err(__err) => {
215 return _serde::__private::Err(__err);
216 }
217 },
218 );
219 }
220 1usize => {
221 if _serde::__private::Option::is_some(&m_eventName) {
222 return _serde::__private::Err(
223 <__A::Error as _serde::de::Error>::duplicate_field(
224 "eventName",
225 ),
226 );
227 }
228 m_eventName = _serde::__private::Some(
229 match __A::next_value::<StringPtr<'de>>(&mut __map) {
230 _serde::__private::Ok(__val) => __val,
231 _serde::__private::Err(__err) => {
232 return _serde::__private::Err(__err);
233 }
234 },
235 );
236 }
237 2usize => {
238 if _serde::__private::Option::is_some(&m_raisedBySdk) {
239 return _serde::__private::Err(
240 <__A::Error as _serde::de::Error>::duplicate_field(
241 "raisedBySdk",
242 ),
243 );
244 }
245 m_raisedBySdk = _serde::__private::Some(
246 match __A::next_value::<bool>(&mut __map) {
247 _serde::__private::Ok(__val) => __val,
248 _serde::__private::Err(__err) => {
249 return _serde::__private::Err(__err);
250 }
251 },
252 );
253 }
254 3usize => {
255 if _serde::__private::Option::is_some(&m_senderId) {
256 return _serde::__private::Err(
257 <__A::Error as _serde::de::Error>::duplicate_field(
258 "senderId",
259 ),
260 );
261 }
262 __A::pad(&mut __map, 3usize, 3usize)?;
263 m_senderId = _serde::__private::Some(
264 match __A::next_value::<i32>(&mut __map) {
265 _serde::__private::Ok(__val) => __val,
266 _serde::__private::Err(__err) => {
267 return _serde::__private::Err(__err);
268 }
269 },
270 );
271 }
272 4usize => {
273 if _serde::__private::Option::is_some(&m_padding) {
274 return _serde::__private::Err(
275 <__A::Error as _serde::de::Error>::duplicate_field(
276 "padding",
277 ),
278 );
279 }
280 m_padding = _serde::__private::Some(
281 match __A::next_value::<i32>(&mut __map) {
282 _serde::__private::Ok(__val) => __val,
283 _serde::__private::Err(__err) => {
284 return _serde::__private::Err(__err);
285 }
286 },
287 );
288 }
289 _ => {}
290 }
291 }
292 __A::pad(&mut __map, 0usize, 4usize)?;
293 let m_characterId = match m_characterId {
294 _serde::__private::Some(__field) => __field,
295 _serde::__private::None => {
296 return _serde::__private::Err(
297 <__A::Error as _serde::de::Error>::missing_field(
298 "characterId",
299 ),
300 );
301 }
302 };
303 let m_eventName = match m_eventName {
304 _serde::__private::Some(__field) => __field,
305 _serde::__private::None => {
306 return _serde::__private::Err(
307 <__A::Error as _serde::de::Error>::missing_field(
308 "eventName",
309 ),
310 );
311 }
312 };
313 let m_raisedBySdk = match m_raisedBySdk {
314 _serde::__private::Some(__field) => __field,
315 _serde::__private::None => {
316 return _serde::__private::Err(
317 <__A::Error as _serde::de::Error>::missing_field(
318 "raisedBySdk",
319 ),
320 );
321 }
322 };
323 let m_senderId = match m_senderId {
324 _serde::__private::Some(__field) => __field,
325 _serde::__private::None => {
326 return _serde::__private::Err(
327 <__A::Error as _serde::de::Error>::missing_field("senderId"),
328 );
329 }
330 };
331 let m_padding = match m_padding {
332 _serde::__private::Some(__field) => __field,
333 _serde::__private::None => {
334 return _serde::__private::Err(
335 <__A::Error as _serde::de::Error>::missing_field("padding"),
336 );
337 }
338 };
339 _serde::__private::Ok(hkbEventRaisedInfo {
340 __ptr,
341 parent,
342 m_characterId,
343 m_eventName,
344 m_raisedBySdk,
345 m_senderId,
346 m_padding,
347 })
348 }
349 #[allow(clippy::manual_unwrap_or_default)]
350 fn visit_struct<__A>(
351 self,
352 mut __map: __A,
353 ) -> _serde::__private::Result<Self::Value, __A::Error>
354 where
355 __A: _serde::de::MapAccess<'de>,
356 {
357 let mut m_characterId: _serde::__private::Option<u64> = _serde::__private::None;
358 let mut m_eventName: _serde::__private::Option<StringPtr<'de>> = _serde::__private::None;
359 let mut m_raisedBySdk: _serde::__private::Option<bool> = _serde::__private::None;
360 let mut m_senderId: _serde::__private::Option<i32> = _serde::__private::None;
361 let mut m_padding: _serde::__private::Option<i32> = _serde::__private::None;
362 while let _serde::__private::Some(__key) = {
363 __A::next_key::<__Field>(&mut __map)?
364 } {
365 match __key {
366 __Field::m_characterId => {
367 #[cfg(
368 any(feature = "strict", feature = "ignore_duplicates")
369 )]
370 if _serde::__private::Option::is_some(&m_characterId) {
371 #[cfg(feature = "ignore_duplicates")]
372 {
373 __A::skip_value(&mut __map)?;
374 continue;
375 }
376 #[cfg(feature = "strict")]
377 return _serde::__private::Err(
378 <__A::Error as _serde::de::Error>::duplicate_field(
379 "characterId",
380 ),
381 );
382 }
383 m_characterId = _serde::__private::Some(
384 match __A::next_value::<u64>(&mut __map) {
385 _serde::__private::Ok(__val) => __val,
386 _serde::__private::Err(__err) => {
387 return _serde::__private::Err(__err);
388 }
389 },
390 );
391 }
392 __Field::m_eventName => {
393 #[cfg(
394 any(feature = "strict", feature = "ignore_duplicates")
395 )]
396 if _serde::__private::Option::is_some(&m_eventName) {
397 #[cfg(feature = "ignore_duplicates")]
398 {
399 __A::skip_value(&mut __map)?;
400 continue;
401 }
402 #[cfg(feature = "strict")]
403 return _serde::__private::Err(
404 <__A::Error as _serde::de::Error>::duplicate_field(
405 "eventName",
406 ),
407 );
408 }
409 m_eventName = _serde::__private::Some(
410 match __A::next_value::<StringPtr<'de>>(&mut __map) {
411 _serde::__private::Ok(__val) => __val,
412 _serde::__private::Err(__err) => {
413 return _serde::__private::Err(__err);
414 }
415 },
416 );
417 }
418 __Field::m_raisedBySdk => {
419 #[cfg(
420 any(feature = "strict", feature = "ignore_duplicates")
421 )]
422 if _serde::__private::Option::is_some(&m_raisedBySdk) {
423 #[cfg(feature = "ignore_duplicates")]
424 {
425 __A::skip_value(&mut __map)?;
426 continue;
427 }
428 #[cfg(feature = "strict")]
429 return _serde::__private::Err(
430 <__A::Error as _serde::de::Error>::duplicate_field(
431 "raisedBySdk",
432 ),
433 );
434 }
435 m_raisedBySdk = _serde::__private::Some(
436 match __A::next_value::<bool>(&mut __map) {
437 _serde::__private::Ok(__val) => __val,
438 _serde::__private::Err(__err) => {
439 return _serde::__private::Err(__err);
440 }
441 },
442 );
443 }
444 __Field::m_senderId => {
445 #[cfg(
446 any(feature = "strict", feature = "ignore_duplicates")
447 )]
448 if _serde::__private::Option::is_some(&m_senderId) {
449 #[cfg(feature = "ignore_duplicates")]
450 {
451 __A::skip_value(&mut __map)?;
452 continue;
453 }
454 #[cfg(feature = "strict")]
455 return _serde::__private::Err(
456 <__A::Error as _serde::de::Error>::duplicate_field(
457 "senderId",
458 ),
459 );
460 }
461 m_senderId = _serde::__private::Some(
462 match __A::next_value::<i32>(&mut __map) {
463 _serde::__private::Ok(__val) => __val,
464 _serde::__private::Err(__err) => {
465 return _serde::__private::Err(__err);
466 }
467 },
468 );
469 }
470 __Field::m_padding => {
471 #[cfg(
472 any(feature = "strict", feature = "ignore_duplicates")
473 )]
474 if _serde::__private::Option::is_some(&m_padding) {
475 #[cfg(feature = "ignore_duplicates")]
476 {
477 __A::skip_value(&mut __map)?;
478 continue;
479 }
480 #[cfg(feature = "strict")]
481 return _serde::__private::Err(
482 <__A::Error as _serde::de::Error>::duplicate_field(
483 "padding",
484 ),
485 );
486 }
487 m_padding = _serde::__private::Some(
488 match __A::next_value::<i32>(&mut __map) {
489 _serde::__private::Ok(__val) => __val,
490 _serde::__private::Err(__err) => {
491 return _serde::__private::Err(__err);
492 }
493 },
494 );
495 }
496 _ => __A::skip_value(&mut __map)?,
497 }
498 }
499 let m_characterId = match m_characterId {
500 _serde::__private::Some(__field) => __field,
501 _serde::__private::None => {
502 #[cfg(feature = "strict")]
503 return _serde::__private::Err(
504 <__A::Error as _serde::de::Error>::missing_field(
505 "characterId",
506 ),
507 );
508 #[cfg(not(feature = "strict"))] Default::default()
509 }
510 };
511 let m_eventName = match m_eventName {
512 _serde::__private::Some(__field) => __field,
513 _serde::__private::None => {
514 #[cfg(feature = "strict")]
515 return _serde::__private::Err(
516 <__A::Error as _serde::de::Error>::missing_field(
517 "eventName",
518 ),
519 );
520 #[cfg(not(feature = "strict"))] Default::default()
521 }
522 };
523 let m_raisedBySdk = match m_raisedBySdk {
524 _serde::__private::Some(__field) => __field,
525 _serde::__private::None => {
526 #[cfg(feature = "strict")]
527 return _serde::__private::Err(
528 <__A::Error as _serde::de::Error>::missing_field(
529 "raisedBySdk",
530 ),
531 );
532 #[cfg(not(feature = "strict"))] Default::default()
533 }
534 };
535 let m_senderId = match m_senderId {
536 _serde::__private::Some(__field) => __field,
537 _serde::__private::None => {
538 #[cfg(feature = "strict")]
539 return _serde::__private::Err(
540 <__A::Error as _serde::de::Error>::missing_field("senderId"),
541 );
542 #[cfg(not(feature = "strict"))] Default::default()
543 }
544 };
545 let m_padding = match m_padding {
546 _serde::__private::Some(__field) => __field,
547 _serde::__private::None => {
548 #[cfg(feature = "strict")]
549 return _serde::__private::Err(
550 <__A::Error as _serde::de::Error>::missing_field("padding"),
551 );
552 #[cfg(not(feature = "strict"))] Default::default()
553 }
554 };
555 let __ptr = None;
556 let parent = hkBaseObject { __ptr };
557 let parent = hkReferencedObject {
558 __ptr,
559 parent,
560 ..Default::default()
561 };
562 let __ptr = __A::class_ptr(&mut __map);
563 _serde::__private::Ok(hkbEventRaisedInfo {
564 __ptr,
565 parent,
566 m_characterId,
567 m_eventName,
568 m_raisedBySdk,
569 m_senderId,
570 m_padding,
571 })
572 }
573 }
574 const FIELDS: &[&str] = &[
575 "characterId",
576 "eventName",
577 "raisedBySdk",
578 "senderId",
579 "padding",
580 ];
581 _serde::Deserializer::deserialize_struct(
582 deserializer,
583 "hkbEventRaisedInfo",
584 FIELDS,
585 __hkbEventRaisedInfoVisitor {
586 marker: _serde::__private::PhantomData::<hkbEventRaisedInfo>,
587 lifetime: _serde::__private::PhantomData,
588 },
589 )
590 }
591 }
592};