diff --git a/docs/source/reference/release_notes.rst b/docs/source/reference/release_notes.rst index c17babdb6..34dec016a 100644 --- a/docs/source/reference/release_notes.rst +++ b/docs/source/reference/release_notes.rst @@ -15,7 +15,8 @@ Changes within ophyd methods. * Deprecate ``DetectorBase.dispatch`` in favor of newly added ``DetectorBase.generate_datum`` - +* ``obj.collect_asset_docs`` will now recurse to children by default at the + Device level 1.6.4 (2022-04-08) diff --git a/ophyd/areadetector/detectors.py b/ophyd/areadetector/detectors.py index 357148640..8385900f2 100644 --- a/ophyd/areadetector/detectors.py +++ b/ophyd/areadetector/detectors.py @@ -108,12 +108,6 @@ def make_data_key(self): return dict(shape=shape, source=source, dtype='array', external='FILESTORE:') - def collect_asset_docs(self): - file_plugins = [s for s in self._signals.values() if - hasattr(s, 'collect_asset_docs')] - for p in file_plugins: - yield from p.collect_asset_docs() - class AreaDetector(DetectorBase): cam = C(cam.AreaDetectorCam, 'cam1:') diff --git a/ophyd/device.py b/ophyd/device.py index bfb812e2e..684ca528f 100644 --- a/ophyd/device.py +++ b/ophyd/device.py @@ -1299,6 +1299,11 @@ def read(self): res.update(component.read()) return res + def collect_asset_docs(self): + for _, component in self._get_components_of_kind(Kind.normal): + if hasattr(component, 'collect_asset_docs'): + yield from component.collect_asset_docs() + def read_configuration(self) -> OrderedDictType[str, Dict[str, Any]]: """Dictionary mapping names to value dicts with keys: value, timestamp