CommonLibSSE (Parapets fork)
RE::hkpBvTreeShape Class Referenceabstract

#include <hkpBvTreeShape.h>

Inheritance diagram for RE::hkpBvTreeShape:
RE::hkpShape RE::hkReferencedObject RE::hkBaseObject RE::hkMoppBvTreeShapeBase RE::hkpMoppBvTreeShape

Public Types

enum class  BvTreeType { kMOPP , kTriSampledHeightField , kUser }
 
- Public Types inherited from RE::hkpShape
using GetSupportingVertexFunc = void(const void *a_this, const hkVector4 &a_direction, hkpCdVertex &a_supportVertex)
 
using ConvertVertexIdsToVerticesFunc = void(const void *a_this, const hkpVertexID *a_ids, std::int32_t a_numIDs, class hkpCdVertex *a_verticesOut)
 
using WeldContactPointFunc = std::int32_t(const void *a_this, hkpVertexID *a_featurePoints, std::uint8_t &a_numFeaturePoints, hkVector4 &a_contactPointWs, const hkTransform *a_thisTransform, const hkpConvexShape *a_collidingShape, const hkTransform *a_collidingTransform, hkVector4 &a_separatingNormalInOut)
 
using GetCentreFunc = void(const void *a_this, hkVector4 &a_centreOut)
 
using GetNumCollisionSpheresFunc = std::int32_t(const void *a_this)
 
using GetCollisionSpheresFunc = const hkSphere *(const void *a_this, hkSphere *a_sphereBuffer)
 
using GetAabbFunc = void(const void *a_this, const hkTransform &a_localToWorld, float a_tolerance, hkAabb &a_out)
 
using CastRayFunc = bool(const void *a_this, const hkpShapeRayCastInput &a_input, hkpShapeRayCastOutput &a_output)
 
using CastRayWithCollectorFunc = void(const void *a_this, const hkpShapeRayCastInput &a_input, const hkpCdBody &a_cdBody, hkpRayHitCollector &a_collector)
 
using CastRayBundleFunc = hkVector4Comparison(const void *a_this, const hkpShapeRayBundleCastInput &a_input, hkpShapeRayBundleCastOutput &a_output, const hkVector4Comparison &a_mask)
 
using GetChildShapeFunc = const hkpShape *(const void *a_this, hkpShapeKey a_key, hkpShapeBuffer &a_buffer)
 
using GetCollisionFilterInfoFunc = std::uint32_t(const void *a_this, hkpShapeKey a_key)
 
using RegsiterFunc = void(ShapeFuncs &a_sf)
 
- Public Types inherited from RE::hkReferencedObject
enum class  LockMode { kNone = 0 , kAuto , kManual }
 
enum  { kMemSize = 0x7FFF }
 

Public Member Functions

 ~hkpBvTreeShape () override
 
const hkpShapeContainerGetContainer () const override=0
 
virtual void QueryAabb (const hkAabb &a_aabb, hkArray< hkpShapeKey > &a_hits) const =0
 
virtual std::uint32_t QueryAabbImpl (const hkAabb &a_aabb, hkpShapeKey *a_hits, std::int32_t a_maxNumKeys) const =0
 
- Public Member Functions inherited from RE::hkpShape
 ~hkpShape () override
 
virtual float GetMaximumProjection (const hkVector4 &a_direction) const
 
virtual bool IsConvex () const
 
virtual std::int32_t CalcSizeForSpu (const CalcSizeForSpuInput &a_input, std::int32_t a_spuBufferSizeLeft) const
 
virtual void GetAabbImpl (const hkTransform &a_localToWorld, float a_tolerance, hkAabb &a_out) const =0
 
virtual bool CastRayImpl (const hkpShapeRayCastInput &a_input, hkpShapeRayCastOutput &a_output) const =0
 
virtual void CastRayWithCollectorImpl (const hkpShapeRayCastInput &a_input, const hkpCdBody &a_cdBody, hkpRayHitCollector &a_collector) const =0
 
virtual hkVector4Comparison CastRayBundleImpl (const hkpShapeRayBundleCastInput &a_input, hkpShapeRayBundleCastOutput &a_output, const hkVector4Comparison &a_mask) const
 
- Public Member Functions inherited from RE::hkReferencedObject
 hkReferencedObject ()
 
 ~hkReferencedObject () override=default
 
virtual const hkClass * GetClassType () const
 
virtual void CalcContentStatistics (hkStatisticsCollector *a_collector, const hkClass *a_class) const
 
void AddReference () const
 
std::int32_t GetAllocatedSize () const
 
std::int32_t GetReferenceCount () const
 
void RemoveReference () const
 
- Public Member Functions inherited from RE::hkBaseObject
virtual ~hkBaseObject ()=default
 

Public Attributes

stl::enumeration< BvTreeType, std::uint8_t > bvTreeType
 
std::uint8_t pad21
 
std::uint16_t pad22
 
std::uint32_t pad24
 
- Public Attributes inherited from RE::hkpShape
std::uint64_t userData
 
hkpShapeType type
 
std::uint32_t pad1C
 
- Public Attributes inherited from RE::hkReferencedObject
std::uint16_t memSizeAndFlags
 
volatile std::int16_t referenceCount
 
std::uint32_t pad0C
 

Static Public Attributes

static constexpr auto RTTI = RTTI_hkpBvTreeShape
 
- Static Public Attributes inherited from RE::hkpShape
static constexpr auto RTTI = RTTI_hkpShape
 
- Static Public Attributes inherited from RE::hkReferencedObject
static constexpr auto RTTI = RTTI_hkReferencedObject
 
- Static Public Attributes inherited from RE::hkBaseObject
static constexpr auto RTTI = RTTI_hkBaseObject
 

Member Enumeration Documentation

◆ BvTreeType

Enumerator
kMOPP 
kTriSampledHeightField 
kUser 

Constructor & Destructor Documentation

◆ ~hkpBvTreeShape()

RE::hkpBvTreeShape::~hkpBvTreeShape ( )
override

Member Function Documentation

◆ GetContainer()

const hkpShapeContainer* RE::hkpBvTreeShape::GetContainer ( ) const
overridepure virtual

Reimplemented from RE::hkpShape.

Implemented in RE::hkpMoppBvTreeShape.

◆ QueryAabb()

virtual void RE::hkpBvTreeShape::QueryAabb ( const hkAabb a_aabb,
hkArray< hkpShapeKey > &  a_hits 
) const
pure virtual

Implemented in RE::hkMoppBvTreeShapeBase.

◆ QueryAabbImpl()

virtual std::uint32_t RE::hkpBvTreeShape::QueryAabbImpl ( const hkAabb a_aabb,
hkpShapeKey a_hits,
std::int32_t  a_maxNumKeys 
) const
pure virtual

Implemented in RE::hkMoppBvTreeShapeBase.

Member Data Documentation

◆ bvTreeType

stl::enumeration<BvTreeType, std::uint8_t> RE::hkpBvTreeShape::bvTreeType

◆ pad21

std::uint8_t RE::hkpBvTreeShape::pad21

◆ pad22

std::uint16_t RE::hkpBvTreeShape::pad22

◆ pad24

std::uint32_t RE::hkpBvTreeShape::pad24

◆ RTTI

constexpr auto RE::hkpBvTreeShape::RTTI = RTTI_hkpBvTreeShape
inlinestaticconstexpr

The documentation for this class was generated from the following file: