MCA counters in measurement groups
Check that MCA counters indexed like xxx[0] can be put in measurement groups
EDIT After some discussions:
-
controller.counters
should provide a flat namespace for all available counters (including dynamic counters) -
controller.groups
can optionally provides convenient access to meaningful subsets of this namespace -
controller.groups.default
can optionally define the subset to consider by default -
scan functions should use the routine bellow to get the counters from the given *args
positional arguments: -
measurement group should use a similar approach (maybe needs to be updated?)
for arg in args:
if isinstance(arg, BaseCounter):
yield arg
if isinstance(arg, BaseController):
try:
yield from arg.groups.default
except AttributeError:
yield from arg.counters
if isinstance(arg, Iterable):
yield from arg
(this means measurement groups and scans can be populated using controller, counter, or counters objects)
Edited by Matias Guijarro