Add docs/developer/lamni_smear_architecture.md covering the three-tier device/ipython-client/GUI architecture this feature exercises: the camera's two PreviewSignal channels (image vs smear_preview) and why composite pushes needed their own channel, XRayEye.set_live_view_signal and exactly when the caller must switch it back, the sweep algorithm (non-blocking mv() + ScanReport.status polling + max-projection), and the bw-generate-cli regeneration step required whenever a plugin widget's USER_ACCESS changes (the cause of this session's confusing AttributeError even after a full client/GUI restart). Also expand the user-facing description in lamni.md with a note on the live-updating composite display and a cross-reference to the new developer page. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
46 lines
820 B
Markdown
46 lines
820 B
Markdown
(developer)=
|
|
# Developer
|
|
Information for developers and maintainers of the cSAXS beamline documentation and software.
|
|
|
|
```{toctree}
|
|
---
|
|
maxdepth: 2
|
|
hidden: true
|
|
---
|
|
|
|
editing_docs
|
|
lamni_smear_architecture
|
|
|
|
```
|
|
|
|
|
|
***
|
|
|
|
````{grid} 2
|
|
:gutter: 5
|
|
|
|
```{grid-item-card}
|
|
:link: developer.editing_docs
|
|
:link-type: ref
|
|
:img-top: /assets/index_contribute.svg
|
|
:text-align: center
|
|
:class-item: index-card
|
|
|
|
## Editing the documentation
|
|
|
|
Conventions for writing these MyST/Sphinx docs and how changes go live on Read the Docs.
|
|
```
|
|
|
|
```{grid-item-card}
|
|
:link: developer.lamni_smear_architecture
|
|
:link-type: ref
|
|
:text-align: center
|
|
:class-item: index-card
|
|
|
|
## LamNI smear aid architecture
|
|
|
|
Device/ipython-client/GUI widget interfaces for the smear rotation-center calibration aid, and the `bw-generate-cli` regeneration pitfall.
|
|
```
|
|
|
|
````
|