Source code for gs_nyx_plugin.nyx_camera_shared_metadata
"""
Nyx Camera Shared Metadata for Genesis - GPU-accelerated rendering via Nyx renderer.
"""
# External imports
import os
import shutil
import string
import secrets
from typing import TYPE_CHECKING, Any, Dict, List, Optional
from dataclasses import dataclass
import torch
# Internal imports
from genesis.engine.sensors.base_sensor import (
SharedSensorMetadata,
KinematicSensorMetadataMixin,
)
# Forward declaure the NyxCameraSensor to avoid circular impots
if TYPE_CHECKING:
from .nyx_camera_sensor import NyxCameraSensor
__all__ = ["NyxCameraSharedMetadata"]
# ========================== Utils ==========================
def _nyx_random_string(length: int = 16) -> str:
alphabet = string.ascii_lowercase + string.digits
return "".join(secrets.choice(alphabet) for _ in range(length))
def _nyx_make_complete_path(path: str) -> str:
return f"__nyx_cache__/{path}"
# ========================== Shared Metadata ==========================