CommonLibSSE (Parapets fork)
RE::hkpShapeCollection Class Reference

#include <hkpShapeCollection.h>

Inheritance diagram for RE::hkpShapeCollection:
RE::hkpShape RE::hkpShapeContainer RE::hkReferencedObject RE::hkBaseObject RE::hkpListShape

Public Types

enum class  CollectionType {
  kList , kExtendedMesh , kTrisampledHeightfield , kUser ,
  kSimpleMesh , kMeshShape , kCompressedMesh , kTotal
}
 
- 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 Types inherited from RE::hkpShapeContainer
enum class  ReferencePolicy { kIgnore , kIncrement }
 

Public Member Functions

 ~hkpShapeCollection () override
 
void CalcContentStatistics (hkStatisticsCollector *a_collector, const hkClass *a_class) const override
 
float GetMaximumProjection (const hkVector4 &a_direction) const override
 
const hkpShapeContainerGetContainer () const override
 
void GetAabbImpl (const hkTransform &a_localToWorld, float a_tolerance, hkAabb &a_out) const override
 
bool CastRayImpl (const hkpShapeRayCastInput &a_input, hkpShapeRayCastOutput &a_output) const override
 
void CastRayWithCollectorImpl (const hkpShapeRayCastInput &a_input, const hkpCdBody &a_cdBody, hkpRayHitCollector &a_collector) const override
 
bool IsWeldingEnabled () const override
 
virtual void InitWeldingInfo (hkpWeldingUtility::WeldingType a_weldingType)
 
virtual void SetWeldingInfo (hkpShapeKey a_key, std::int16_t a_weldingInfo)
 
- Public Member Functions inherited from RE::hkpShape
 ~hkpShape () override
 
virtual bool IsConvex () const
 
virtual std::int32_t CalcSizeForSpu (const CalcSizeForSpuInput &a_input, std::int32_t a_spuBufferSizeLeft) const
 
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
 
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 Member Functions inherited from RE::hkpShapeContainer
virtual ~hkpShapeContainer ()
 
virtual std::int32_t GetNumChildShapes () const
 
virtual hkpShapeKey GetFirstKey () const =0
 
virtual hkpShapeKey GetNextKey (hkpShapeKey a_oldKey) const =0
 
virtual std::uint32_t GetCollisionFilterInfo (hkpShapeKey a_key) const
 
virtual const hkpShapeGetChildShape (hkpShapeKey a_key, hkpShapeBuffer &a_buffer) const =0
 

Public Attributes

bool disableWelding
 
stl::enumeration< CollectionType, std::uint8_t > collectionType
 
std::uint16_t pad2A
 
std::uint32_t pad2C
 
- 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_hkpShapeCollection
 
- 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
 
- Static Public Attributes inherited from RE::hkpShapeContainer
static constexpr auto RTTI = RTTI_hkpShapeContainer
 

Member Enumeration Documentation

◆ CollectionType

Enumerator
kList 
kExtendedMesh 
kTrisampledHeightfield 
kUser 
kSimpleMesh 
kMeshShape 
kCompressedMesh 
kTotal 

Constructor & Destructor Documentation

◆ ~hkpShapeCollection()

RE::hkpShapeCollection::~hkpShapeCollection ( )
override

Member Function Documentation

◆ CalcContentStatistics()

void RE::hkpShapeCollection::CalcContentStatistics ( hkStatisticsCollector *  a_collector,
const hkClass *  a_class 
) const
overridevirtual

Reimplemented from RE::hkReferencedObject.

◆ CastRayImpl()

bool RE::hkpShapeCollection::CastRayImpl ( const hkpShapeRayCastInput &  a_input,
hkpShapeRayCastOutput a_output 
) const
overridevirtual

Implements RE::hkpShape.

◆ CastRayWithCollectorImpl()

void RE::hkpShapeCollection::CastRayWithCollectorImpl ( const hkpShapeRayCastInput &  a_input,
const hkpCdBody a_cdBody,
hkpRayHitCollector &  a_collector 
) const
overridevirtual

Implements RE::hkpShape.

◆ GetAabbImpl()

void RE::hkpShapeCollection::GetAabbImpl ( const hkTransform a_localToWorld,
float  a_tolerance,
hkAabb a_out 
) const
overridevirtual

Implements RE::hkpShape.

◆ GetContainer()

const hkpShapeContainer* RE::hkpShapeCollection::GetContainer ( ) const
overridevirtual

Reimplemented from RE::hkpShape.

◆ GetMaximumProjection()

float RE::hkpShapeCollection::GetMaximumProjection ( const hkVector4 a_direction) const
overridevirtual

Reimplemented from RE::hkpShape.

◆ InitWeldingInfo()

virtual void RE::hkpShapeCollection::InitWeldingInfo ( hkpWeldingUtility::WeldingType  a_weldingType)
virtual

◆ IsWeldingEnabled()

bool RE::hkpShapeCollection::IsWeldingEnabled ( ) const
overridevirtual

Reimplemented from RE::hkpShapeContainer.

◆ SetWeldingInfo()

virtual void RE::hkpShapeCollection::SetWeldingInfo ( hkpShapeKey  a_key,
std::int16_t  a_weldingInfo 
)
virtual

Member Data Documentation

◆ collectionType

stl::enumeration<CollectionType, std::uint8_t> RE::hkpShapeCollection::collectionType

◆ disableWelding

bool RE::hkpShapeCollection::disableWelding

◆ pad2A

std::uint16_t RE::hkpShapeCollection::pad2A

◆ pad2C

std::uint32_t RE::hkpShapeCollection::pad2C

◆ RTTI

constexpr auto RE::hkpShapeCollection::RTTI = RTTI_hkpShapeCollection
inlinestaticconstexpr

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