#usda 1.0
(
    doc ="""Generated from node description file OgnTutorialBundleAddAttributesPy.ogn
Contains templates for node types found in that file."""
)

def OmniGraph "TestGraph"
{
    token evaluator:type = "push"
    int2 fileFormatVersion = (1, 3)
    token flatCacheBacking = "Shared"
    token pipelineStage = "pipelineStageSimulation"

    def OmniGraphNode "Template_omni_graph_tutorials_BundleAddAttributesPy" (
        docs="""This is a Python tutorial node. It exercises functionality for adding and removing attributes on output bundles."""
    )
    {
        token node:type = "omni.graph.tutorials.BundleAddAttributesPy"
        int node:typeVersion = 1

        # 4 attributes
        custom token[] inputs:addedAttributeNames = [] (
            docs="""Names for the attribute types to be added. The size of this array must match the size
            of the 'typesToAdd' array to be legal."""
        )
        custom token[] inputs:removedAttributeNames = [] (
            docs="""Names for the attribute types to be removed. Non-existent attributes will be ignored."""
        )
        custom token[] inputs:typesToAdd = [] (
            docs="""List of type descriptions to add to the bundle. The strings in this list correspond to the
            strings that represent the attribute types in the .ogn file (e.g. float[3][], colord[3], bool"""
        )
        custom bool inputs:useBatchedAPI = false (
            docs="""Controls whether or not to used batched APIS for adding/removing attributes"""
        )

        # 1 attribute
        def Output "outputs_bundle" (
            docs="""This is the bundle with all attributes added by compute."""
        )
        {
        }
    }
}
