7#ifndef USDPHYSICS_GENERATED_COLLISIONGROUP_H
8#define USDPHYSICS_GENERATED_COLLISIONGROUP_H
13#include "pxr/usd/usdPhysics/api.h"
21#include "pxr/base/vt/value.h"
28#include "pxr/base/tf/type.h"
30PXR_NAMESPACE_OPEN_SCOPE
135 static const TfType &_GetStaticTfType();
137 static bool _IsTypedSchema();
141 const TfType &_GetTfType()
const override;
238 const unsigned int idxB)
const;
248 SdfPathVector _groups;
251 std::vector<bool> _enabled;
258 static USDPHYSICS_API
262PXR_NAMESPACE_CLOSE_SCOPE
Contains an asset path and an optional resolved path.
A path value used to locate objects in layers or scenegraphs.
TfType represents a dynamic runtime type.
Scenegraph object for authoring and retrieving numeric, string, and array valued data,...
A general purpose API schema used to describe a collection of prims and properties within a scene.
Defines a collision group for coarse filtering.
USDPHYSICS_API UsdAttribute CreateInvertFilteredGroupsAttr(VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
See GetInvertFilteredGroupsAttr(), and also Create vs Get Property Methods for when to use Get vs Cre...
USDPHYSICS_API UsdRelationship CreateFilteredGroupsRel() const
See GetFilteredGroupsRel(), and also Create vs Get Property Methods for when to use Get vs Create.
USDPHYSICS_API UsdAttribute GetMergeGroupNameAttr() const
If non-empty, any collision groups in a stage with a matching mergeGroup should be considered to refe...
USDPHYSICS_API UsdAttribute CreateMergeGroupNameAttr(VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
See GetMergeGroupNameAttr(), and also Create vs Get Property Methods for when to use Get vs Create.
static const UsdSchemaKind schemaKind
Compile time constant representing what kind of schema this class is.
USDPHYSICS_API UsdCollectionAPI GetCollidersCollectionAPI() const
Return the UsdCollectionAPI interface used for defining what colliders belong to the CollisionGroup.
static USDPHYSICS_API UsdPhysicsCollisionGroup Define(const UsdStagePtr &stage, const SdfPath &path)
Attempt to ensure a UsdPrim adhering to this schema at path is defined (according to UsdPrim::IsDefin...
virtual USDPHYSICS_API ~UsdPhysicsCollisionGroup()
Destructor.
UsdPhysicsCollisionGroup(const UsdPrim &prim=UsdPrim())
Construct a UsdPhysicsCollisionGroup on UsdPrim prim .
static USDPHYSICS_API CollisionGroupTable ComputeCollisionGroupTable(const UsdStage &stage)
Compute a table encoding all the collision groups filter rules for a stage.
UsdPhysicsCollisionGroup(const UsdSchemaBase &schemaObj)
Construct a UsdPhysicsCollisionGroup on the prim held by schemaObj .
static USDPHYSICS_API UsdPhysicsCollisionGroup Get(const UsdStagePtr &stage, const SdfPath &path)
Return a UsdPhysicsCollisionGroup holding the prim adhering to this schema at path on stage.
USDPHYSICS_API UsdAttribute GetInvertFilteredGroupsAttr() const
Normally, the filter will disable collisions against the selected filter groups.
static USDPHYSICS_API const TfTokenVector & GetSchemaAttributeNames(bool includeInherited=true)
Return a vector of names of all pre-declared attributes for this schema class and all its ancestor cl...
USDPHYSICS_API UsdRelationship GetFilteredGroupsRel() const
References a list of PhysicsCollisionGroups with which collisions should be ignored.
USDPHYSICS_API UsdSchemaKind _GetSchemaKind() const override
Returns the kind of schema this class belongs to.
UsdPrim is the sole persistent scenegraph object on a UsdStage, and is the embodiment of a "Prim" as ...
A UsdRelationship creates dependencies between scenegraph objects by allowing a prim to target other ...
The base class for all schema types in Usd.
Singleton registry that provides access to schema type information and the prim definitions for regis...
The outermost container for scene description, which owns and presents composed prims as a scenegraph...
The base class for all typed schemas (those that can impart a typeName to a UsdPrim),...
Provides a container which may hold any type, and provides introspection and iteration over array typ...
UsdSchemaKind
An enum representing which kind of schema a given schema class belongs to.
Utility structure generated by ComputeCollisionGroupTable(); contains a table describing which pairs ...
USDPHYSICS_API bool IsCollisionEnabled(const SdfPath &primA, const SdfPath &primB) const
Return true if the groups primA and primB collide.
USDPHYSICS_API const SdfPathVector & GetCollisionGroups() const
Return the set of all UsdPhysicsCollisionGroup which this table contains.
USDPHYSICS_API bool IsCollisionEnabled(const unsigned int idxA, const unsigned int idxB) const
Return true if the groups at indices idxA and idxB collide.
TfToken class for efficient string referencing and hashing, plus conversions to and from stl string c...
std::vector< TfToken > TfTokenVector
Convenience types.