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_TOKENS_H
25 #define USDLUX_TOKENS_H
26 
27 /// \file usdLux/tokens.h
28 
29 // XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
30 //
31 // This is an automatically generated file (by usdGenSchema.py).
32 // Do not hand-edit!
33 //
34 // XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
35 
36 #include "pxr/pxr.h"
37 #include "pxr/usd/usdLux/api.h"
38 #include "pxr/base/tf/staticData.h"
39 #include "pxr/base/tf/token.h"
40 #include <vector>
41 
42 PXR_NAMESPACE_OPEN_SCOPE
43 
44 
45 /// \class UsdLuxTokensType
46 ///
47 /// \link UsdLuxTokens \endlink provides static, efficient
48 /// \link TfToken TfTokens\endlink for use in all public USD API.
49 ///
50 /// These tokens are auto-generated from the module's schema, representing
51 /// property names, for when you need to fetch an attribute or relationship
52 /// directly by name, e.g. UsdPrim::GetAttribute(), in the most efficient
53 /// manner, and allow the compiler to verify that you spelled the name
54 /// correctly.
55 ///
56 /// UsdLuxTokens also contains all of the \em allowedTokens values
57 /// declared for schema builtin attributes of 'token' scene description type.
58 /// Use UsdLuxTokens like so:
59 ///
60 /// \code
61 ///     gprim.GetMyTokenValuedAttr().Set(UsdLuxTokens->angular);
62 /// \endcode
63 struct UsdLuxTokensType {
64     USDLUX_API UsdLuxTokensType();
65     /// \brief "angular"
66     ///
67     /// Possible value for UsdLuxDomeLight::GetTextureFormatAttr()
68     const TfToken angular;
69     /// \brief "automatic"
70     ///
71     /// Possible value for UsdLuxDomeLight::GetTextureFormatAttr(), Default value for UsdLuxDomeLight::GetTextureFormatAttr()
72     const TfToken automatic;
73     /// \brief "collection:filterLink:includeRoot"
74     ///
75     /// UsdLuxLightFilter
76     const TfToken collectionFilterLinkIncludeRoot;
77     /// \brief "collection:lightLink:includeRoot"
78     ///
79     /// UsdLuxLightAPI
80     const TfToken collectionLightLinkIncludeRoot;
81     /// \brief "collection:shadowLink:includeRoot"
82     ///
83     /// UsdLuxLightAPI
84     const TfToken collectionShadowLinkIncludeRoot;
85     /// \brief "consumeAndContinue"
86     ///
87     /// Possible value for UsdLuxListAPI::GetLightListCacheBehaviorAttr()
88     const TfToken consumeAndContinue;
89     /// \brief "consumeAndHalt"
90     ///
91     /// Possible value for UsdLuxListAPI::GetLightListCacheBehaviorAttr()
92     const TfToken consumeAndHalt;
93     /// \brief "cubeMapVerticalCross"
94     ///
95     /// Possible value for UsdLuxDomeLight::GetTextureFormatAttr()
96     const TfToken cubeMapVerticalCross;
97     /// \brief "CylinderLight"
98     ///
99     /// Default value for UsdLuxCylinderLight schema attribute light:shaderId
100     const TfToken cylinderLight;
101     /// \brief "DiskLight"
102     ///
103     /// Default value for UsdLuxDiskLight schema attribute light:shaderId
104     const TfToken diskLight;
105     /// \brief "DistantLight"
106     ///
107     /// Default value for UsdLuxDistantLight schema attribute light:shaderId
108     const TfToken distantLight;
109     /// \brief "DomeLight"
110     ///
111     /// Default value for UsdLuxDomeLight schema attribute light:shaderId
112     const TfToken domeLight;
113     /// \brief "extent"
114     ///
115     /// UsdLuxPortalLight
116     const TfToken extent;
117     /// \brief "filterLink"
118     ///
119     ///  This token represents the collection name to use with UsdCollectionAPI to represent filter-linking of a UsdLuxLightFilter prim.
120     const TfToken filterLink;
121     /// \brief "geometry"
122     ///
123     /// UsdLuxGeometryLight
124     const TfToken geometry;
125     /// \brief "GeometryLight"
126     ///
127     /// Default value for UsdLuxGeometryLight schema attribute light:shaderId
128     const TfToken geometryLight;
129     /// \brief "ignore"
130     ///
131     /// Possible value for UsdLuxListAPI::GetLightListCacheBehaviorAttr()
132     const TfToken ignore;
133     /// \brief "independent"
134     ///
135     /// Possible value for UsdLuxLightAPI::GetMaterialSyncModeAttr()
136     const TfToken independent;
137     /// \brief "inputs:angle"
138     ///
139     /// UsdLuxDistantLight
140     const TfToken inputsAngle;
141     /// \brief "inputs:color"
142     ///
143     /// UsdLuxLightAPI
144     const TfToken inputsColor;
145     /// \brief "inputs:colorTemperature"
146     ///
147     /// UsdLuxLightAPI
148     const TfToken inputsColorTemperature;
149     /// \brief "inputs:diffuse"
150     ///
151     /// UsdLuxLightAPI
152     const TfToken inputsDiffuse;
153     /// \brief "inputs:enableColorTemperature"
154     ///
155     /// UsdLuxLightAPI
156     const TfToken inputsEnableColorTemperature;
157     /// \brief "inputs:exposure"
158     ///
159     /// UsdLuxLightAPI
160     const TfToken inputsExposure;
161     /// \brief "inputs:height"
162     ///
163     /// UsdLuxRectLight
164     const TfToken inputsHeight;
165     /// \brief "inputs:intensity"
166     ///
167     /// UsdLuxDistantLight, UsdLuxLightAPI
168     const TfToken inputsIntensity;
169     /// \brief "inputs:length"
170     ///
171     /// UsdLuxCylinderLight
172     const TfToken inputsLength;
173     /// \brief "inputs:normalize"
174     ///
175     /// UsdLuxLightAPI
176     const TfToken inputsNormalize;
177     /// \brief "inputs:radius"
178     ///
179     /// UsdLuxCylinderLight, UsdLuxSphereLight, UsdLuxDiskLight
180     const TfToken inputsRadius;
181     /// \brief "inputs:shadow:color"
182     ///
183     /// UsdLuxShadowAPI
184     const TfToken inputsShadowColor;
185     /// \brief "inputs:shadow:distance"
186     ///
187     /// UsdLuxShadowAPI
188     const TfToken inputsShadowDistance;
189     /// \brief "inputs:shadow:enable"
190     ///
191     /// UsdLuxShadowAPI
192     const TfToken inputsShadowEnable;
193     /// \brief "inputs:shadow:falloff"
194     ///
195     /// UsdLuxShadowAPI
196     const TfToken inputsShadowFalloff;
197     /// \brief "inputs:shadow:falloffGamma"
198     ///
199     /// UsdLuxShadowAPI
200     const TfToken inputsShadowFalloffGamma;
201     /// \brief "inputs:shaping:cone:angle"
202     ///
203     /// UsdLuxShapingAPI
204     const TfToken inputsShapingConeAngle;
205     /// \brief "inputs:shaping:cone:softness"
206     ///
207     /// UsdLuxShapingAPI
208     const TfToken inputsShapingConeSoftness;
209     /// \brief "inputs:shaping:focus"
210     ///
211     /// UsdLuxShapingAPI
212     const TfToken inputsShapingFocus;
213     /// \brief "inputs:shaping:focusTint"
214     ///
215     /// UsdLuxShapingAPI
216     const TfToken inputsShapingFocusTint;
217     /// \brief "inputs:shaping:ies:angleScale"
218     ///
219     /// UsdLuxShapingAPI
220     const TfToken inputsShapingIesAngleScale;
221     /// \brief "inputs:shaping:ies:file"
222     ///
223     /// UsdLuxShapingAPI
224     const TfToken inputsShapingIesFile;
225     /// \brief "inputs:shaping:ies:normalize"
226     ///
227     /// UsdLuxShapingAPI
228     const TfToken inputsShapingIesNormalize;
229     /// \brief "inputs:specular"
230     ///
231     /// UsdLuxLightAPI
232     const TfToken inputsSpecular;
233     /// \brief "inputs:texture:file"
234     ///
235     /// UsdLuxDomeLight, UsdLuxRectLight
236     const TfToken inputsTextureFile;
237     /// \brief "inputs:texture:format"
238     ///
239     /// UsdLuxDomeLight
240     const TfToken inputsTextureFormat;
241     /// \brief "inputs:width"
242     ///
243     /// UsdLuxRectLight
244     const TfToken inputsWidth;
245     /// \brief "latlong"
246     ///
247     /// Possible value for UsdLuxDomeLight::GetTextureFormatAttr()
248     const TfToken latlong;
249     /// \brief "light:filters"
250     ///
251     /// UsdLuxLightAPI
252     const TfToken lightFilters;
253     /// \brief "lightFilter:shaderId"
254     ///
255     /// UsdLuxLightFilter
256     const TfToken lightFilterShaderId;
257     /// \brief "lightLink"
258     ///
259     ///  This token represents the collection name to use with UsdCollectionAPI to represent light-linking of a prim with an applied UsdLuxLightAPI.
260     const TfToken lightLink;
261     /// \brief "lightList"
262     ///
263     /// UsdLuxListAPI
264     const TfToken lightList;
265     /// \brief "lightList:cacheBehavior"
266     ///
267     /// UsdLuxListAPI
268     const TfToken lightListCacheBehavior;
269     /// \brief "light:materialSyncMode"
270     ///
271     /// UsdLuxVolumeLightAPI, UsdLuxMeshLightAPI, UsdLuxLightAPI
272     const TfToken lightMaterialSyncMode;
273     /// \brief "light:shaderId"
274     ///
275     /// UsdLuxPortalLight, UsdLuxDomeLight, UsdLuxGeometryLight, UsdLuxCylinderLight, UsdLuxSphereLight, UsdLuxRectLight, UsdLuxDiskLight, UsdLuxDistantLight, UsdLuxVolumeLightAPI, UsdLuxMeshLightAPI, UsdLuxLightAPI
276     const TfToken lightShaderId;
277     /// \brief "materialGlowTintsLight"
278     ///
279     /// Default value for UsdLuxVolumeLightAPI schema attribute light:materialSyncMode, Default value for UsdLuxMeshLightAPI schema attribute light:materialSyncMode, Possible value for UsdLuxLightAPI::GetMaterialSyncModeAttr()
280     const TfToken materialGlowTintsLight;
281     /// \brief "MeshLight"
282     ///
283     /// Default value for UsdLuxMeshLightAPI schema attribute light:shaderId
284     const TfToken meshLight;
285     /// \brief "mirroredBall"
286     ///
287     /// Possible value for UsdLuxDomeLight::GetTextureFormatAttr()
288     const TfToken mirroredBall;
289     /// \brief "noMaterialResponse"
290     ///
291     /// Possible value for UsdLuxLightAPI::GetMaterialSyncModeAttr(), Default value for UsdLuxLightAPI::GetMaterialSyncModeAttr()
292     const TfToken noMaterialResponse;
293     /// \brief "orientToStageUpAxis"
294     ///
295     ///  This token represents the suffix for a UsdGeomXformOp used to orient a light with the stage's up axis.
296     const TfToken orientToStageUpAxis;
297     /// \brief "PortalLight"
298     ///
299     /// Default value for UsdLuxPortalLight schema attribute light:shaderId
300     const TfToken portalLight;
301     /// \brief "portals"
302     ///
303     /// UsdLuxDomeLight
304     const TfToken portals;
305     /// \brief "RectLight"
306     ///
307     /// Default value for UsdLuxRectLight schema attribute light:shaderId
308     const TfToken rectLight;
309     /// \brief "shadowLink"
310     ///
311     ///  This token represents the collection name to use with UsdCollectionAPI to represent shadow-linking of a prim with an applied UsdLuxLightAPI.
312     const TfToken shadowLink;
313     /// \brief "SphereLight"
314     ///
315     /// Default value for UsdLuxSphereLight schema attribute light:shaderId
316     const TfToken sphereLight;
317     /// \brief "treatAsLine"
318     ///
319     /// UsdLuxCylinderLight
320     const TfToken treatAsLine;
321     /// \brief "treatAsPoint"
322     ///
323     /// UsdLuxSphereLight
324     const TfToken treatAsPoint;
325     /// \brief "VolumeLight"
326     ///
327     /// Default value for UsdLuxVolumeLightAPI schema attribute light:shaderId
328     const TfToken volumeLight;
329     /// A vector of all of the tokens listed above.
330     const std::vector<TfToken> allTokens;
331 };
332 
333 /// \var UsdLuxTokens
334 ///
335 /// A global variable with static, efficient \link TfToken TfTokens\endlink
336 /// for use in all public USD API.  \sa UsdLuxTokensType
337 extern USDLUX_API TfStaticData<UsdLuxTokensType> UsdLuxTokens;
338 
339 PXR_NAMESPACE_CLOSE_SCOPE
340 
341 #endif
342