public IEnumerable <FirmwareInfo> FirmwareInfoList() { var size = Base.AUTDGetFirmwareInfoListPointer(AUTDControllerHandle.CntPtr, out var handle); for (var i = 0; i < size; i++) { var info = new StringBuilder(256); Base.AUTDGetFirmwareInfo(handle, i, info); yield return(new FirmwareInfo(info.ToString())); } Base.AUTDFreeFirmwareInfoListPointer(handle); }