Struct TESFormVtbl

Source
#[repr(C)]
pub struct TESFormVtbl {
Show 59 fields pub CxxDrop: fn(this: &mut TESForm), pub InitializeDataComponent: fn(this: &mut TESForm), pub ClearDataComponent: fn(this: &mut TESForm), pub CopyComponent: fn(this: &mut TESForm, rhs: *const TESForm), pub InitializeData: fn(this: &mut TESForm), pub ClearData: fn(this: &mut TESForm), pub Load: fn(this: &mut TESForm, mod_file: *mut TESFile) -> bool, pub LoadPartial: fn(this: &mut TESForm, mod_file: *mut TESFile) -> bool, pub LoadEdit: fn(this: &mut TESForm, mod_file: *mut TESFile) -> bool, pub CreateDuplicateForm: fn(this: &mut TESForm, create_editor_id: bool, arg2: *mut ()) -> *mut TESForm, pub AddChange: fn(this: &mut TESForm, change_flags: u32) -> bool, pub RemoveChange: fn(this: &mut TESForm, change_flags: u32), pub FindInFileFast: fn(this: &mut TESForm, mod_file: *mut TESFile) -> bool, pub CheckSaveGame: fn(this: &mut TESForm, buf: *mut BGSSaveFormBuffer) -> bool, pub SaveGame: fn(this: &TESForm, buf: *mut BGSSaveFormBuffer), pub LoadGame: fn(this: &mut TESForm, buf: *mut BGSLoadFormBuffer), pub InitLoadGame: fn(this: &mut TESForm, buf: *mut BGSLoadFormBuffer), pub FinishLoadGame: fn(this: &mut TESForm, buf: *mut BGSLoadFormBuffer), pub Revert: fn(this: &mut TESForm, buf: *mut BGSLoadFormBuffer), pub InitItemImpl: fn(this: &mut TESForm), pub GetDescriptionOwnerFile: fn(this: &TESForm) -> *mut TESFile, pub GetSavedFormType: fn(this: &TESForm) -> FormType, pub GetFormDetailedString: fn(this: &TESForm, buf: *mut c_char, buf_len: u32), pub GetKnown: fn(this: &TESForm) -> bool, pub GetRandomAnim: fn(this: &TESForm) -> bool, pub GetPlayable: fn(this: &TESForm) -> bool, pub IsHeadingMarker: fn(this: &TESForm) -> bool, pub GetDangerous: fn(this: &TESForm) -> bool, pub QHasCurrents: fn(this: &TESForm) -> bool, pub GetObstacle: fn(this: &TESForm) -> bool, pub QIsLODLandObject: fn(this: &TESForm) -> bool, pub GetOnLocalMap: fn(this: &TESForm) -> bool, pub GetMustUpdate: fn(this: &TESForm) -> bool, pub SetOnLocalMap: fn(this: &mut TESForm, set: bool), pub GetIgnoredBySandbox: fn(this: &TESForm) -> bool, pub SetDelete: fn(this: &mut TESForm, set: bool), pub SetAltered: fn(this: &mut TESForm, set: bool), pub SaveObjectBound: fn(this: &mut TESForm), pub LoadObjectBound: fn(this: &mut TESForm, mod_: *mut TESFile), pub IsBoundObject: fn(this: &TESForm) -> bool, pub IsObject: fn(this: &TESForm) -> bool, pub IsMagicItem: fn(this: &TESForm) -> bool, pub IsWater: fn(this: &TESForm) -> bool, pub AsReference1: fn(this: &mut TESForm) -> *mut TESObjectREFR, pub AsReference2: fn(this: &TESForm) -> *const TESObjectREFR, pub GetRefCount: fn(this: &TESForm) -> u32, pub GetTextForParsedSubTag: fn(this: &TESForm, tag: &BSFixedString) -> *const c_char, pub Copy: fn(this: &mut TESForm, src_form: *const TESForm), pub BelongsInGroup: fn(this: &TESForm, form: *const FORM, allow_parent_groups: bool, current_only: bool) -> bool, pub CreateGroupData: fn(this: &TESForm, form: *const FORM, group: *mut FORM_GROUP), pub GetFormEditorID: fn(this: &TESForm) -> *const c_char, pub SetFormEditorID: fn(this: &mut TESForm, str: *const c_char) -> bool, pub IsParentForm: fn(this: &TESForm) -> bool, pub IsParentFormTree: fn(this: &TESForm) -> bool, pub IsFormTypeChild: fn(this: &TESForm, type_: FormType) -> bool, pub Activate: fn(this: &mut TESForm, target_ref: *mut TESObjectREFR, activator_ref: *mut TESObjectREFR, arg3: u8, object: *mut TESBoundObject, target_count: i32) -> bool, pub SetFormID: fn(this: &mut TESForm, id: FormID, update_file: bool), pub GetObjectTypeName: fn(this: &TESForm) -> *const c_char, pub QAvailableInGame: fn(this: &TESForm) -> bool,
}
Expand description

