// // Copyright 2016 Pixar // // Licensed under the Apache License, Version 2.0 (the "Apache License") // with the following modification; you may not use this file except in // compliance with the Apache License and the following modification to it: // Section 6. Trademarks. is deleted and replaced with: // // 6. Trademarks. This License does not grant permission to use the trade // names, trademarks, service marks, or product names of the Licensor // and its affiliates, except as required to comply with Section 4(c) of // the License and to reproduce the content of the NOTICE file. // // You may obtain a copy of the Apache License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the Apache License with the above modification is // distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY // KIND, either express or implied. See the Apache License for the specific // language governing permissions and limitations under the Apache License. // #ifndef USDRI_GENERATED_PXRENVDAYLIGHT_H #define USDRI_GENERATED_PXRENVDAYLIGHT_H /// \file usdRi/pxrEnvDayLight.h #include "pxr/pxr.h" #include "pxr/usd/usdRi/api.h" #include "pxr/usd/usdLux/light.h" #include "pxr/usd/usd/prim.h" #include "pxr/usd/usd/stage.h" #include "pxr/usd/usdRi/tokens.h" #include "pxr/base/vt/value.h" #include "pxr/base/gf/vec3d.h" #include "pxr/base/gf/vec3f.h" #include "pxr/base/gf/matrix4d.h" #include "pxr/base/tf/token.h" #include "pxr/base/tf/type.h" PXR_NAMESPACE_OPEN_SCOPE class SdfAssetPath; // -------------------------------------------------------------------------- // // PXRENVDAYLIGHT // // -------------------------------------------------------------------------- // /// \class UsdRiPxrEnvDayLight /// /// \deprecated This schema will be replaced in a future release. /// class UsdRiPxrEnvDayLight : public UsdLuxLight { public: /// Compile time constant representing what kind of schema this class is. /// /// \sa UsdSchemaType static const UsdSchemaType schemaType = UsdSchemaType::ConcreteTyped; /// Construct a UsdRiPxrEnvDayLight on UsdPrim \p prim . /// Equivalent to UsdRiPxrEnvDayLight::Get(prim.GetStage(), prim.GetPath()) /// for a \em valid \p prim, but will not immediately throw an error for /// an invalid \p prim explicit UsdRiPxrEnvDayLight(const UsdPrim& prim=UsdPrim()) : UsdLuxLight(prim) { } /// Construct a UsdRiPxrEnvDayLight on the prim held by \p schemaObj . /// Should be preferred over UsdRiPxrEnvDayLight(schemaObj.GetPrim()), /// as it preserves SchemaBase state. explicit UsdRiPxrEnvDayLight(const UsdSchemaBase& schemaObj) : UsdLuxLight(schemaObj) { } /// Destructor. USDRI_API virtual ~UsdRiPxrEnvDayLight(); /// Return a vector of names of all pre-declared attributes for this schema /// class and all its ancestor classes. Does not include attributes that /// may be authored by custom/extended methods of the schemas involved. USDRI_API static const TfTokenVector & GetSchemaAttributeNames(bool includeInherited=true); /// Return a UsdRiPxrEnvDayLight holding the prim adhering to this /// schema at \p path on \p stage. If no prim exists at \p path on /// \p stage, or if the prim at that path does not adhere to this schema, /// return an invalid schema object. This is shorthand for the following: /// /// \code /// UsdRiPxrEnvDayLight(stage->GetPrimAtPath(path)); /// \endcode /// USDRI_API static UsdRiPxrEnvDayLight Get(const UsdStagePtr &stage, const SdfPath &path); /// Attempt to ensure a \a UsdPrim adhering to this schema at \p path /// is defined (according to UsdPrim::IsDefined()) on this stage. /// /// If a prim adhering to this schema at \p path is already defined on this /// stage, return that prim. Otherwise author an \a SdfPrimSpec with /// \a specifier == \a SdfSpecifierDef and this schema's prim type name for /// the prim at \p path at the current EditTarget. Author \a SdfPrimSpec s /// with \p specifier == \a SdfSpecifierDef and empty typeName at the /// current EditTarget for any nonexistent, or existing but not \a Defined /// ancestors. /// /// The given \a path must be an absolute prim path that does not contain /// any variant selections. /// /// If it is impossible to author any of the necessary PrimSpecs, (for /// example, in case \a path cannot map to the current UsdEditTarget's /// namespace) issue an error and return an invalid \a UsdPrim. /// /// Note that this method may return a defined prim whose typeName does not /// specify this schema class, in case a stronger typeName opinion overrides /// the opinion at the current EditTarget. /// USDRI_API static UsdRiPxrEnvDayLight Define(const UsdStagePtr &stage, const SdfPath &path); protected: /// Returns the type of schema this class belongs to. /// /// \sa UsdSchemaType USDRI_API UsdSchemaType _GetSchemaType() const override; private: // needs to invoke _GetStaticTfType. friend class UsdSchemaRegistry; USDRI_API static const TfType &_GetStaticTfType(); static bool _IsTypedSchema(); // override SchemaBase virtuals. USDRI_API const TfType &_GetTfType() const override; public: // --------------------------------------------------------------------- // // DAY // --------------------------------------------------------------------- // /// day: Day of the month, 1 through 31. /// This is ignored if month is 0. /// /// | || /// | -- | -- | /// | Declaration | `int day = 1` | /// | C++ Type | int | /// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Int | USDRI_API UsdAttribute GetDayAttr() const; /// See GetDayAttr(), and also /// \ref Usd_Create_Or_Get_Property for when to use Get vs Create. /// If specified, author \p defaultValue as the attribute's default, /// sparsely (when it makes sense to do so) if \p writeSparsely is \c true - /// the default for \p writeSparsely is \c false. USDRI_API UsdAttribute CreateDayAttr(VtValue const &defaultValue = VtValue(), bool writeSparsely=false) const; public: // --------------------------------------------------------------------- // // HAZINESS // --------------------------------------------------------------------- // /// haziness: The turbidity of the sky. The lower limit of the /// model is 1.7 for an exceptionally clear sky, and 10, for an /// nversion, is the upper limit. /// /// | || /// | -- | -- | /// | Declaration | `float haziness = 2` | /// | C++ Type | float | /// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Float | USDRI_API UsdAttribute GetHazinessAttr() const; /// See GetHazinessAttr(), and also /// \ref Usd_Create_Or_Get_Property for when to use Get vs Create. /// If specified, author \p defaultValue as the attribute's default, /// sparsely (when it makes sense to do so) if \p writeSparsely is \c true - /// the default for \p writeSparsely is \c false. USDRI_API UsdAttribute CreateHazinessAttr(VtValue const &defaultValue = VtValue(), bool writeSparsely=false) const; public: // --------------------------------------------------------------------- // // HOUR // --------------------------------------------------------------------- // /// hour: Hours since midnight, local standard time. May be /// fractional to include minutes and seconds. If daylight saving time /// is in effect, subtract 1 to correct to standard time. This is /// ignored if month is 0. /// /// | || /// | -- | -- | /// | Declaration | `float hour = 14.633333` | /// | C++ Type | float | /// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Float | USDRI_API UsdAttribute GetHourAttr() const; /// See GetHourAttr(), and also /// \ref Usd_Create_Or_Get_Property for when to use Get vs Create. /// If specified, author \p defaultValue as the attribute's default, /// sparsely (when it makes sense to do so) if \p writeSparsely is \c true - /// the default for \p writeSparsely is \c false. USDRI_API UsdAttribute CreateHourAttr(VtValue const &defaultValue = VtValue(), bool writeSparsely=false) const; public: // --------------------------------------------------------------------- // // LATITUDE // --------------------------------------------------------------------- // /// latitude: Latitude in degrees. Positive for north, negative /// for south. Ranges frmo -90 to +90 degrees. This is ignored if /// month is 0. /// /// | || /// | -- | -- | /// | Declaration | `float latitude = 47.602` | /// | C++ Type | float | /// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Float | USDRI_API UsdAttribute GetLatitudeAttr() const; /// See GetLatitudeAttr(), and also /// \ref Usd_Create_Or_Get_Property for when to use Get vs Create. /// If specified, author \p defaultValue as the attribute's default, /// sparsely (when it makes sense to do so) if \p writeSparsely is \c true - /// the default for \p writeSparsely is \c false. USDRI_API UsdAttribute CreateLatitudeAttr(VtValue const &defaultValue = VtValue(), bool writeSparsely=false) const; public: // --------------------------------------------------------------------- // // LONGITUDE // --------------------------------------------------------------------- // /// longitude: Longitude in degrees. Positive for east, negative /// for west. Ranges frmo -180 to +180 degrees. This is ignored /// if month is 0. /// /// | || /// | -- | -- | /// | Declaration | `float longitude = -122.332` | /// | C++ Type | float | /// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Float | USDRI_API UsdAttribute GetLongitudeAttr() const; /// See GetLongitudeAttr(), and also /// \ref Usd_Create_Or_Get_Property for when to use Get vs Create. /// If specified, author \p defaultValue as the attribute's default, /// sparsely (when it makes sense to do so) if \p writeSparsely is \c true - /// the default for \p writeSparsely is \c false. USDRI_API UsdAttribute CreateLongitudeAttr(VtValue const &defaultValue = VtValue(), bool writeSparsely=false) const; public: // --------------------------------------------------------------------- // // MONTH // --------------------------------------------------------------------- // /// month: Month of the year, 1 through 12. The default, /// 0, means to use the explicitly given sun direction instead of /// automatically computing it. /// /// | || /// | -- | -- | /// | Declaration | `int month = 0` | /// | C++ Type | int | /// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Int | USDRI_API UsdAttribute GetMonthAttr() const; /// See GetMonthAttr(), and also /// \ref Usd_Create_Or_Get_Property for when to use Get vs Create. /// If specified, author \p defaultValue as the attribute's default, /// sparsely (when it makes sense to do so) if \p writeSparsely is \c true - /// the default for \p writeSparsely is \c false. USDRI_API UsdAttribute CreateMonthAttr(VtValue const &defaultValue = VtValue(), bool writeSparsely=false) const; public: // --------------------------------------------------------------------- // // SKYTINT // --------------------------------------------------------------------- // /// skyTint: Tweak the sky's contribution and color. The /// default, white (1,1,1), gives results based on measured /// physical values. /// /// | || /// | -- | -- | /// | Declaration | `color3f skyTint = (1, 1, 1)` | /// | C++ Type | GfVec3f | /// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Color3f | USDRI_API UsdAttribute GetSkyTintAttr() const; /// See GetSkyTintAttr(), and also /// \ref Usd_Create_Or_Get_Property for when to use Get vs Create. /// If specified, author \p defaultValue as the attribute's default, /// sparsely (when it makes sense to do so) if \p writeSparsely is \c true - /// the default for \p writeSparsely is \c false. USDRI_API UsdAttribute CreateSkyTintAttr(VtValue const &defaultValue = VtValue(), bool writeSparsely=false) const; public: // --------------------------------------------------------------------- // // SUNDIRECTION // --------------------------------------------------------------------- // /// sunDirection: The *apparent* direction towards the center /// of the sun. The zenith is at +Y (for noon light) and the horizon /// is in the XZ plane (for sunrise/set). Note that the Y component /// must non- negative. Ignored if a month is given. /// /// | || /// | -- | -- | /// | Declaration | `vector3f sunDirection = (0, 0, 1)` | /// | C++ Type | GfVec3f | /// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Vector3f | USDRI_API UsdAttribute GetSunDirectionAttr() const; /// See GetSunDirectionAttr(), and also /// \ref Usd_Create_Or_Get_Property for when to use Get vs Create. /// If specified, author \p defaultValue as the attribute's default, /// sparsely (when it makes sense to do so) if \p writeSparsely is \c true - /// the default for \p writeSparsely is \c false. USDRI_API UsdAttribute CreateSunDirectionAttr(VtValue const &defaultValue = VtValue(), bool writeSparsely=false) const; public: // --------------------------------------------------------------------- // // SUNSIZE // --------------------------------------------------------------------- // /// sunSize: Scale the apparent size of the sun in the sky. /// Leave at 1 for a realistic sun size with an 0.55 degree /// angular diameter. /// /// | || /// | -- | -- | /// | Declaration | `float sunSize = 1` | /// | C++ Type | float | /// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Float | USDRI_API UsdAttribute GetSunSizeAttr() const; /// See GetSunSizeAttr(), and also /// \ref Usd_Create_Or_Get_Property for when to use Get vs Create. /// If specified, author \p defaultValue as the attribute's default, /// sparsely (when it makes sense to do so) if \p writeSparsely is \c true - /// the default for \p writeSparsely is \c false. USDRI_API UsdAttribute CreateSunSizeAttr(VtValue const &defaultValue = VtValue(), bool writeSparsely=false) const; public: // --------------------------------------------------------------------- // // SUNTINT // --------------------------------------------------------------------- // /// sunTint: Tweak the sun's contribution and color. The /// default, white (1,1,1), gives results based on measured /// physical values. Setting this to black removes the sun /// contribution. /// /// | || /// | -- | -- | /// | Declaration | `color3f sunTint = (1, 1, 1)` | /// | C++ Type | GfVec3f | /// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Color3f | USDRI_API UsdAttribute GetSunTintAttr() const; /// See GetSunTintAttr(), and also /// \ref Usd_Create_Or_Get_Property for when to use Get vs Create. /// If specified, author \p defaultValue as the attribute's default, /// sparsely (when it makes sense to do so) if \p writeSparsely is \c true - /// the default for \p writeSparsely is \c false. USDRI_API UsdAttribute CreateSunTintAttr(VtValue const &defaultValue = VtValue(), bool writeSparsely=false) const; public: // --------------------------------------------------------------------- // // YEAR // --------------------------------------------------------------------- // /// year: Four-digit year. This is ignored if month is 0. /// /// | || /// | -- | -- | /// | Declaration | `int year = 2015` | /// | C++ Type | int | /// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Int | USDRI_API UsdAttribute GetYearAttr() const; /// See GetYearAttr(), and also /// \ref Usd_Create_Or_Get_Property for when to use Get vs Create. /// If specified, author \p defaultValue as the attribute's default, /// sparsely (when it makes sense to do so) if \p writeSparsely is \c true - /// the default for \p writeSparsely is \c false. USDRI_API UsdAttribute CreateYearAttr(VtValue const &defaultValue = VtValue(), bool writeSparsely=false) const; public: // --------------------------------------------------------------------- // // ZONE // --------------------------------------------------------------------- // /// zone: Standard time zone offset from GMT/UTC in hours. /// Positive for east, negative for west. For example, this would /// be -8 for Pacific time. This is ignored if month is 0. /// /// | || /// | -- | -- | /// | Declaration | `float zone = -8` | /// | C++ Type | float | /// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Float | USDRI_API UsdAttribute GetZoneAttr() const; /// See GetZoneAttr(), and also /// \ref Usd_Create_Or_Get_Property for when to use Get vs Create. /// If specified, author \p defaultValue as the attribute's default, /// sparsely (when it makes sense to do so) if \p writeSparsely is \c true - /// the default for \p writeSparsely is \c false. USDRI_API UsdAttribute CreateZoneAttr(VtValue const &defaultValue = VtValue(), bool writeSparsely=false) const; public: // ===================================================================== // // Feel free to add custom code below this line, it will be preserved by // the code generator. // // Just remember to: // - Close the class declaration with }; // - Close the namespace with PXR_NAMESPACE_CLOSE_SCOPE // - Close the include guard with #endif // ===================================================================== // // --(BEGIN CUSTOM CODE)-- }; PXR_NAMESPACE_CLOSE_SCOPE #endif