25 mMapping.resize(inNumBroadPhaseLayers);
27#if defined(JPH_EXTERNAL_PROFILE) || defined(JPH_PROFILE_ENABLED)
28 mBroadPhaseLayerNames.resize(inNumBroadPhaseLayers,
"Undefined");
37 m.mGroupsToInclude = inGroupsToInclude;
38 m.mGroupsToExclude = inGroupsToExclude;
43 return (
uint)mMapping.size();
50 for (
const Mapping &m : mMapping)
51 if ((group & m.mGroupsToInclude) != 0 && (group & m.mGroupsToExclude) == 0)
63 return &m == &mMapping.back()
64 || (m.mGroupsToInclude & mask) != 0;
67#if defined(JPH_EXTERNAL_PROFILE) || defined(JPH_PROFILE_ENABLED)
82 uint32 mGroupsToInclude = 0;
87#if defined(JPH_EXTERNAL_PROFILE) || defined(JPH_PROFILE_ENABLED)
unsigned int uint
Definition: Core.h:439
#define JPH_NAMESPACE_END
Definition: Core.h:367
std::uint32_t uint32
Definition: Core.h:442
#define JPH_NAMESPACE_BEGIN
Definition: Core.h:361
#define JPH_ASSERT(...)
Definition: IssueReporting.h:33
#define JPH_OVERRIDE_NEW_DELETE
Macro to override the new and delete functions.
Definition: Memory.h:29
uint16 ObjectLayer
Definition: ObjectLayer.h:16
std::vector< T, STLAllocator< T > > Array
Definition: STLAllocator.h:81
Definition: BroadPhaseLayer.h:18
uint8 Type
Definition: BroadPhaseLayer.h:20
Interface that the application should implement to allow mapping object layers to broadphase layers.
Definition: BroadPhaseLayer.h:61
Definition: BroadPhaseLayerInterfaceMask.h:18
void ConfigureLayer(BroadPhaseLayer inBroadPhaseLayer, uint32 inGroupsToInclude, uint32 inGroupsToExclude)
Definition: BroadPhaseLayerInterfaceMask.h:33
void SetBroadPhaseLayerName(BroadPhaseLayer inLayer, const char *inName)
Definition: BroadPhaseLayerInterfaceMask.h:68
virtual uint GetNumBroadPhaseLayers() const override
Return the number of broadphase layers there are.
Definition: BroadPhaseLayerInterfaceMask.h:41
virtual BroadPhaseLayer GetBroadPhaseLayer(ObjectLayer inLayer) const override
Convert an object layer to the corresponding broadphase layer.
Definition: BroadPhaseLayerInterfaceMask.h:46
JPH_OVERRIDE_NEW_DELETE BroadPhaseLayerInterfaceMask(uint inNumBroadPhaseLayers)
Definition: BroadPhaseLayerInterfaceMask.h:22
virtual const char * GetBroadPhaseLayerName(BroadPhaseLayer inLayer) const override
Get the user readable name of a broadphase layer (debugging purposes)
Definition: BroadPhaseLayerInterfaceMask.h:73
bool ShouldCollide(ObjectLayer inLayer1, BroadPhaseLayer inLayer2) const
Returns true if an object layer should collide with a broadphase layer, this function is being called...
Definition: BroadPhaseLayerInterfaceMask.h:59
static uint32 sGetGroup(ObjectLayer inObjectLayer)
Get the group bits from an ObjectLayer.
Definition: ObjectLayerPairFilterMask.h:33
static uint32 sGetMask(ObjectLayer inObjectLayer)
Get the mask bits from an ObjectLayer.
Definition: ObjectLayerPairFilterMask.h:39