Python API#
usd_profiles_nvidia API#
- class usd_profiles_nvidia.CapabilityGraph#
Capability DAG DTO with query methods.
Load from
capabilities.jsondata or files, then query predecessors, validators, requirements, and profiles.- filter_by_namespace(
- prefix: str,
- *,
- include_predecessors: bool = False,
Return capability ids matching the given namespace prefix.
- Parameters:
prefix – Dot-separated prefix (e.g.
"com.nvidia.simready").include_predecessors – If True, also include transitive predecessors of matching capabilities.
- Returns:
Sorted list of matching capability ids.
- get_all_capabilities() list[str]#
Return all registered capability ids, sorted.
- get_all_profiles() list[str]#
Return all registered profile ids, sorted.
- get_all_requirements() list[Requirement]#
Return all requirements across all nodes, deduplicated by code.
- Returns:
List of requirements, sorted by code.
- get_all_validators_for_capability(
- id: str,
Return all validators for id and its transitive predecessors. Duplicates are removed (first occurrence wins).
- get_docstring(id: str) str#
Return the docstring for id, or empty string if unknown.
- get_domain(id: str) str#
Return the domain for id, or empty string if unknown.
- get_kind(id: str) str#
Return the
kindtag for id, or empty string if unknown.
- get_predecessors(id: str) list[str]#
Return the direct predecessors of id.
- get_requirement(
- code: str,
Find a requirement by code across all nodes.
- Parameters:
code – Requirement code (e.g.
"HI.004").- Returns:
The requirement if found, else
None.
- get_requirements(
- id: str,
Return all requirements declared directly on node id.
- Parameters:
id – Capability/feature/profile node id.
- Returns:
List of requirements (empty for nodes without requirements).
- get_transitive_predecessors(id: str) list[str]#
Return all transitive predecessors of id (BFS), not including id itself.
- get_validators(id: str) list[str]#
Return validators declared directly on id.
- is_capability(id: str) bool#
Return True if id is a registered capability.
- is_profile(id: str) bool#
Return True if id is a registered profile.
- classmethod load_from_dict(
- data: dict[str, Any],
Create a graph from a parsed JSON dict.
- Parameters:
data – Dict matching the
capabilities.jsonschema.
- classmethod load_from_json(
- path: str | Path,
Create a graph from a
capabilities.jsonfile.- Parameters:
path – Path to the JSON file.
- merge(
- other: CapabilityGraph,
Merge another graph into this one. Duplicate node ids are skipped with a warning.
- Parameters:
other – Graph to merge from.
- to_json(
- path: str | Path,
- *,
- indent: int = 2,
Write the graph to a
capabilities.jsonfile.
- class usd_profiles_nvidia.LoadedSpecifications#
Specifications loaded from authored descriptor files.
- property requirements: list[Requirement | RequirementRef]#
Return requirements and lazy references authored by loaded capabilities.
- validate() tuple[SpecificationProblem, ...]#
Return local structural problems without resolving references or mutating loaded objects.
- class usd_profiles_nvidia.LoadedSpecificationsProtocol#
Runtime-checkable interface for one loaded specification result.
- class usd_profiles_nvidia.PythonGenerator#
Python code generator for USD Profiles.
- Parameters:
docs_root – Root directory containing capabilities/, profiles/, and features/ subdirectories. If provided, capabilities_root, profiles_root, and features_root are derived from it.
capabilities_root – Directory containing capability files.
profiles_root – Directory containing profile files.
features_root – Directory containing feature files.
destination_dir – Output directory for generated Python code.
package_name – Python package path for generated modules (e.g.
"omni.profiles"->omni/profiles/).reverse_domain – Reverse-domain prefix for spec identifiers (e.g.
"com.nvidia.simready"). Empty means legacy behavior.
- class usd_profiles_nvidia.SpecificationKind#
Kinds of authored specifications represented in diagnostics.
- class usd_profiles_nvidia.SpecificationProblem#
A non-mutating structural diagnostic for loaded specifications.
- class usd_profiles_nvidia.SpecificationProblemKind#
Kinds of structural problems in one loaded specification result.
- class usd_profiles_nvidia.SpecificationProblemSeverity#
Severity of a loaded specification problem.
- class usd_profiles_nvidia.SpecificationRef#
Stable identifying details for a specification involved in a problem.
- class usd_profiles_nvidia.SpecificationsLoader#
Load authored specification descriptors into public API DTOs.
- Parameters:
root_dir – Root directory containing capabilities, profiles, and features.
capabilities_root – Directory containing authored capabilities.
profiles_root – Directory containing authored profiles.
features_root – Directory containing authored features.
features_roots – Additional feature descriptor files and/or directories.
profiles_roots – Additional profile descriptor files and/or directories.
reverse_domain – Prefix added to unqualified requirement references, profile IDs, and profile feature references after parsing.
- load() LoadedSpecifications#
Load configured specifications without resolving their references.
- usd_profiles_nvidia.get_version()#
Returns the version of this module.