29#ifndef PVD_META_DATA_BINDING_DATA_H
30#define PVD_META_DATA_BINDING_DATA_H
33#include "foundation/PxSimpleTypes.h"
34#include "foundation/PxHashSet.h"
35#include "foundation/PxHashMap.h"
36#include "foundation/PxArray.h"
44typedef PxHashSet<const PxRigidActor*> OwnerActorsValueType;
45typedef PxHashMap<const PxShape*, OwnerActorsValueType*> OwnerActorsMap;
47struct PvdMetaDataBindingData :
public PxUserAllocated
49 PxArray<PxU8> mTempU8Array;
50 PxArray<PxActor*> mActors;
51 PxArray<PxArticulationReducedCoordinate*> mArticulations;
52 PxArray<PxArticulationLink*> mArticulationLinks;
53 PxHashSet<PxActor*> mSleepingActors;
54 OwnerActorsMap mOwnerActorsMap;
56 PvdMetaDataBindingData()
57 : mTempU8Array(
"TempU8Array")
59 , mArticulations(
"Articulations")
60 , mArticulationLinks(
"ArticulationLinks")
61 , mSleepingActors(
"SleepingActors")
65 template <
typename TDataType>
66 TDataType* allocateTemp(PxU32 numItems)
68 mTempU8Array.resize(numItems *
sizeof(TDataType));
70 return reinterpret_cast<TDataType*
>(mTempU8Array.begin());
75 DataRef<const PxU8> tempToRef()
77 return DataRef<const PxU8>(mTempU8Array.begin(), mTempU8Array.size());
Sorts an array of objects in ascending order, assuming that the predicate implements the < operator:
Definition PxBoxController.h:39