Tutorial Node: Overriding C++ Data Types

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 separate 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.

Installation

To use this node enable omni.graph.tutorials in the Extension Manager.

Inputs

Name

Type

Descripton

Default

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

Name

Type

Descripton

Default

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

Name

Value

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

See the accompanying tutorial and annotated code at Tutorial 24 - Overridden Types