Extension: omni.kit.tagging-0.1.10 |
Documentation Generated: Sep 22, 2025 |
Overview#
The Tagging Plugin connects the Omniverse Kit to a tagging service so that client applications can manage tags on various URLs asynchronously. It provides a client context for establishing communication with the tagging service, performing tag modifications, and retrieving tag data. The extension exposes both synchronous and asynchronous APIs to perform tagging actions while handling related network transport issues.
Concepts#
Asynchronous Tagging: By using the TaggingClientContextAsync, developers can manage connections and perform tag operations (like add, update, or remove) without blocking the main thread.
Delegate Pattern: The OmniKitTaggingDelegate allows users to handle completed tagging events, such as when new tags have been received for a URL.
Functionality#
Tag Modification: Methods such as tags_action and tags_action_async enable the modification of tags for specific URLs, allowing both immediate and deferred operations.
Tag Retrieval: The get_tags and get_tags_async functions take care of fetching tags for a list of URLs and facilitate processing through callbacks and delegate methods.
Tag Management Utilities: Helper functions like pack_tag, validate_tag, and ordered_tag_list support tag formatting, validation, and organization.
Relationships#
Dependencies: The extension depends on components like omni.client and omni.kit.pip_archive, indicating it leverages centralized client functionality and pip-based archive management within the Omniverse Kit ecosystem.
Test Module: The accompanying test module (omni.kit.tagging.tests) reinforces the functionality with relevant checks for expected behavior.
Usage Summary#
Developers integrate this plugin by obtaining the static instance via get_tagging_instance and then using its API to perform tagging actions on URLs. With its asynchronous design and delegate-based event handling, the Tagging Plugin fits naturally into applications that require background processing of tagging tasks without interrupting the main workflow.