Families¶
Equipment BC Families. A Family names a kind of thing an Asset can do (device-class abstraction), and is the contract by which a Method declares the device types its realizations need (via needed_families). Each Family carries a set of Affordances — the primitive operations the device-class supports — which the cross-BC Plan-binding matching engine compares against the Method's bound Capability's required_affordances. Families are cross-facility vocabulary, not bound to any Site. See Model for the aggregate shape.
| Family | Used by Methods |
|---|---|
RotaryStage |
motor_homing, center_alignment, roll_alignment, pitch_alignment, alignment_calibration, tomography, streaming_tomography, continuous_rotation_tomography, mosaic_tomography |
LinearStage |
motor_homing, resolution_alignment, focus_alignment, center_alignment, roll_alignment, pitch_alignment, alignment_calibration, tomography, streaming_tomography, continuous_rotation_tomography, mosaic_tomography |
Camera |
resolution_alignment, focus_alignment, center_alignment, roll_alignment, pitch_alignment, first_light, dark_baseline, flat_baseline, alignment_calibration, tomography, streaming_tomography, continuous_rotation_tomography, mosaic_tomography |
Scintillator |
resolution_alignment, focus_alignment, center_alignment, roll_alignment, pitch_alignment, first_light, dark_baseline, flat_baseline, alignment_calibration, tomography, streaming_tomography, continuous_rotation_tomography, mosaic_tomography |
Shutter |
first_light, dark_baseline, flat_baseline |
ProbeGeneric |
dark_baseline (APS facility-scope template — abstract detector probe-chain) |
Hexapod |
hexapod_reboot |
Source of truth: test_aps_facility.py, test_2bm_motor_homing.py, test_2bm_first_light.py, test_2bm_dark_baseline.py, test_2bm_flat_baseline.py, test_2bm_alignment_resolution.py, test_2bm_alignment_focus.py, test_2bm_alignment_center.py, test_2bm_alignment_roll.py, test_2bm_alignment_pitch.py, test_2bm_hexapod_reboot.py.
Pending in code¶
Beamline-typical Families (HighSpeedCamera, Goniometer, Monochromator, Slit, Mirror, TriggerFPGA) are not yet defined. Each lands as a row above when a scenario test or seed script defines it.