omni/connect/pybind/UsdBindings.h

File members: omni/connect/pybind/UsdBindings.h

// SPDX-FileCopyrightText: Copyright (c) 2022-2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
// SPDX-License-Identifier: LicenseRef-NvidiaProprietary
//
// NVIDIA CORPORATION, its affiliates and licensors retain all intellectual
// property and proprietary rights in and to this material, related
// documentation and any modifications thereto. Any use, reproduction,
// disclosure or distribution of this material and related documentation
// without an express license agreement from NVIDIA CORPORATION or
// its affiliates is strictly prohibited.

#pragma once

#include "BindingUtils.h"

#include <pxr/base/gf/camera.h>
#include <pxr/base/gf/transform.h>
#include <pxr/usd/sdf/assetPath.h>
#include <pxr/usd/sdf/layer.h>
#include <pxr/usd/sdf/path.h>
#include <pxr/usd/sdf/valueTypeName.h>
#include <pxr/usd/usd/attribute.h>
#include <pxr/usd/usd/prim.h>
#include <pxr/usd/usdGeom/basisCurves.h>
#include <pxr/usd/usdGeom/camera.h>
#include <pxr/usd/usdGeom/mesh.h>
#include <pxr/usd/usdGeom/points.h>
#include <pxr/usd/usdGeom/primvar.h>
#include <pxr/usd/usdGeom/xform.h>
#include <pxr/usd/usdLux/distantLight.h>
#include <pxr/usd/usdLux/domeLight.h>
#include <pxr/usd/usdLux/rectLight.h>
#include <pxr/usd/usdLux/shapingAPI.h>
#include <pxr/usd/usdLux/sphereLight.h>
#include <pxr/usd/usdShade/material.h>
#include <pxr/usd/usdShade/shader.h>

namespace pybind11::detail
{

PYBOOST11_TYPE_CASTER(pxr::GfCamera, _("pxr.Gf.Camera"));
PYBOOST11_TYPE_CASTER(pxr::GfVec3d, _("pxr.Gf.Vec3d"));
PYBOOST11_TYPE_CASTER(pxr::GfVec3f, _("pxr.Gf.Vec3f"));
PYBOOST11_TYPE_CASTER(pxr::GfVec3i, _("pxr.Gf.Vec3i"));
PYBOOST11_TYPE_CASTER(pxr::GfMatrix4d, _("pxr.Gf.Matrix4d"));
PYBOOST11_TYPE_CASTER(pxr::GfTransform, _("pxr.Gf.Transform"));
PYBOOST11_TYPE_CASTER(pxr::SdfAssetPath, _("pxr.Sdf.AssetPath"));
PYBOOST11_TYPE_CASTER(pxr::SdfLayerHandle, _("pxr.Sdf.Layer"));
PYBOOST11_TYPE_CASTER(pxr::SdfPath, _("pxr.Sdf.Path"));
PYBOOST11_TYPE_CASTER(pxr::SdfValueTypeName, _("pxr.Sdf.ValueTypeName"));
PYBOOST11_TYPE_CASTER(pxr::TfToken, _("str"));
PYBOOST11_TYPE_CASTER(pxr::TfTokenVector, _("list(str)"));
PYBOOST11_TYPE_CASTER(pxr::UsdAttribute, _("pxr.Usd.Attribute"));
PYBOOST11_TYPE_CASTER(pxr::UsdGeomBasisCurves, _("pxr.UsdGeom.BasisCurves"));
PYBOOST11_TYPE_CASTER(pxr::UsdGeomCamera, _("pxr.UsdGeom.Camera"));
PYBOOST11_TYPE_CASTER(pxr::UsdGeomMesh, _("pxr.UsdGeom.Mesh"));
PYBOOST11_TYPE_CASTER(pxr::UsdGeomPoints, _("pxr.UsdGeom.Points"));
PYBOOST11_TYPE_CASTER(pxr::UsdGeomPrimvar, _("pxr.UsdGeom.Primvar"));
PYBOOST11_TYPE_CASTER(pxr::UsdGeomXform, _("pxr.UsdGeom.Xform"));
PYBOOST11_TYPE_CASTER(pxr::UsdLuxDistantLight, _("pxr.UsdLux.DistantLight"));
PYBOOST11_TYPE_CASTER(pxr::UsdLuxDomeLight, _("pxr.UsdLux.DomeLight"));
#if PXR_VERSION >= 2111
PYBOOST11_TYPE_CASTER(pxr::UsdLuxLightAPI, _("pxr.UsdLux.LightAPI"));
#else
PYBOOST11_TYPE_CASTER(pxr::UsdLuxLight, _("pxr.UsdLux.Light"));
#endif // PXR_VERSION >= 2111
PYBOOST11_TYPE_CASTER(pxr::UsdLuxRectLight, _("pxr.UsdLux.RectLight"));
PYBOOST11_TYPE_CASTER(pxr::UsdLuxSphereLight, _("pxr.UsdLux.SphereLight"));
PYBOOST11_TYPE_CASTER(pxr::UsdLuxShapingAPI, _("pxr.UsdLux.ShapingAPI"));
PYBOOST11_TYPE_CASTER(pxr::UsdPrim, _("pxr.Usd.Prim"));
PYBOOST11_TYPE_CASTER(pxr::UsdStagePtr, _("pxr.Usd.Stage"));
PYBOOST11_TYPE_CASTER(pxr::UsdTimeCode, _("pxr.Usd.TimeCode"));
PYBOOST11_TYPE_CASTER(pxr::VtFloatArray, _("pxr.Vt.FloatArray"));
PYBOOST11_TYPE_CASTER(pxr::VtIntArray, _("pxr.Vt.IntArray"));
PYBOOST11_TYPE_CASTER(pxr::VtInt64Array, _("pxr.Vt.Int64Array"));
PYBOOST11_TYPE_CASTER(pxr::VtStringArray, _("pxr.Vt.StringArray"));
PYBOOST11_TYPE_CASTER(pxr::VtTokenArray, _("pxr.Vt.TokenArray"));
PYBOOST11_TYPE_CASTER(pxr::VtVec3fArray, _("pxr.Vt.Vec3fArray"));
PYBOOST11_TYPE_CASTER(pxr::VtVec2fArray, _("pxr.Vt.Vec2fArray"));
PYBOOST11_TYPE_CASTER(pxr::UsdShadeInput, _("pxr.UsdShade.Input"));
PYBOOST11_TYPE_CASTER(pxr::UsdShadeMaterial, _("pxr.UsdShade.Material"));
PYBOOST11_TYPE_CASTER(pxr::UsdShadeShader, _("pxr.UsdShade.Shader"));
PYBOOST11_TYPE_CASTER(pxr::VtValue, _("pxr.Vt.Value"));

} // namespace pybind11::detail