All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
pxrAovLight.h
Go to the documentation of this file.
1 //
2 // Copyright 2016 Pixar
3 //
4 // Licensed under the Apache License, Version 2.0 (the "Apache License")
5 // with the following modification; you may not use this file except in
6 // compliance with the Apache License and the following modification to it:
7 // Section 6. Trademarks. is deleted and replaced with:
8 //
9 // 6. Trademarks. This License does not grant permission to use the trade
10 // names, trademarks, service marks, or product names of the Licensor
11 // and its affiliates, except as required to comply with Section 4(c) of
12 // the License and to reproduce the content of the NOTICE file.
13 //
14 // You may obtain a copy of the Apache License at
15 //
16 // http://www.apache.org/licenses/LICENSE-2.0
17 //
18 // Unless required by applicable law or agreed to in writing, software
19 // distributed under the Apache License with the above modification is
20 // distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
21 // KIND, either express or implied. See the Apache License for the specific
22 // language governing permissions and limitations under the Apache License.
23 //
24 #ifndef USDRI_GENERATED_PXRAOVLIGHT_H
25 #define USDRI_GENERATED_PXRAOVLIGHT_H
26 
28 
29 #include "pxr/pxr.h"
30 #include "pxr/usd/usdRi/api.h"
31 #include "pxr/usd/usdLux/light.h"
32 #include "pxr/usd/usd/prim.h"
33 #include "pxr/usd/usd/stage.h"
34 #include "pxr/usd/usdRi/tokens.h"
35 
36 #include "pxr/base/vt/value.h"
37 
38 #include "pxr/base/gf/vec3d.h"
39 #include "pxr/base/gf/vec3f.h"
40 #include "pxr/base/gf/matrix4d.h"
41 
42 #include "pxr/base/tf/token.h"
43 #include "pxr/base/tf/type.h"
44 
45 PXR_NAMESPACE_OPEN_SCOPE
46 
47 class SdfAssetPath;
48 
49 // -------------------------------------------------------------------------- //
50 // PXRAOVLIGHT //
51 // -------------------------------------------------------------------------- //
52 
58 {
59 public:
64 
69  explicit UsdRiPxrAovLight(const UsdPrim& prim=UsdPrim())
70  : UsdLuxLight(prim)
71  {
72  }
73 
77  explicit UsdRiPxrAovLight(const UsdSchemaBase& schemaObj)
78  : UsdLuxLight(schemaObj)
79  {
80  }
81 
83  USDRI_API
84  virtual ~UsdRiPxrAovLight();
85 
89  USDRI_API
90  static const TfTokenVector &
91  GetSchemaAttributeNames(bool includeInherited=true);
92 
102  USDRI_API
103  static UsdRiPxrAovLight
104  Get(const UsdStagePtr &stage, const SdfPath &path);
105 
128  USDRI_API
129  static UsdRiPxrAovLight
130  Define(const UsdStagePtr &stage, const SdfPath &path);
131 
132 protected:
136  USDRI_API
137  UsdSchemaKind _GetSchemaKind() const override;
138 
139 private:
140  // needs to invoke _GetStaticTfType.
141  friend class UsdSchemaRegistry;
142  USDRI_API
143  static const TfType &_GetStaticTfType();
144 
145  static bool _IsTypedSchema();
146 
147  // override SchemaBase virtuals.
148  USDRI_API
149  const TfType &_GetTfType() const override;
150 
151 public:
152  // --------------------------------------------------------------------- //
153  // AOVNAME
154  // --------------------------------------------------------------------- //
162  USDRI_API
164 
170  USDRI_API
171  UsdAttribute CreateAovNameAttr(VtValue const &defaultValue = VtValue(), bool writeSparsely=false) const;
172 
173 public:
174  // --------------------------------------------------------------------- //
175  // INPRIMARYHIT
176  // --------------------------------------------------------------------- //
186  USDRI_API
188 
194  USDRI_API
195  UsdAttribute CreateInPrimaryHitAttr(VtValue const &defaultValue = VtValue(), bool writeSparsely=false) const;
196 
197 public:
198  // --------------------------------------------------------------------- //
199  // INREFLECTION
200  // --------------------------------------------------------------------- //
210  USDRI_API
212 
218  USDRI_API
219  UsdAttribute CreateInReflectionAttr(VtValue const &defaultValue = VtValue(), bool writeSparsely=false) const;
220 
221 public:
222  // --------------------------------------------------------------------- //
223  // INREFRACTION
224  // --------------------------------------------------------------------- //
234  USDRI_API
236 
242  USDRI_API
243  UsdAttribute CreateInRefractionAttr(VtValue const &defaultValue = VtValue(), bool writeSparsely=false) const;
244 
245 public:
246  // --------------------------------------------------------------------- //
247  // INVERT
248  // --------------------------------------------------------------------- //
256  USDRI_API
257  UsdAttribute GetInvertAttr() const;
258 
264  USDRI_API
265  UsdAttribute CreateInvertAttr(VtValue const &defaultValue = VtValue(), bool writeSparsely=false) const;
266 
267 public:
268  // --------------------------------------------------------------------- //
269  // ONVOLUMEBOUNDARIES
270  // --------------------------------------------------------------------- //
280  USDRI_API
282 
288  USDRI_API
289  UsdAttribute CreateOnVolumeBoundariesAttr(VtValue const &defaultValue = VtValue(), bool writeSparsely=false) const;
290 
291 public:
292  // --------------------------------------------------------------------- //
293  // USECOLOR
294  // --------------------------------------------------------------------- //
303  USDRI_API
305 
311  USDRI_API
312  UsdAttribute CreateUseColorAttr(VtValue const &defaultValue = VtValue(), bool writeSparsely=false) const;
313 
314 public:
315  // --------------------------------------------------------------------- //
316  // USETHROUGHPUT
317  // --------------------------------------------------------------------- //
328  USDRI_API
330 
336  USDRI_API
337  UsdAttribute CreateUseThroughputAttr(VtValue const &defaultValue = VtValue(), bool writeSparsely=false) const;
338 
339 public:
340  // ===================================================================== //
341  // Feel free to add custom code below this line, it will be preserved by
342  // the code generator.
343  //
344  // Just remember to:
345  // - Close the class declaration with };
346  // - Close the namespace with PXR_NAMESPACE_CLOSE_SCOPE
347  // - Close the include guard with #endif
348  // ===================================================================== //
349  // --(BEGIN CUSTOM CODE)--
350 };
351 
352 PXR_NAMESPACE_CLOSE_SCOPE
353 
354 #endif
UsdRiPxrAovLight(const UsdSchemaBase &schemaObj)
Construct a UsdRiPxrAovLight on the prim held by schemaObj .
Definition: pxrAovLight.h:77
USDRI_API UsdAttribute CreateInRefractionAttr(VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
See GetInRefractionAttr(), and also Create vs Get Property Methods for when to use Get vs Create...
USDRI_API UsdAttribute CreateOnVolumeBoundariesAttr(VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
See GetOnVolumeBoundariesAttr(), and also Create vs Get Property Methods for when to use Get vs Creat...
USDRI_API UsdAttribute GetInReflectionAttr() const
If this is on, the rays are traced through the specular reflections to get the masking signal...
USDRI_API UsdAttribute CreateAovNameAttr(VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
See GetAovNameAttr(), and also Create vs Get Property Methods for when to use Get vs Create...
USDRI_API UsdAttribute CreateUseThroughputAttr(VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
See GetUseThroughputAttr(), and also Create vs Get Property Methods for when to use Get vs Create...
Scenegraph object for authoring and retrieving numeric, string, and array valued data, sampled over time.
Definition: attribute.h:176
static const UsdSchemaKind schemaKind
Compile time constant representing what kind of schema this class is.
Definition: pxrAovLight.h:63
USDRI_API UsdAttribute GetUseThroughputAttr() const
If this is on, the values in the mask for the reflected or refracted rays will be affected by the str...
USDRI_API UsdAttribute GetInPrimaryHitAttr() const
If this is on, the usual mask of the illuminated objects is generated.
UsdSchemaKind
An enum representing which kind of schema a given schema class belongs to.
Definition: common.h:127
UsdRiPxrAovLight(const UsdPrim &prim=UsdPrim())
Construct a UsdRiPxrAovLight on UsdPrim prim .
Definition: pxrAovLight.h:69
static USDRI_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...
Represents a concrete typed schema.
UsdPrim is the sole persistent scenegraph object on a UsdStage, and is the embodiment of a "Prim" as ...
Definition: prim.h:132
std::vector< TfToken > TfTokenVector
Convenience types.
Definition: token.h:442
USDRI_API UsdAttribute GetInRefractionAttr() const
If this is on, the rays are traced through the glass refractions to get the masking signal...
USDRI_API UsdAttribute CreateInReflectionAttr(VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
See GetInReflectionAttr(), and also Create vs Get Property Methods for when to use Get vs Create...
USDRI_API UsdAttribute CreateUseColorAttr(VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
See GetUseColorAttr(), and also Create vs Get Property Methods for when to use Get vs Create...
A path value used to locate objects in layers or scenegraphs.
Definition: path.h:288
Contains an asset path and an optional resolved path.
Definition: assetPath.h:47
Base class for all lights.
Definition: light.h:79
virtual USDRI_API ~UsdRiPxrAovLight()
Destructor.
TfType represents a dynamic runtime type.
Definition: type.h:64
USDRI_API UsdSchemaKind _GetSchemaKind() const override
Returns the kind of schema this class belongs to.
Singleton registry that provides access to schema type information and the prim definitions for regis...
USDRI_API UsdAttribute GetOnVolumeBoundariesAttr() const
If this is on, the bounding box or shape of volumes will appear in the mask.
The base class for all schema types in Usd.
Definition: schemaBase.h:56
USDRI_API UsdAttribute CreateInvertAttr(VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
See GetInvertAttr(), and also Create vs Get Property Methods for when to use Get vs Create...
USDRI_API UsdAttribute GetInvertAttr() const
If this is on, it inverts the signal for the AOV.
USDRI_API UsdAttribute GetAovNameAttr() const
The name of the AOV to write to.
USDRI_API UsdAttribute GetUseColorAttr() const
If this is on, it outputs a RGB color image instead of a float image for the AOV. ...
static USDRI_API UsdRiPxrAovLight Get(const UsdStagePtr &stage, const SdfPath &path)
Return a UsdRiPxrAovLight holding the prim adhering to this schema at path on stage.
Provides a container which may hold any type, and provides introspection and iteration over array typ...
Definition: value.h:168
TfToken class for efficient string referencing and hashing, plus conversions to and from stl string c...
static USDRI_API UsdRiPxrAovLight Define(const UsdStagePtr &stage, const SdfPath &path)
Attempt to ensure a UsdPrim adhering to this schema at path is defined (according to UsdPrim::IsDefin...
USDRI_API UsdAttribute CreateInPrimaryHitAttr(VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
See GetInPrimaryHitAttr(), and also Create vs Get Property Methods for when to use Get vs Create...