DEFAULT_MAPS = {
'ephys':
{'3A':
{'ap':
{'left_camera': 2,
'right_camera': 3,
'body_camera': 4,
'bpod': 7,
'frame2ttl': 12,
'rotary_encoder_0': 13,
'rotary_encoder_1': 14,
'audio': 15
}
},
'3B':
{'nidq':
{'left_camera': 0,
'right_camera': 1,
'body_camera': 2,
'imec_sync': 3,
'frame2ttl': 4,
'rotary_encoder_0': 5,
'rotary_encoder_1': 6,
'audio': 7,
'bpod': 16,
'laser': 17,
'laser_ttl': 18},
'ap':
{'imec_sync': 6}
},
},
'widefield':
{'nidq': {'left_camera': 0,
'right_camera': 1,
'body_camera': 2,
'frame_trigger': 3,
'frame2ttl': 4,
'rotary_encoder_0': 5,
'rotary_encoder_1': 6,
'audio': 7,
'bpod': 16}
},
'sync':
{'nidq': {'left_camera': 0,
'right_camera': 1,
'body_camera': 2,
'frame_trigger': 3,
'frame2ttl': 4,
'rotary_encoder_0': 5,
'rotary_encoder_1': 6,
'audio': 7,
'bpod': 16}
},
'mesoscope':
{'timeline': {'left_camera': 0,
'right_camera': 1,
'belly_camera': 2,
'frame2ttl': 3,
'audio': 4,
'bpod': 5,
'rotary_encoder': 6,
'neural_frames': 7}
}
}
[docs]
def all_default_labels():
"""
Returns the set of channel map channel names.
Returns
-------
set of str
The channel names present throughout all default channel maps.
"""
keys = set()
def _iter_map(d):
for k, v in d.items():
if isinstance(v, dict):
_iter_map(v)
else:
keys.add(k)
_iter_map(DEFAULT_MAPS)
return keys