62 lines
1.6 KiB
Python
62 lines
1.6 KiB
Python
"""Application-specific exception hierarchy."""
|
|
|
|
|
|
class ApplicationError(Exception):
|
|
"""Base class for expected application errors."""
|
|
|
|
|
|
class ConfigurationError(ApplicationError):
|
|
"""Raised when configuration is missing or invalid."""
|
|
|
|
|
|
class CameraOpenError(ApplicationError):
|
|
"""Raised when an input source cannot be opened."""
|
|
|
|
|
|
class FrameReadError(ApplicationError):
|
|
"""Raised after repeated camera frame read failures."""
|
|
|
|
|
|
class ModelLoadError(ApplicationError):
|
|
"""Raised when the YOLO model cannot be loaded."""
|
|
|
|
|
|
class VideoWriterError(ApplicationError):
|
|
"""Raised when an output video writer cannot be opened."""
|
|
|
|
|
|
class TrackerError(ApplicationError):
|
|
"""Raised when the external tracker cannot be initialized or updated."""
|
|
|
|
|
|
class TrackManagementError(ApplicationError):
|
|
"""Raised when accumulated track state is inconsistent."""
|
|
|
|
|
|
class TrackingLogError(ApplicationError):
|
|
"""Raised when tracking CSV files cannot be written."""
|
|
|
|
|
|
class FaceProcessingError(ApplicationError):
|
|
"""Raised when the face backend cannot be initialized."""
|
|
|
|
|
|
class FaceLogError(ApplicationError):
|
|
"""Raised when face CSV logs cannot be opened or written."""
|
|
|
|
|
|
class TurnLogError(ApplicationError):
|
|
"""Raised when turn-analysis CSV files cannot be opened or written."""
|
|
|
|
|
|
class VoiceLogError(ApplicationError):
|
|
"""Raised when voice-prompt CSV files cannot be opened or written."""
|
|
|
|
|
|
class PersonStateLogError(ApplicationError):
|
|
"""Raised when integrated person-state CSV files cannot be written."""
|
|
|
|
|
|
class UnifiedLogError(ApplicationError):
|
|
"""Raised when Phase 7 unified CSV files cannot be written."""
|