Virtual function table for TESForm

Fields§

§CxxDrop: fn(this: &mut TESForm)

§C++

  • method nth: 0x00
  • Destructor ~TESForm
§InitializeDataComponent: fn(this: &mut TESForm)

§C++

  • method nth: 0x01
  • { return; }
§ClearDataComponent: fn(this: &mut TESForm)

§C++

  • method nth: 0x02
  • { SetEditorID(“”); }
§CopyComponent: fn(this: &mut TESForm, rhs: *const TESForm)

§C++

  • method nth: 0x03
§InitializeData: fn(this: &mut TESForm)

§C++

  • method nth: 0x04
  • { return; }
§ClearData: fn(this: &mut TESForm)

§C++

  • method nth: 0x05
  • { return; }
§Load: fn(this: &mut TESForm, mod_file: *mut TESFile) -> bool

§C++

  • method nth: 0x06
  • { return true; }
§LoadPartial: fn(this: &mut TESForm, mod_file: *mut TESFile) -> bool

§C++

  • method nth: 0x07
  • { return true; }
§LoadEdit: fn(this: &mut TESForm, mod_file: *mut TESFile) -> bool

§C++

  • method nth: 0x08
  • { return Load(mod); }
§CreateDuplicateForm: fn(this: &mut TESForm, create_editor_id: bool, arg2: *mut ()) -> *mut TESForm

§C++

  • method nth: 0x09
§AddChange: fn(this: &mut TESForm, change_flags: u32) -> bool

§C++

  • method nth: 0x0A
§RemoveChange: fn(this: &mut TESForm, change_flags: u32)

§C++

  • method nth: 0x0B
§FindInFileFast: fn(this: &mut TESForm, mod_file: *mut TESFile) -> bool

§C++

  • method nth: 0x0C
  • { return false; }
§CheckSaveGame: fn(this: &mut TESForm, buf: *mut BGSSaveFormBuffer) -> bool

§C++

  • method nth: 0x0D
  • { return true; }
§SaveGame: fn(this: &TESForm, buf: *mut BGSSaveFormBuffer)

§C++

  • method nth: 0x0E
§LoadGame: fn(this: &mut TESForm, buf: *mut BGSLoadFormBuffer)

§C++

  • method nth: 0x0F
§InitLoadGame: fn(this: &mut TESForm, buf: *mut BGSLoadFormBuffer)

§C++

  • method nth: 0x10
  • { return; }
§FinishLoadGame: fn(this: &mut TESForm, buf: *mut BGSLoadFormBuffer)

§C++

  • method nth: 0x11
  • { return; }
§Revert: fn(this: &mut TESForm, buf: *mut BGSLoadFormBuffer)

§C++

  • method nth: 0x12
  • { return; }
§InitItemImpl: fn(this: &mut TESForm)

§C++

  • method nth: 0x13
  • { return; }
§GetDescriptionOwnerFile: fn(this: &TESForm) -> *mut TESFile

§C++

  • method nth: 0x14
§GetSavedFormType: fn(this: &TESForm) -> FormType

§C++

  • method nth: 0x15
  • { return formType; }
§GetFormDetailedString: fn(this: &TESForm, buf: *mut c_char, buf_len: u32)

§C++

  • method nth: 0x16
§GetKnown: fn(this: &TESForm) -> bool

§C++

  • method nth: 0x17
  • { return (flags >> 6) & 1; }
§GetRandomAnim: fn(this: &TESForm) -> bool

§C++

  • method nth: 0x18
  • { return (flags >> 16) & 1; }
§GetPlayable: fn(this: &TESForm) -> bool

§C++

  • method nth: 0x19
  • { return (flags >> 2) & 1; }
§IsHeadingMarker: fn(this: &TESForm) -> bool

§C++

  • method nth: 0x1A
  • { return false; }
§GetDangerous: fn(this: &TESForm) -> bool

§C++

  • method nth: 0x1B
  • { return (flags >> 17) & 1; }
§QHasCurrents: fn(this: &TESForm) -> bool

