getAttributeMetadataNamesAndTypes#

omni::core::Result getAttributeMetadataNamesAndTypes(
omni::graph::core::NameToken attribute,
omni::graph::core::NameToken *const fieldNames,
omni::graph::core::Type *const fieldTypes,
size_t fieldCount,
) noexcept#

Get the names and types of all attribute metadata fields in the attribute.

This method operates in two modes: query mode or get mode.

Query mode is enabled when fieldNames and fieldTypes are nullptr. When in this mode, *fieldCount will be populated with the number of metadata fields in the attribute.

Get mode is enabled when fieldNames or fieldTypes is not nullptr. Upon entering the function, *fieldCount stores the number of entries in fieldNames and fieldTypes.

In Get mode fieldNames are not nullptr, fieldNames array is populated with field names. In Get mode fieldTypes are not nullptr, fieldTypes array is populated with field types.

Parameters:
  • attribute – Name of the attribute.

  • fieldNames – Output field names in the attribute.

  • fieldTypes – Output field types in the attribute.

  • fieldCount – must not be nullptr in both modes.

Returns:

Success if executed successfully, Fail for unsuccessful execution, InvalidArgument if arguments are invalid.