File size: 1,124 Bytes
8c5a841 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
class IsaacLabArenaError(RuntimeError):
"""Base exception for IsaacLab Arena environment errors."""
def __init__(self, message: str = "IsaacLab Arena error"):
self.message = message
super().__init__(self.message)
class IsaacLabArenaConfigError(IsaacLabArenaError):
"""Exception raised for invalid environment configuration."""
def __init__(self, invalid: list, available: list, key_type: str = "keys"):
msg = f"Invalid {key_type}: {invalid}. Available: {sorted(available)}"
super().__init__(msg)
self.invalid = invalid
self.available = available
class IsaacLabArenaCameraKeyError(IsaacLabArenaConfigError):
"""Exception raised when camera_keys don't match available cameras."""
def __init__(self, invalid: list, available: list):
super().__init__(invalid, available, "camera_keys")
class IsaacLabArenaStateKeyError(IsaacLabArenaConfigError):
"""Exception raised when state_keys don't match available state terms."""
def __init__(self, invalid: list, available: list):
super().__init__(invalid, available, "state_keys") |