7#ifndef USDLUX_GENERATED_LIGHTLISTAPI_H
8#define USDLUX_GENERATED_LIGHTLISTAPI_H
13#include "pxr/usd/usdLux/api.h"
19#include "pxr/base/vt/value.h"
26#include "pxr/base/tf/type.h"
28PXR_NAMESPACE_OPEN_SCOPE
263 static const TfType &_GetStaticTfType();
265 static bool _IsTypedSchema();
269 const TfType &_GetTfType()
const override;
377PXR_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.
The base class for all API schemas.
Scenegraph object for authoring and retrieving numeric, string, and array valued data,...
API schema to support discovery and publishing of lights in a scene.
USDLUX_API void StoreLightList(const SdfPathSet &) const
Store the given paths as the lightlist for this prim.
USDLUX_API SdfPathSet ComputeLightList(ComputeMode mode) const
Computes and returns the list of lights and light filters in the stage, optionally consulting a cache...
USDLUX_API UsdRelationship GetLightListRel() const
Relationship to lights in the scene.
static const UsdSchemaKind schemaKind
Compile time constant representing what kind of schema this class is.
ComputeMode
Runtime control over whether to consult stored lightList caches.
@ ComputeModeConsultModelHierarchyCache
Consult any caches found on the model hierarchy.
@ ComputeModeIgnoreCache
Ignore any caches found, and do a full prim traversal.
USDLUX_API UsdRelationship CreateLightListRel() const
See GetLightListRel(), and also Create vs Get Property Methods for when to use Get vs Create.
USDLUX_API void InvalidateLightList() const
Mark any stored lightlist as invalid, by setting the lightList:cacheBehavior attribute to ignore.
USDLUX_API UsdAttribute CreateLightListCacheBehaviorAttr(VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
See GetLightListCacheBehaviorAttr(), and also Create vs Get Property Methods for when to use Get vs C...
UsdLuxLightListAPI(const UsdSchemaBase &schemaObj)
Construct a UsdLuxLightListAPI on the prim held by schemaObj .
USDLUX_API UsdAttribute GetLightListCacheBehaviorAttr() const
Controls how the lightList should be interpreted.
virtual USDLUX_API ~UsdLuxLightListAPI()
Destructor.
USDLUX_API UsdSchemaKind _GetSchemaKind() const override
Returns the kind of schema this class belongs to.
static USDLUX_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...
UsdLuxLightListAPI(const UsdPrim &prim=UsdPrim())
Construct a UsdLuxLightListAPI on UsdPrim prim .
static USDLUX_API bool CanApply(const UsdPrim &prim, std::string *whyNot=nullptr)
Returns true if this single-apply API schema can be applied to the given prim.
static USDLUX_API UsdLuxLightListAPI Get(const UsdStagePtr &stage, const SdfPath &path)
Return a UsdLuxLightListAPI holding the prim adhering to this schema at path on stage.
static USDLUX_API UsdLuxLightListAPI Apply(const UsdPrim &prim)
Applies this single-apply API schema to the given prim.
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...
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.
TfToken class for efficient string referencing and hashing, plus conversions to and from stl string c...
std::vector< TfToken > TfTokenVector
Convenience types.