PxBaseMaterial#

Defined in include/PxBaseMaterial.h

class PxBaseMaterial : public PxRefCounted#

Base material class.

Subclassed by PxDeformableMaterial, PxMaterial, PxPBDMaterial

Public Functions

inline PxBaseMaterial(PxType concreteType, PxBaseFlags baseFlags)#
inline PxBaseMaterial(PxBaseFlags baseFlags)#
inline virtual ~PxBaseMaterial()#
inline virtual bool isKindOf(const char *name) const#

Returns whether a given type name matches with the type of this instance.

virtual void release() = 0#

Decrements the reference count of the object and releases it if the new reference count is zero.

virtual PxU32 getReferenceCount() const = 0#

Returns the reference count of the object.

At creation, the reference count of the object is 1. Every other object referencing this object increments the count by 1. When the reference count reaches 0, and only then, the object gets destroyed automatically.

Returns:

the current reference count.

virtual void acquireReference() = 0#

Acquires a counted reference to this object.

This method increases the reference count of the object by 1. Decrement the reference count by calling release()

virtual const char *getConcreteTypeName() const = 0#

Returns string name of dynamic type.

Returns:

Class name of most derived type of this object.

template<class T>
inline T *is()#
template<class T>
inline const T *is() const#
inline PxType getConcreteType() const#

Returns concrete type of object.

See also

PxConcreteType

Returns:

PxConcreteType::Enum of serialized object

inline void setBaseFlag(PxBaseFlag::Enum flag, bool value)#

Set PxBaseFlag

Parameters:
  • flag[in] The flag to be set

  • value[in] The flags new value

inline void setBaseFlags(PxBaseFlags inFlags)#

Set PxBaseFlags

See also

PxBaseFlags

Parameters:

inFlags[in] The flags to be set

inline PxBaseFlags getBaseFlags() const#

Returns PxBaseFlags.

See also

PxBaseFlags

Returns:

PxBaseFlags

inline virtual bool isReleasable() const#

Whether the object is subordinate.

A class is subordinate, if it can only be instantiated in the context of another class.

Returns:

Whether the class is subordinate

Public Members

void *userData#

user can assign this to whatever, usually to create a 1:1 relationship with a user object.

Protected Functions

inline virtual void onRefCountZero()#
template<class T>
inline bool typeMatch() const#

Protected Attributes

PxType mConcreteType#
PxBaseFlags mBaseFlags#
PxU32 mBuiltInRefCount#