CommonLibVR
bhkCollisionObject.h
Go to the documentation of this file.
1 #pragma once
2 
4 
5 namespace RE
6 {
8  {
9  public:
10  inline static constexpr auto RTTI = RTTI_bhkCollisionObject;
11  inline static constexpr auto Ni_RTTI = NiRTTI_bhkCollisionObject;
12  inline static constexpr auto VTABLE = VTABLE_bhkCollisionObject;
13 
14  ~bhkCollisionObject() override; // 00
15 
16  // override (bhkNiCollisionObject)
17  const NiRTTI* GetRTTI() const override; // 02
18  NiObject* CreateClone(NiCloningProcess& a_cloning) override; // 17
19  void LoadBinary(NiStream& a_stream) override; // 18 - { bhkNiCollisionObject::LoadBinary(a_stream); }
20  void LinkObject(NiStream& a_stream) override; // 19 - { bhkNiCollisionObject::LinkObject(a_stream); }
21  bool RegisterStreamables(NiStream& a_stream) override; // 1A - { return bhkNiCollisionObject::RegisterStreamables(a_stream); }
22  void SaveBinary(NiStream& a_stream) override; // 1B - { bhkNiCollisionObject::SaveBinary(a_stream); }
23  void Unk_26(void) override; // 26
24  void Unk_2A(void) override; // 2A
25  void Unk_2B(void) override; // 2B
26  void Unk_2C(void) override; // 2C
27  void Unk_2D(void) override; // 2D
28  void Unk_2E(void) override; // 2E
29  void Unk_2F(void) override; // 2F
30 
31  [[nodiscard]] bhkRigidBody* GetRigidBody() const
32  {
33  using func_t = decltype(&bhkCollisionObject::GetRigidBody);
34  static REL::Relocation<func_t> func{ RELOCATION_ID(12784, 20014) };
35  return func(this);
36  }
37 
38  private:
39  KEEP_FOR_RE()
40  };
41  static_assert(sizeof(bhkCollisionObject) == 0x28);
42 }
#define KEEP_FOR_RE()
Definition: PCH.h:713
#define RELOCATION_ID(SE, AE)
Definition: PCH.h:702
Definition: Relocation.h:210
Definition: NiCloningProcess.h:10
Definition: NiObject.h:37
Definition: NiRTTI.h:6
Definition: NiStream.h:29
Definition: bhkCollisionObject.h:8
void Unk_2D(void) override
void LoadBinary(NiStream &a_stream) override
static constexpr auto VTABLE
Definition: bhkCollisionObject.h:12
~bhkCollisionObject() override
static constexpr auto Ni_RTTI
Definition: bhkCollisionObject.h:11
bhkRigidBody * GetRigidBody() const
Definition: bhkCollisionObject.h:31
void LinkObject(NiStream &a_stream) override
void Unk_2A(void) override
void SaveBinary(NiStream &a_stream) override
static constexpr auto RTTI
Definition: bhkCollisionObject.h:10
void Unk_2F(void) override
void Unk_2B(void) override
NiObject * CreateClone(NiCloningProcess &a_cloning) override
void Unk_2E(void) override
const NiRTTI * GetRTTI() const override
bool RegisterStreamables(NiStream &a_stream) override
void Unk_2C(void) override
void Unk_26(void) override
Definition: bhkNiCollisionObject.h:11
Definition: bhkRigidBody.h:15
Definition: AbsorbEffect.h:6
constexpr REL::ID NiRTTI_bhkCollisionObject(static_cast< std::uint64_t >(525071))
constexpr std::array< REL::ID, 1 > VTABLE_bhkCollisionObject
Definition: Offsets_VTABLE.h:13299
constexpr REL::ID RTTI_bhkCollisionObject(static_cast< std::uint64_t >(685178))