mirror of https://github.com/PrimeDecomp/prime.git
39 lines
1.1 KiB
C++
39 lines
1.1 KiB
C++
|
#ifndef _CINTERNALCOLLISIONSTRUCTURE
|
||
|
#define _CINTERNALCOLLISIONSTRUCTURE
|
||
|
|
||
|
#include "Kyoto/Math/CTransform4f.hpp"
|
||
|
|
||
|
class CMaterialFilter;
|
||
|
class CCollisionPrimitive;
|
||
|
class CInternalCollisionStructure {
|
||
|
public:
|
||
|
class CPrimDesc {
|
||
|
public:
|
||
|
CPrimDesc(const CCollisionPrimitive& prim, const CMaterialFilter& filter,
|
||
|
const CTransform4f& xf)
|
||
|
: x0_prim(prim), x4_filter(filter), x8_xf(xf) {}
|
||
|
|
||
|
const CCollisionPrimitive& GetPrim() const { return x0_prim; }
|
||
|
const CMaterialFilter& GetFilter() const { return x4_filter; }
|
||
|
const CTransform4f& GetTransform() const { return x8_xf; }
|
||
|
|
||
|
private:
|
||
|
const CCollisionPrimitive& x0_prim;
|
||
|
const CMaterialFilter& x4_filter;
|
||
|
CTransform4f x8_xf;
|
||
|
};
|
||
|
|
||
|
CInternalCollisionStructure(const CPrimDesc& left, const CPrimDesc& right)
|
||
|
: x0_left(left), x38_right(right) {}
|
||
|
|
||
|
const CPrimDesc& GetLeft() const { return x0_left; }
|
||
|
const CPrimDesc& GetRight() const { return x38_right; }
|
||
|
CInternalCollisionStructure
|
||
|
GetSwapped() const; // TODO: Find where this is used and investigate proper behavior
|
||
|
private:
|
||
|
CPrimDesc x0_left;
|
||
|
CPrimDesc x38_right;
|
||
|
};
|
||
|
|
||
|
#endif // _CINTERNALCOLLISIONSTRUCTURE
|