Enumerating Devices

Prior to opening a device, you can use an instance of OpalKelly::FrontPanelDevices to list available devices. It’s important to note that a device is only available in one thread or process at a time and therefore will not be visible in this list if another thread or process has already opened it.
We’ll use GetCount() to query available devices, then use GetSerial(i) to list the serial number of each attached device.

C/C++

 OpalKelly::FrontPanelDevices devices;
 int devCount = devices.GetCount();

 for (int i = 0; i < devCount; i++) {
     std::cout << "Device[" << i << "] Serial : " << devices.GetSerial(i) << "\n";
 }Code language: PHP (php)

C#

okCFrontPanelDevices devices = new okCFrontPanelDevices();
int devCount = devices.GetCount();

for (int i = 0; i < devCount; i++) {
    Console.WriteLine("Device[{0}] Serial: {1}", i, devices.GetSerial(i));
}Code language: JavaScript (javascript)

Python

devices = ok.FrontPanelDevices()

devCount = devices.GetCount()
for i in range(devCount):
    print(f"Device[{i}] Serial: {devices.GetSerial(i)}")Code language: PHP (php)

Java

public class EnumDevice {
    okCFrontPanelDevices devices;
    int devCount;

    public void Initialize() {
        devices = new okCFrontPanelDevices();
    }

    public void Enumerate() {
        devCount = devices.GetCount();
        for (int i = 0; i < devCount; i++) {
            System.out.println("Device[" + i + "] Serial: " + devices.GetSerial(i));
        }
    }
}Code language: PHP (php)