omni::graph::core::INodeCategories_abi
Defined in omni/graph/core/INodeCategories.h
Inheritance Relationships
Base Type
public omni::core::Inherits< omni::core::IObject, OMNI_TYPE_ID("omni.graph.core.INodeCategories")>
-
class INodeCategories_abi : public omni::core::Inherits<omni::core::IObject, OMNI_TYPE_ID("omni.graph.core.INodeCategories")>
Interface to the list of categories that a node type can belong to.
Protected Functions
-
virtual size_t getCategoryCount_abi() noexcept = 0
Get the number of categories available.
- Returns
Count of fixed category types
-
virtual bool getCategories_abi(char const **categoryNameBuffer, char const **categoryDescriptionBuffer, size_t bufferSize) noexcept = 0
Get the list of available categories and their descriptions.
The caller is responsible for allocating and destroying buffers large enough to hold “bufferSize” results. If bufferSize > getCategoryCount() then the entries at the ends of the buffers will be filled with nullptr.
- Parameters
categoryNameBuffer – [in] List of category names
categoryDescriptionBuffer – [in] List of category descriptions corresponding to the names
bufferSize – [in] Number of entries to fill in the buffers
- Returns
true if the category buffer was successfully filled and the bufferSize matched the category count
-
virtual bool defineCategory_abi(char const *categoryName, char const *categoryDescription) noexcept = 0
Define a new category.
- Parameters
categoryName – [in] Name of the new category
categoryDescription – [in] Description of the category
- Returns
false if there was already a category with the given name
-
virtual bool removeCategory_abi(char const *categoryName) noexcept = 0
Remove an existing category, mainly to manage the ones created by a node type for itself.
- Parameters
categoryName – [in] Name of the category to remove
- Returns
false if there was no category with the given name
-
virtual size_t getCategoryCount_abi() noexcept = 0