From 70bf4c9293bb0aba30d051d2442afce52c1bf99e Mon Sep 17 00:00:00 2001 From: Sol Simpson Date: Mon, 12 Apr 2021 09:44:50 -0300 Subject: [PATCH] FF: Added getDeviceParamsFlattenned function returns flat version of getDeviceParams. --- psychopy/iohub/util/__init__.py | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/psychopy/iohub/util/__init__.py b/psychopy/iohub/util/__init__.py index 204c3727d5..01ebfa15a6 100644 --- a/psychopy/iohub/util/__init__.py +++ b/psychopy/iohub/util/__init__.py @@ -398,6 +398,20 @@ def settings2Params(parent_list, settings): settings2Params([], device_params) return device_params +def getDeviceParamsFlattenned(device_name): + flattenned = {} + dconf = getDeviceParams(device_name) + def flatten_dict(d): + for k, v in d.items(): + if isinstance(v, dict): + if v.get('inputType'): + flattenned[v.get('label')] = v + else: + flatten_dict(v) + flatten_dict(dconf) + return flattenned + + if sys.platform == 'win32': import pythoncom