commonlibsse_ng\re\i/
INIPrefSettingCollection.rs

1use crate::re::INISettingCollection::{INISettingCollection, INISettingCollectionVtbl};
2use crate::re::offsets_rtti::RTTI_INIPrefSettingCollection;
3use crate::re::offsets_vtable::VTABLE_INIPrefSettingCollection;
4use crate::rel::id::VariantID;
5
6#[derive(Debug)]
7#[repr(C)]
8pub struct INIPrefSettingCollection {
9    pub __base: INISettingCollection, // 0x000
10}
11const _: () = {
12    assert!(core::mem::offset_of!(INIPrefSettingCollection, __base) == 0x00);
13    assert!(core::mem::size_of::<INIPrefSettingCollection>() == 0x128);
14};
15
16impl INIPrefSettingCollection {
17    /// Address & Offset of the runtime type information (RTTI) identifier.
18    pub const RTTI: VariantID = RTTI_INIPrefSettingCollection;
19
20    /// Address & Offset of the virtual function table.
21    pub const VTABLE: [VariantID; 1] = VTABLE_INIPrefSettingCollection;
22
23    /// Gets the singleton instance of `INIPrefSettingCollection`.
24    #[commonlibsse_ng_derive_internal::relocate(
25        cast_as = "*mut *mut INIPrefSettingCollection",
26        default = "None",
27        deref_once,
28        id(se = 524557, ae = 411155)
29    )]
30    pub fn get_singleton() -> Option<&'static INIPrefSettingCollection> {
31        |deref_type: DerefType| unsafe { deref_type.as_ref() }
32    }
33}
34
35/// The virtual function table for `INIPrefSettingCollection`.
36///
37/// This struct defines function pointers to simulate the C++ virtual functions.
38#[repr(C)]
39pub struct INIPrefSettingCollectionVtbl {
40    pub __base: INISettingCollectionVtbl,
41}