CommonLibVR
hkpBvTreeShape.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "RE/H/hkArray.h"
4 #include "RE/H/hkpShape.h"
5 
6 namespace RE
7 {
8  class hkAabb;
9  class hkpShapeContainer;
10 
11  class hkpBvTreeShape : public hkpShape
12  {
13  public:
14  inline static constexpr auto RTTI = RTTI_hkpBvTreeShape;
15  inline static constexpr auto VTABLE = VTABLE_hkpBvTreeShape;
16 
17  enum class BvTreeType
18  {
19  kMOPP,
21  kUser
22  };
23 
24  ~hkpBvTreeShape() override; // 00
25 
26  // override (hkpShape)
27  const hkpShapeContainer* GetContainer() const override = 0; // 04
28 
29  // add
30  virtual void QueryAabb(const hkAabb& a_aabb, hkArray<hkpShapeKey>& a_hits) const = 0; // 0B
31  virtual std::uint32_t QueryAabbImpl(const hkAabb& a_aabb, hkpShapeKey* a_hits, std::int32_t a_maxNumKeys) const = 0; // 0C
32 
33  // members
35  std::uint8_t pad21; // 21
36  std::uint16_t pad22; // 22
37  std::uint32_t pad24; // 24
38  private:
39  KEEP_FOR_RE()
40  };
41  static_assert(sizeof(hkpBvTreeShape) == 0x28);
42 }
#define KEEP_FOR_RE()
Definition: PCH.h:713
Definition: hkAabb.h:8
Definition: hkArray.h:190
Definition: hkpBvTreeShape.h:12
static constexpr auto VTABLE
Definition: hkpBvTreeShape.h:15
std::uint8_t pad21
Definition: hkpBvTreeShape.h:35
BvTreeType
Definition: hkpBvTreeShape.h:18
~hkpBvTreeShape() override
virtual std::uint32_t QueryAabbImpl(const hkAabb &a_aabb, hkpShapeKey *a_hits, std::int32_t a_maxNumKeys) const =0
std::uint16_t pad22
Definition: hkpBvTreeShape.h:36
std::uint32_t pad24
Definition: hkpBvTreeShape.h:37
virtual void QueryAabb(const hkAabb &a_aabb, hkArray< hkpShapeKey > &a_hits) const =0
stl::enumeration< BvTreeType, std::uint8_t > bvTreeType
Definition: hkpBvTreeShape.h:34
const hkpShapeContainer * GetContainer() const override=0
static constexpr auto RTTI
Definition: hkpBvTreeShape.h:14
Definition: hkpShapeContainer.h:6
Definition: hkpShape.h:32
Definition: AbsorbEffect.h:6
constexpr std::array< REL::ID, 1 > VTABLE_hkpBvTreeShape
Definition: Offsets_VTABLE.h:14160
constexpr REL::ID RTTI_hkpBvTreeShape(static_cast< std::uint64_t >(689822))
std::uint32_t hkpShapeKey
Definition: hkpContactPointEvent.h:12