CommonLibVR
Loading...
Searching...
No Matches
NiSwitchNode.h
Go to the documentation of this file.
1#pragma once
2
3#include "RE/N/NiNode.h"
4
5namespace RE
6{
7 class NiSwitchNode : public NiNode
8 {
9 public:
10 inline static constexpr auto RTTI = RTTI_NiSwitchNode;
11 inline static constexpr auto Ni_RTTI = NiRTTI_NiSwitchNode;
12 inline static constexpr auto VTABLE = VTABLE_NiSwitchNode;
13
14 ~NiSwitchNode() override; // 00
15
16 // override (NiNode)
17 const NiRTTI* GetRTTI() const override; // 02
18 NiSwitchNode* AsSwitchNode() override; // 04
19 NiObject* CreateClone(NiCloningProcess& a_cloning) override; // 17
20 void LoadBinary(NiStream& a_stream) override; // 18
21 void LinkObject(NiStream& a_stream) override; // 19
22 bool RegisterStreamables(NiStream& a_stream) override; // 1A
23 void SaveBinary(NiStream& a_stream) override; // 1B
24 bool IsEqual(NiObject* a_object) override; // 1C
25 void UpdateControllers(NiUpdateData& a_data) override; // 25
26 void UpdateDownwardPass(NiUpdateData& a_data, std::uint32_t a_arg2) override; // 2C
27 void UpdateSelectedDownwardPass(NiUpdateData& a_data, std::uint32_t a_arg2) override; // 2D
28 void UpdateRigidDownwardPass(NiUpdateData& a_data, std::uint32_t a_arg2) override; // 2E
29 void UpdateWorldBound() override; // 2F
30 void OnVisible(NiCullingProcess& a_process) override; // 34
31 void AttachChild(NiAVObject* a_child, bool a_firstAvail) override; // 35
32 void DetachChild1(NiAVObject* a_child, NiPointer<NiAVObject>& a_childOut) override; // 37
33 void DetachChild2(NiAVObject* a_child) override; // 38
34 void DetachChildAt1(std::uint32_t a_idx, NiPointer<NiAVObject>& a_childOut) override; // 39
35 void DetachChildAt2(std::uint32_t a_idx) override; // 3A
36 void SetAt1(std::uint32_t a_idx, NiAVObject* a_child, NiPointer<NiAVObject>& a_childOut) override; // 3B
37 void SetAt2(std::uint32_t a_idx, NiAVObject* a_child) override; // 3C
38
39 // members
40 std::uint16_t flags; // 128
41 std::int32_t index; // 12C
42 float savedTime; // 130
43 std::uint32_t revID; // 134
45 private:
47 };
48#ifndef SKYRIMVR
49 static_assert(sizeof(NiSwitchNode) == 0x150);
50#else
51 static_assert(sizeof(NiSwitchNode) == 0x178);
52#endif
53}
#define KEEP_FOR_RE()
Definition PCH.h:518
Definition NiAVObject.h:57
Definition NiCloningProcess.h:10
Definition NiCullingProcess.h:34
Definition NiNode.h:12
Definition NiObject.h:37
Definition NiSmartPointer.h:9
Definition NiRTTI.h:6
Definition NiStream.h:29
Definition NiSwitchNode.h:8
void OnVisible(NiCullingProcess &a_process) override
static constexpr auto VTABLE
Definition NiSwitchNode.h:12
std::uint16_t flags
Definition NiSwitchNode.h:40
float savedTime
Definition NiSwitchNode.h:42
static constexpr auto Ni_RTTI
Definition NiSwitchNode.h:11
void SetAt1(std::uint32_t a_idx, NiAVObject *a_child, NiPointer< NiAVObject > &a_childOut) override
bool IsEqual(NiObject *a_object) override
const NiRTTI * GetRTTI() const override
NiObject * CreateClone(NiCloningProcess &a_cloning) override
void UpdateSelectedDownwardPass(NiUpdateData &a_data, std::uint32_t a_arg2) override
static constexpr auto RTTI
Definition NiSwitchNode.h:10
void UpdateRigidDownwardPass(NiUpdateData &a_data, std::uint32_t a_arg2) override
NiSwitchNode * AsSwitchNode() override
void DetachChildAt2(std::uint32_t a_idx) override
void LoadBinary(NiStream &a_stream) override
void DetachChild1(NiAVObject *a_child, NiPointer< NiAVObject > &a_childOut) override
bool RegisterStreamables(NiStream &a_stream) override
void UpdateDownwardPass(NiUpdateData &a_data, std::uint32_t a_arg2) override
void SaveBinary(NiStream &a_stream) override
void DetachChildAt1(std::uint32_t a_idx, NiPointer< NiAVObject > &a_childOut) override
void UpdateWorldBound() override
void LinkObject(NiStream &a_stream) override
~NiSwitchNode() override
void DetachChild2(NiAVObject *a_child) override
std::int32_t index
Definition NiSwitchNode.h:41
void UpdateControllers(NiUpdateData &a_data) override
NiTPrimitiveArray< std::uint32_t > childRevID
Definition NiSwitchNode.h:44
void AttachChild(NiAVObject *a_child, bool a_firstAvail) override
std::uint32_t revID
Definition NiSwitchNode.h:43
void SetAt2(std::uint32_t a_idx, NiAVObject *a_child) override
Definition NiTArray.h:136
Definition NiAVObject.h:28
Definition AbsorbEffect.h:6
constexpr REL::ID NiRTTI_NiSwitchNode(static_cast< std::uint64_t >(523924))
constexpr std::array< REL::ID, 1 > VTABLE_NiSwitchNode
Definition Offsets_VTABLE.h:12332
constexpr REL::ID RTTI_NiSwitchNode(static_cast< std::uint64_t >(690420))