usdrt/scenegraph/usd/usdSkel/root.h

File members: usdrt/scenegraph/usd/usdSkel/root.h

//
// NVIDIA CORPORATION and its licensors retain all intellectual property
// and proprietary rights in and to this software, related documentation
// and any modifications thereto. Any use, reproduction, disclosure or
// distribution of this software and related documentation without an express
// license agreement from NVIDIA CORPORATION is strictly prohibited.
//
// TODO USD COPYRIGHT AS WELL?
#pragma once

// GENERATED FILE DO NOT EDIT

#include "usdrt/scenegraph/usd/usdGeom/boundable.h"

#include <omni/core/IObject.h>
#include <usdrt/scenegraph/base/tf/token.h>
#include <usdrt/scenegraph/base/vt/array.h>
#include <usdrt/scenegraph/interface/IRtAttribute.h>
#include <usdrt/scenegraph/interface/IRtPrim.h>
#include <usdrt/scenegraph/interface/IRtPrimRange.h>
#include <usdrt/scenegraph/interface/IRtRelationship.h>
#include <usdrt/scenegraph/interface/IRtStage.h>
#include <usdrt/scenegraph/usd/sdf/path.h>
#include <usdrt/scenegraph/usd/sdf/types.h>
#include <usdrt/scenegraph/usd/sdf/valueTypeName.h>
#include <usdrt/scenegraph/usd/usd/attribute.h>
#include <usdrt/scenegraph/usd/usd/common.h>
#include <usdrt/scenegraph/usd/usd/prim.h>
#include <usdrt/scenegraph/usd/usd/timeCode.h>

namespace usdrt
{

// -------------------------------------------------------------------------- //
// SKELROOT                                                                    //
// -------------------------------------------------------------------------- //

class UsdSkelRoot : public UsdGeomBoundable
{

public:
    static const UsdSchemaType schemaType = UsdSchemaType::ConcreteTyped;

    explicit UsdSkelRoot(const UsdPrim& prim = UsdPrim()) : UsdGeomBoundable(prim)
    {
    }

    explicit UsdSkelRoot(const UsdSchemaBase& schemaObj) : UsdGeomBoundable(schemaObj)
    {
    }

    virtual ~UsdSkelRoot()
    {
    }

    static UsdSkelRoot Define(const UsdStageRefPtr& stage, const SdfPath& path);

    static const TfToken _GetStaticTfType();

    operator bool() const;
};

inline const TfToken UsdSkelRoot::_GetStaticTfType()
{
    return TfToken("UsdSkelRoot");
}

/* static */
inline UsdSkelRoot UsdSkelRoot::Define(const UsdStageRefPtr& stage, const SdfPath& path)
{
    if (!stage)
    {
        // TODO error
        return UsdSkelRoot();
    }
    return UsdSkelRoot(stage->DefinePrim(path, _GetStaticTfType()));
}

inline UsdSkelRoot::operator bool() const
{
    return GetPrim().IsA<UsdSkelRoot>();
}

}

// ===================================================================== //
// Feel free to add custom code below this line. It will be preserved by
// the code generator.
//
// Just remember to wrap code in the appropriate delimiters:
// 'namespace usdrt {', '}'.
// ===================================================================== //
// --(BEGIN CUSTOM CODE)--