§C++

  • method nth: 0x1C
  • { return (flags >> 19) & 1; }
§GetObstacle: fn(this: &TESForm) -> bool

§C++

  • method nth: 0x1D
  • { return (flags >> 25) & 1; }
§QIsLODLandObject: fn(this: &TESForm) -> bool

§C++

  • method nth: 0x1E
  • { return false; }
§GetOnLocalMap: fn(this: &TESForm) -> bool

§C++

  • method nth: 0x1F
  • { return (flags >> 9) & 1; }
§GetMustUpdate: fn(this: &TESForm) -> bool

§C++

  • method nth: 0x20
  • { return (flags >> 8) & 1; }
§SetOnLocalMap: fn(this: &mut TESForm, set: bool)

§C++

  • method nth: 0x21
  • { if (set) flags &= 0xFFFFFDFF; else flags |= 0x200; }
§GetIgnoredBySandbox: fn(this: &TESForm) -> bool

§C++

  • method nth: 0x22
  • { return false; }
§SetDelete: fn(this: &mut TESForm, set: bool)

§C++

  • method nth: 0x23
  • { bool result = (flags >> 5) & 1; if (result != set) { if (set) flags |= 0x20; else flags &= 0xFFFFFFDF; AddChange(1); return result; }
§SetAltered: fn(this: &mut TESForm, set: bool)

§C++

  • method nth: 0x24
§SaveObjectBound: fn(this: &mut TESForm)

§C++

  • method nth: 0x25
  • { return; }
§LoadObjectBound: fn(this: &mut TESForm, mod_: *mut TESFile)

§C++

  • method nth: 0x26
  • { return; }
§IsBoundObject: fn(this: &TESForm) -> bool

§C++

  • method nth: 0x27
  • { return false; }
§IsObject: fn(this: &TESForm) -> bool

§C++

  • method nth: 0x28
  • { return false; }
§IsMagicItem: fn(this: &TESForm) -> bool

§C++

  • method nth: 0x29
  • { return false; }
§IsWater: fn(this: &TESForm) -> bool

§C++

  • method nth: 0x2A
  • { return false; }
§AsReference1: fn(this: &mut TESForm) -> *mut TESObjectREFR

§C++

  • method nth: 0x2B
  • { return 0; }
§AsReference2: fn(this: &TESForm) -> *const TESObjectREFR

§C++

  • method nth: 0x2C
  • { return 0; }
§GetRefCount: fn(this: &TESForm) -> u32

§C++

  • method nth: 0x2D
  • { return 0; }
§GetTextForParsedSubTag: fn(this: &TESForm, tag: &BSFixedString) -> *const c_char

§C++

  • method nth: 0x2E
§Copy: fn(this: &mut TESForm, src_form: *const TESForm)

§C++

  • method nth: 0x2F
  • { return; }
§BelongsInGroup: fn(this: &TESForm, form: *const FORM, allow_parent_groups: bool, current_only: bool) -> bool

§C++

  • method nth: 0x30
§CreateGroupData: fn(this: &TESForm, form: *const FORM, group: *mut FORM_GROUP)

§C++

  • method nth: 0x31
§GetFormEditorID: fn(this: &TESForm) -> *const c_char

§C++

  • method nth: 0x32
  • { return “”; }
§SetFormEditorID: fn(this: &mut TESForm, str: *const c_char) -> bool

§C++

  • method nth: 0x33
  • { return true; }
§IsParentForm: fn(this: &TESForm) -> bool

§C++

  • method nth: 0x34
  • { return false; }
§IsParentFormTree: fn(this: &TESForm) -> bool

§C++

  • method nth: 0x35
  • { return false; }
§IsFormTypeChild: fn(this: &TESForm, type_: FormType) -> bool

§C++

  • method nth: 0x36
  • { return false; }
§Activate: fn(this: &mut TESForm, target_ref: *mut TESObjectREFR, activator_ref: *mut TESObjectREFR, arg3: u8, object: *mut TESBoundObject, target_count: i32) -> bool

§C++

  • method nth: 0x37
  • { return false; }
§SetFormID: fn(this: &mut TESForm, id: FormID, update_file: bool)

§C++

  • method nth: 0x38
§GetObjectTypeName: fn(this: &TESForm) -> *const c_char

§C++

  • method nth: 0x39
  • { return “”; }
§QAvailableInGame: fn(this: &TESForm) -> bool

§C++

  • method nth: 0x3A
  • { return true; }

Trait Implementations§

Source§

impl Debug for TESFormVtbl

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more