All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
domeLight.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 USDLUX_GENERATED_DOMELIGHT_H
25 #define USDLUX_GENERATED_DOMELIGHT_H
26 
28 
29 #include "pxr/pxr.h"
30 #include "pxr/usd/usdLux/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/usdLux/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 // DOMELIGHT //
51 // -------------------------------------------------------------------------- //
52 
86 {
87 public:
92 
97  explicit UsdLuxDomeLight(const UsdPrim& prim=UsdPrim())
98  : UsdLuxLight(prim)
99  {
100  }
101 
105  explicit UsdLuxDomeLight(const UsdSchemaBase& schemaObj)
106  : UsdLuxLight(schemaObj)
107  {
108  }
109 
111  USDLUX_API
112  virtual ~UsdLuxDomeLight();
113 
117  USDLUX_API
118  static const TfTokenVector &
119  GetSchemaAttributeNames(bool includeInherited=true);
120 
130  USDLUX_API
131  static UsdLuxDomeLight
132  Get(const UsdStagePtr &stage, const SdfPath &path);
133 
156  USDLUX_API
157  static UsdLuxDomeLight
158  Define(const UsdStagePtr &stage, const SdfPath &path);
159 
160 protected:
164  USDLUX_API
165  UsdSchemaType _GetSchemaType() const override;
166 
167 private:
168  // needs to invoke _GetStaticTfType.
169  friend class UsdSchemaRegistry;
170  USDLUX_API
171  static const TfType &_GetStaticTfType();
172 
173  static bool _IsTypedSchema();
174 
175  // override SchemaBase virtuals.
176  USDLUX_API
177  const TfType &_GetTfType() const override;
178 
179 public:
180  // --------------------------------------------------------------------- //
181  // TEXTUREFILE
182  // --------------------------------------------------------------------- //
190  USDLUX_API
192 
198  USDLUX_API
199  UsdAttribute CreateTextureFileAttr(VtValue const &defaultValue = VtValue(), bool writeSparsely=false) const;
200 
201 public:
202  // --------------------------------------------------------------------- //
203  // TEXTUREFORMAT
204  // --------------------------------------------------------------------- //
225  USDLUX_API
227 
233  USDLUX_API
234  UsdAttribute CreateTextureFormatAttr(VtValue const &defaultValue = VtValue(), bool writeSparsely=false) const;
235 
236 public:
237  // --------------------------------------------------------------------- //
238  // PORTALS
239  // --------------------------------------------------------------------- //
242  USDLUX_API
244 
247  USDLUX_API
249 
250 public:
251  // ===================================================================== //
252  // Feel free to add custom code below this line, it will be preserved by
253  // the code generator.
254  //
255  // Just remember to:
256  // - Close the class declaration with };
257  // - Close the namespace with PXR_NAMESPACE_CLOSE_SCOPE
258  // - Close the include guard with #endif
259  // ===================================================================== //
260  // --(BEGIN CUSTOM CODE)--
261 };
262 
263 PXR_NAMESPACE_CLOSE_SCOPE
264 
265 #endif
USDLUX_API UsdRelationship GetPortalsRel() const
Optional portals to guide light sampling.
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...
virtual USDLUX_API ~UsdLuxDomeLight()
Destructor.
UsdLuxDomeLight(const UsdPrim &prim=UsdPrim())
Construct a UsdLuxDomeLight on UsdPrim prim .
Definition: domeLight.h:97
Scenegraph object for authoring and retrieving numeric, string, and array valued data, sampled over time.
Definition: attribute.h:176
Represents a concrete typed schema.
static USDLUX_API UsdLuxDomeLight Get(const UsdStagePtr &stage, const SdfPath &path)
Return a UsdLuxDomeLight holding the prim adhering to this schema at path on stage.
static USDLUX_API UsdLuxDomeLight Define(const UsdStagePtr &stage, const SdfPath &path)
Attempt to ensure a UsdPrim adhering to this schema at path is defined (according to UsdPrim::IsDefin...
USDLUX_API UsdAttribute GetTextureFormatAttr() const
Specifies the parameterization of the color map file.
UsdLuxDomeLight(const UsdSchemaBase &schemaObj)
Construct a UsdLuxDomeLight on the prim held by schemaObj .
Definition: domeLight.h:105
UsdSchemaType
An enum representing which type of schema a given schema class belongs to.
Definition: common.h:149
USDLUX_API UsdSchemaType _GetSchemaType() const override
Returns the type of schema this class belongs to.
UsdPrim is the sole persistent scenegraph object on a UsdStage, and is the embodiment of a "Prim" as ...
Definition: prim.h:131
std::vector< TfToken > TfTokenVector
Convenience types.
Definition: token.h:438
USDLUX_API UsdAttribute GetTextureFileAttr() const
A color texture to use on the dome, such as an HDR (high dynamic range) texture intended for IBL (ima...
USDLUX_API UsdRelationship CreatePortalsRel() const
See GetPortalsRel(), 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:287
USDLUX_API UsdAttribute CreateTextureFileAttr(VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
See GetTextureFileAttr(), and also Create vs Get Property Methods for when to use Get vs Create...
A UsdRelationship creates dependencies between scenegraph objects by allowing a prim to target other ...
Definition: relationship.h:128
Contains an asset path and an optional resolved path.
Definition: assetPath.h:43
Base class for all lights.
Definition: light.h:77
TfType represents a dynamic runtime type.
Definition: type.h:70
Singleton registry that provides access to prim and property definition information for registered Us...
USDLUX_API UsdAttribute CreateTextureFormatAttr(VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
See GetTextureFormatAttr(), and also Create vs Get Property Methods for when to use Get vs Create...
static const UsdSchemaType schemaType
Compile time constant representing what kind of schema this class is.
Definition: domeLight.h:91
The base class for all schema types in Usd.
Definition: schemaBase.h:56
Light emitted inward from a distant external environment, such as a sky or IBL light probe...
Definition: domeLight.h:85
Provides a container which may hold any type, and provides introspection and iteration over array typ...
Definition: value.h:182