#usda 1.0
(
    doc ="""Generated from node description file OgnTutorialBundles.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_BundleManipulation" (
        docs="""This is a tutorial node. It exercises functionality for the manipulation of bundle attribute contents."""
    )
    {
        token node:type = "omni.graph.tutorials.BundleManipulation"
        int node:typeVersion = 1

        # 3 attributes
        custom rel inputs:filteredBundle (
            docs="""Bundle whose contents are filtered before being added to the output"""
        )
        custom token[] inputs:filters = [] (
            docs="""List of filter names to be applied to the filteredBundle. Any filter name
            appearing in this list will be applied to members of that bundle and only those
            passing all filters will be added to the output bundle. Legal filter values are
            'big' (arrays of size > 10), 'x' (attributes whose name contains the letter x), 
            and 'int' (attributes whose base type is integer)."""
        )
        custom rel inputs:fullBundle (
            docs="""Bundle whose contents are passed to the output in their entirety"""
        )

        # 1 attribute
        def Output "outputs_combinedBundle" (
            docs="""This is the union of fullBundle and filtered members of the filteredBundle."""
        )
        {
        }
    }
}
