New item types should always be defined using the envire plugin mechanism because the plugin macros add metadata that is needed for correct serialization and visualization.

Minimal Example

Header File:

Cpp File: