24#ifndef USDLUX_GENERATED_LIGHTFILTER_H
25#define USDLUX_GENERATED_LIGHTFILTER_H
30#include "pxr/usd/usdLux/api.h"
37#include "pxr/usd/usdShade/input.h"
38#include "pxr/usd/usdShade/output.h"
40#include "pxr/base/vt/value.h"
47#include "pxr/base/tf/type.h"
49PXR_NAMESPACE_OPEN_SCOPE
164 static const TfType &_GetStaticTfType();
166 static bool _IsTypedSchema();
170 const TfType &_GetTfType()
const override;
267 std::vector<UsdShadeOutput>
GetOutputs(
bool onlyAuthored=
true)
const;
299 std::vector<UsdShadeInput>
GetInputs(
bool onlyAuthored=
true)
const;
325 const TfToken &renderContext)
const;
338 bool writeSparsely=
false)
const;
360PXR_NAMESPACE_CLOSE_SCOPE
Contains an asset path and an optional resolved path.
A path value used to locate objects in layers or scenegraphs.
Represents a value type name, i.e.
Token for efficient comparison, assignment, and hashing of known strings.
TfType represents a dynamic runtime type.
Scenegraph object for authoring and retrieving numeric, string, and array valued data,...
This is a general purpose API schema, used to describe a collection of heterogeneous objects within t...
A light filter modifies the effect of a light.
USDLUX_API TfToken GetShaderId(const TfTokenVector &renderContexts) const
Return the light filter's shader ID for the given list of available renderContexts.
USDLUX_API UsdCollectionAPI GetFilterLinkCollectionAPI() const
Return the UsdCollectionAPI interface used for examining and modifying the filter-linking of this lig...
USDLUX_API UsdLuxLightFilter(const UsdShadeConnectableAPI &connectable)
Constructor that takes a ConnectableAPI object.
virtual USDLUX_API ~UsdLuxLightFilter()
Destructor.
USDLUX_API std::vector< UsdShadeOutput > GetOutputs(bool onlyAuthored=true) const
Outputs are represented by attributes in the "outputs:" namespace.
USDLUX_API UsdShadeOutput CreateOutput(const TfToken &name, const SdfValueTypeName &typeName)
Create an output which can either have a value or can be connected.
UsdLuxLightFilter(const UsdSchemaBase &schemaObj)
Construct a UsdLuxLightFilter on the prim held by schemaObj .
static const UsdSchemaKind schemaKind
Compile time constant representing what kind of schema this class is.
USDLUX_API UsdShadeInput CreateInput(const TfToken &name, const SdfValueTypeName &typeName)
Create an input which can either have a value or can be connected.
USDLUX_API UsdAttribute GetShaderIdAttr() const
Default ID for the light filter's shader.
USDLUX_API UsdAttribute GetShaderIdAttrForRenderContext(const TfToken &renderContext) const
Returns the shader ID attribute for the given renderContext.
USDLUX_API UsdAttribute CreateShaderIdAttr(VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
See GetShaderIdAttr(), and also Create vs Get Property Methods for when to use Get vs Create.
USDLUX_API UsdShadeConnectableAPI ConnectableAPI() const
Contructs and returns a UsdShadeConnectableAPI object with this light filter.
UsdLuxLightFilter(const UsdPrim &prim=UsdPrim())
Construct a UsdLuxLightFilter on UsdPrim prim .
static USDLUX_API UsdLuxLightFilter Define(const UsdStagePtr &stage, const SdfPath &path)
Attempt to ensure a UsdPrim adhering to this schema at path is defined (according to UsdPrim::IsDefin...
static USDLUX_API UsdLuxLightFilter Get(const UsdStagePtr &stage, const SdfPath &path)
Return a UsdLuxLightFilter holding the prim adhering to this schema at path on stage.
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...
USDLUX_API UsdShadeOutput GetOutput(const TfToken &name) const
Return the requested output if it exists.
USDLUX_API UsdShadeInput GetInput(const TfToken &name) const
Return the requested input if it exists.
USDLUX_API UsdAttribute CreateShaderIdAttrForRenderContext(const TfToken &renderContext, VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
Creates the shader ID attribute for the given renderContext.
USDLUX_API std::vector< UsdShadeInput > GetInputs(bool onlyAuthored=true) const
Inputs are represented by attributes in the "inputs:" namespace.
UsdPrim is the sole persistent scenegraph object on a UsdStage, and is the embodiment of a "Prim" as ...
The base class for all schema types in Usd.
Singleton registry that provides access to schema type information and the prim definitions for regis...
UsdShadeConnectableAPI is an API schema that provides a common interface for creating outputs and mak...
This class encapsulates a shader or node-graph output, which is a connectable attribute representing ...
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.