.. _omni_graph_tutorials_OverrideType_1:

.. _omni_graph_tutorials_OverrideType:

.. ================================================================================
.. THIS PAGE IS AUTO-GENERATED. DO NOT MANUALLY EDIT.
.. ================================================================================

:orphan:

.. meta::
    :title: Tutorial Node: Overriding C++ Data Types
    :keywords: lang-en omnigraph node tutorials threadsafe tutorials override-type


Tutorial Node: Overriding C++ Data Types
========================================

.. <description>

This is a tutorial node. It has an input and output of type float[3], an input and output of type double[3], and a type override specification that lets the node use Carbonite types for the generated data on the float[3] attributes only. Ordinarily all of the types would be defined in a seperate configuration file so that it can be shared for a project. In that case the type definition build flag would also be used so that this information does not have to be embedded in every .ogn file in the project. It is placed directly in the file here solely for instructional purposes.  The compute is just a rotation of components from x->y, y->z, and z->x, for each input type.

.. </description>


Installation
------------

To use this node enable :ref:`omni.graph.tutorials<ext_omni_graph_tutorials>` in the Extension Manager.


Inputs
------
.. csv-table::
    :header: "Name", "Type", "Descripton", "Default"
    :widths: 20, 20, 50, 10

    "Input value with a standard double type (*inputs:data*)", "``double[3]``", "The value to rotate", "[0.0, 0.0, 0.0]"
    "Input value with a modified float type (*inputs:typedData*)", "``float[3]``", "The value to rotate", "[0.0, 0.0, 0.0]"


Outputs
-------
.. csv-table::
    :header: "Name", "Type", "Descripton", "Default"
    :widths: 20, 20, 50, 10

    "Output value with a standard double type (*outputs:data*)", "``double[3]``", "The rotated version of inputs::data", "None"
    "Output value with a modified float type (*outputs:typedData*)", "``float[3]``", "The rotated version of inputs::typedData", "None"


Metadata
--------
.. csv-table::
    :header: "Name", "Value"
    :widths: 30,70

    "Unique ID", "omni.graph.tutorials.OverrideType"
    "Version", "1"
    "Extension", "omni.graph.tutorials"
    "Icon", "ogn/icons/omni.graph.tutorials.OverrideType.svg"
    "Has State?", "False"
    "Implementation Language", "C++"
    "Default Memory Type", "cpu"
    "Generated Code Exclusions", "None"
    "uiName", "Tutorial Node: Overriding C++ Data Types"
    "Categories", "tutorials"
    "Generated Class Name", "OgnTutorialOverrideTypeDatabase"
    "Python Module", "omni.graph.tutorials"

