OpenSpace / openspace /recording /__init__.py
darkfire514's picture
Upload 160 files
399b80c verified
"""
RecordingManager
β”œβ”€β”€ internal management of platform.RecordingClient
β”œβ”€β”€ internal management of platform.ScreenshotClient
β”œβ”€β”€ internal management of TrajectoryRecorder
└── internal management of ActionRecorder
"""
from importlib import import_module
__all__ = [
'RecordingManager',
'TrajectoryRecorder',
'ActionRecorder',
'load_trajectory_from_jsonl',
'load_metadata',
'format_trajectory_for_export',
'analyze_trajectory',
'load_recording_session',
'filter_trajectory',
'extract_errors',
'generate_summary_report',
'load_agent_actions',
'analyze_agent_actions',
'format_agent_actions',
]
_EXPORTS = {
'RecordingManager': ('.manager', 'RecordingManager'),
'TrajectoryRecorder': ('.recorder', 'TrajectoryRecorder'),
'ActionRecorder': ('.action_recorder', 'ActionRecorder'),
'load_trajectory_from_jsonl': ('.utils', 'load_trajectory_from_jsonl'),
'load_metadata': ('.utils', 'load_metadata'),
'format_trajectory_for_export': ('.utils', 'format_trajectory_for_export'),
'analyze_trajectory': ('.utils', 'analyze_trajectory'),
'load_recording_session': ('.utils', 'load_recording_session'),
'filter_trajectory': ('.utils', 'filter_trajectory'),
'extract_errors': ('.utils', 'extract_errors'),
'generate_summary_report': ('.utils', 'generate_summary_report'),
'load_agent_actions': ('.action_recorder', 'load_agent_actions'),
'analyze_agent_actions': ('.action_recorder', 'analyze_agent_actions'),
'format_agent_actions': ('.action_recorder', 'format_agent_actions'),
}
def __getattr__(name: str):
try:
module_name, attr_name = _EXPORTS[name]
except KeyError as exc:
raise AttributeError(f'module {__name__!r} has no attribute {name!r}') from exc
module = import_module(module_name, __name__)
value = getattr(module, attr_name)
globals()[name] = value
return value