4Cross-platform interface to Helios native libraries.
5Automatically detects platform and loads appropriate library files.
10from .loader
import load_helios_library, get_library_info, is_native_library_available, detect_available_plugins
13logger = logging.getLogger(__name__)
21helios_lib = load_helios_library()
22library_info = get_library_info()
25if library_info[
'is_mock']:
26 logger.info(
"PyHelios loaded in development mock mode")
27 logger.info(f
"Platform: {library_info['platform']}")
28 if library_info[
'available_files']:
29 logger.info(f
"Available library files: {library_info['available_files']}")
31 logger.info(
"No native library files found in plugins directory")
33 logger.info(f
"PyHelios native library loaded successfully")
34 logger.info(f
"Platform: {library_info['platform']}")
35 if 'library_path' in library_info:
36 logger.info(f
"Library path: {library_info['library_path']}")
39 if library_info[
'available_files']:
40 logger.debug(f
"Available library files: {library_info['available_files']}")
44 """Get information about loaded plugins and libraries."""
45 info = get_library_info()
46 info[
'native_available'] = is_native_library_available()
47 info[
'available_plugins'] = detect_available_plugins()
51 """Print current plugin status for debugging."""
53 print(f
"PyHelios Plugin Status:")
54 print(f
" Platform: {info['platform']}")
55 print(f
" Native library available: {info['native_available']}")
56 print(f
" Mock mode: {info['is_mock']}")
57 if info[
'available_files']:
58 print(f
" Available library files: {', '.join(info['available_files'])}")
59 if 'library_path' in info:
60 print(f
" Loaded library: {info['library_path']}")
63__all__ = [
'helios_lib',
'get_plugin_info',
'print_plugin_status']
print_plugin_status()
Print current plugin status for debugging.
get_plugin_info()
Get information about loaded plugins and libraries.