29 return mValue == inRHS.mValue;
34 return mValue != inRHS.mValue;
39 return mValue < inRHS.mValue;
42 JPH_INLINE
explicit constexpr operator Type()
const
72#if defined(JPH_EXTERNAL_PROFILE) || defined(JPH_PROFILE_ENABLED)
112 mObjectVsBroadPhaseLayerFilter(inObjectVsBroadPhaseLayerFilter),
120 return mObjectVsBroadPhaseLayerFilter.ShouldCollide(mLayer, inLayer);
141 return mLayer == inLayer;
std::uint8_t uint8
Definition: Core.h:453
#define JPH_EXPORT
Definition: Core.h:236
unsigned int uint
Definition: Core.h:452
#define JPH_NAMESPACE_END
Definition: Core.h:378
#define JPH_NAMESPACE_BEGIN
Definition: Core.h:372
uint16 ObjectLayer
Definition: ObjectLayer.h:16
Filter class for broadphase layers.
Definition: BroadPhaseLayer.h:94
virtual ~BroadPhaseLayerFilter()=default
Destructor.
virtual bool ShouldCollide(BroadPhaseLayer inLayer) const
Function to filter out broadphase layers when doing collision query test (return true to allow testin...
Definition: BroadPhaseLayer.h:100
Definition: BroadPhaseLayer.h:18
JPH_INLINE constexpr bool operator<(const BroadPhaseLayer &inRHS) const
Definition: BroadPhaseLayer.h:37
JPH_INLINE BroadPhaseLayer()=default
JPH_INLINE constexpr BroadPhaseLayer(Type inValue)
Definition: BroadPhaseLayer.h:23
JPH_INLINE Type GetValue() const
Definition: BroadPhaseLayer.h:47
uint8 Type
Definition: BroadPhaseLayer.h:20
JPH_INLINE BroadPhaseLayer & operator=(const BroadPhaseLayer &)=default
JPH_INLINE constexpr bool operator!=(const BroadPhaseLayer &inRHS) const
Definition: BroadPhaseLayer.h:32
JPH_INLINE constexpr BroadPhaseLayer(const BroadPhaseLayer &)=default
JPH_INLINE constexpr bool operator==(const BroadPhaseLayer &inRHS) const
Definition: BroadPhaseLayer.h:27
Interface that the application should implement to allow mapping object layers to broadphase layers.
Definition: BroadPhaseLayer.h:61
virtual uint GetNumBroadPhaseLayers() const =0
Return the number of broadphase layers there are.
virtual BroadPhaseLayer GetBroadPhaseLayer(ObjectLayer inLayer) const =0
Convert an object layer to the corresponding broadphase layer.
virtual ~BroadPhaseLayerInterface()=default
Destructor.
virtual const char * GetBroadPhaseLayerName(BroadPhaseLayer inLayer) const =0
Get the user readable name of a broadphase layer (debugging purposes)
Default filter class that uses the pair filter in combination with a specified layer to filter layers...
Definition: BroadPhaseLayer.h:108
DefaultBroadPhaseLayerFilter(const ObjectVsBroadPhaseLayerFilter &inObjectVsBroadPhaseLayerFilter, ObjectLayer inLayer)
Constructor.
Definition: BroadPhaseLayer.h:111
virtual bool ShouldCollide(BroadPhaseLayer inLayer) const override
Function to filter out broadphase layers when doing collision query test (return true to allow testin...
Definition: BroadPhaseLayer.h:118
Class that makes another class non-copyable. Usage: Inherit from NonCopyable.
Definition: NonCopyable.h:11
Class to test if an object can collide with a broadphase layer. Used while finding collision pairs.
Definition: BroadPhaseLayer.h:80
virtual bool ShouldCollide(ObjectLayer inLayer1, BroadPhaseLayer inLayer2) const
Returns true if an object layer should collide with a broadphase layer.
Definition: BroadPhaseLayer.h:86
virtual ~ObjectVsBroadPhaseLayerFilter()=default
Destructor.
Allows objects from a specific broad phase layer only.
Definition: BroadPhaseLayer.h:130
SpecifiedBroadPhaseLayerFilter(BroadPhaseLayer inLayer)
Constructor.
Definition: BroadPhaseLayer.h:133
virtual bool ShouldCollide(BroadPhaseLayer inLayer) const override
Function to filter out broadphase layers when doing collision query test (return true to allow testin...
Definition: BroadPhaseLayer.h:139