"""
Inscoper API Example Script: Read Configuration
===============================================
This script demonstrates how to read an Inscoper configuration file without initializing devices.

Configuration Prerequisites:
---------------------------
1. Environment Variable: Ensure 'InscoperConfigsPath' is defined in your environment
   and points to your Inscoper configurations folder.
2. Configuration Name: This script assumes a hardware configuration named "singleCamera".
   Change it below if your configuration is named differently.
"""

# --8<-- [start:main_logic]

import os
import inscoper_api

# Macro to all Inscoper configurations
CONFIG_PATH = os.environ['InscoperConfigsPath']

my_bridge = inscoper_api.Bridge()

config = my_bridge.readConfigFile(os.sep.join([CONFIG_PATH, "singleCamera"]))

print("List of devices:", [device.getId() for device in config.getDeviceList()])
print("List of driver folders:", config.getLibraryPaths())
print("List of drivers:", config.getDriverList())

my_bridge.close()

# --8<-- [end:main_logic]
