CommonLibSSE NG
hkpConstraintMotor.h
Go to the documentation of this file.
1 #pragma once
2 
4 
5 namespace RE
6 {
8  {
9  public:
10  enum class MotorType
11  {
12  kInvalid = 0,
13 
14  kPosition,
15  kVelocity,
16  kSpring,
17  kCallback,
18 
19  kNUM
20  };
21 
22  inline static constexpr auto RTTI = RTTI_hkpConstraintMotor;
23  inline static constexpr auto VTABLE = VTABLE_hkpConstraintMotor;
24 
25  // members
27  };
28  static_assert(sizeof(hkpConstraintMotor) == 0x18);
29 
31  {
32  public:
33  inline static constexpr auto RTTI = RTTI_hkpLimitedForceConstraintMotor;
34  inline static constexpr auto VTABLE = VTABLE_hkpLimitedForceConstraintMotor;
35 
36  // members
37  float minForce; // 18
38  float maxForce; // 1C
39  };
40  static_assert(sizeof(hkpLimitedForceConstraintMotor) == 0x20);
41 
43  {
44  public:
45  inline static constexpr auto RTTI = RTTI_hkpPositionConstraintMotor;
46  inline static constexpr auto VTABLE = VTABLE_hkpPositionConstraintMotor;
47 
48  // members
49  float tau; // 20
50  float damping; // 24
53  };
54  static_assert(sizeof(hkpPositionConstraintMotor) == 0x30);
55 
57  {
58  public:
59  inline static constexpr auto RTTI = RTTI_hkpVelocityConstraintMotor;
60  inline static constexpr auto VTABLE = VTABLE_hkpVelocityConstraintMotor;
61 
62  // members
63  float tau; // 20
64  float targetVelocity; // 24
65  bool useConstraintTarget; // 28
66  };
67  static_assert(sizeof(hkpVelocityConstraintMotor) == 0x30);
68 
70  {
71  public:
72  inline static constexpr auto RTTI = RTTI_hkpSpringDamperConstraintMotor;
73  inline static constexpr auto VTABLE = VTABLE_hkpSpringDamperConstraintMotor;
74 
75  // members
76  float springConstant; // 20
77  float springDamping; // 24
78  };
79  static_assert(sizeof(hkpSpringDamperConstraintMotor) == 0x28);
80 
82  {
83  public:
84  enum class CallbackType
85  {
86  kUnk = 0,
87 
88  kUser0,
89  kUser1,
90  kUser2,
91 
92  kNUM
93  };
94 
95  inline static constexpr auto RTTI = RTTI_hkpCallbackConstraintMotor;
96  inline static constexpr auto VTABLE = VTABLE_hkpCallbackConstraintMotor;
97 
98  using CallbackFunction = void(const hkpCallbackConstraintMotor& motor, const void* unk0, void* unk1);
99 
100  // members
103  std::uint64_t userData0; // 30
104  std::uint64_t userData1; // 38
105  std::uint64_t userData2; // 40
106  };
107  static_assert(sizeof(hkpCallbackConstraintMotor) == 0x48);
108 }
Definition: hkReferencedObject.h:11
Definition: hkpConstraintMotor.h:82
static constexpr auto RTTI
Definition: hkpConstraintMotor.h:95
stl::enumeration< CallbackType, std::uint32_t > callbackType
Definition: hkpConstraintMotor.h:102
CallbackFunction * func
Definition: hkpConstraintMotor.h:101
std::uint64_t userData1
Definition: hkpConstraintMotor.h:104
void(const hkpCallbackConstraintMotor &motor, const void *unk0, void *unk1) CallbackFunction
Definition: hkpConstraintMotor.h:98
static constexpr auto VTABLE
Definition: hkpConstraintMotor.h:96
CallbackType
Definition: hkpConstraintMotor.h:85
std::uint64_t userData0
Definition: hkpConstraintMotor.h:103
std::uint64_t userData2
Definition: hkpConstraintMotor.h:105
Definition: hkpConstraintMotor.h:8
static constexpr auto RTTI
Definition: hkpConstraintMotor.h:22
stl::enumeration< MotorType, uint8_t > type
Definition: hkpConstraintMotor.h:26
MotorType
Definition: hkpConstraintMotor.h:11
static constexpr auto VTABLE
Definition: hkpConstraintMotor.h:23
Definition: hkpConstraintMotor.h:31
float minForce
Definition: hkpConstraintMotor.h:37
static constexpr auto RTTI
Definition: hkpConstraintMotor.h:33
static constexpr auto VTABLE
Definition: hkpConstraintMotor.h:34
float maxForce
Definition: hkpConstraintMotor.h:38
Definition: hkpConstraintMotor.h:43
float tau
Definition: hkpConstraintMotor.h:49
float damping
Definition: hkpConstraintMotor.h:50
float proportionalRecoveryVelocity
Definition: hkpConstraintMotor.h:51
static constexpr auto RTTI
Definition: hkpConstraintMotor.h:45
float constantRecoveryVelocity
Definition: hkpConstraintMotor.h:52
static constexpr auto VTABLE
Definition: hkpConstraintMotor.h:46
Definition: hkpConstraintMotor.h:70
float springConstant
Definition: hkpConstraintMotor.h:76
static constexpr auto RTTI
Definition: hkpConstraintMotor.h:72
static constexpr auto VTABLE
Definition: hkpConstraintMotor.h:73
float springDamping
Definition: hkpConstraintMotor.h:77
Definition: hkpConstraintMotor.h:57
static constexpr auto VTABLE
Definition: hkpConstraintMotor.h:60
float tau
Definition: hkpConstraintMotor.h:63
static constexpr auto RTTI
Definition: hkpConstraintMotor.h:59
float targetVelocity
Definition: hkpConstraintMotor.h:64
bool useConstraintTarget
Definition: hkpConstraintMotor.h:65
Definition: AbsorbEffect.h:6
constexpr std::array< REL::VariantID, 1 > VTABLE_hkpVelocityConstraintMotor
Definition: Offsets_VTABLE.h:5040
constexpr REL::VariantID RTTI_hkpConstraintMotor(689861, 397716, 0x1f595c0)
constexpr REL::VariantID RTTI_hkpLimitedForceConstraintMotor(689885, 397740, 0x1f59a88)
constexpr std::array< REL::VariantID, 1 > VTABLE_hkpPositionConstraintMotor
Definition: Offsets_VTABLE.h:5038
constexpr std::array< REL::VariantID, 1 > VTABLE_hkpCallbackConstraintMotor
Definition: Offsets_VTABLE.h:5037
constexpr REL::VariantID RTTI_hkpPositionConstraintMotor(689887, 397742, 0x1f59af8)
constexpr std::array< REL::VariantID, 1 > VTABLE_hkpLimitedForceConstraintMotor
Definition: Offsets_VTABLE.h:5036
constexpr std::array< REL::VariantID, 1 > VTABLE_hkpConstraintMotor
Definition: Offsets_VTABLE.h:5035
constexpr REL::VariantID RTTI_hkpCallbackConstraintMotor(689886, 397741, 0x1f59ac0)
constexpr REL::VariantID RTTI_hkpVelocityConstraintMotor(689889, 397744, 0x1f59b68)
constexpr REL::VariantID RTTI_hkpSpringDamperConstraintMotor(689888, 397743, 0x1f59b30)
constexpr std::array< REL::VariantID, 1 > VTABLE_hkpSpringDamperConstraintMotor
Definition: Offsets_VTABLE.h:5039