abstract_impl#

class CSScalarAggregator(devs)[source]#

Bases: ScalarAggregator

Basic control system aggregator for a list of scalar values

add_devices(devices)[source]#
get()[source]#

Return a list variables

nb_device()[source]#
readback()[source]#

Return a list variables (measurements)

set(value)[source]#

Write a list of variable

set_and_wait(value)[source]#

Write a list of variable and wait that setpoint are reached

unit()[source]#

Return the variables unit

class CSStrengthScalarAggregator(peer)[source]#

Bases: CSScalarAggregator

Control system aggregator for a list of magnet strengths. This aggregator is in charge of computing hardware setpoints and applying them without overlap. When virtual magnets exported from combined function mangets are present (RWMapper), the aggregator prevents to apply several times the same power supply setpoint.

add_magnet(magnet, devs)[source]#
get()[source]#

Return a list variables

readback()[source]#

Return a list variables (measurements)

set(value)[source]#

Write a list of variable

set_and_wait(value)[source]#

Write a list of variable and wait that setpoint are reached

unit()[source]#

Return the variables unit

class RBetatronTuneArray(tune_monitor, devs)[source]#

Bases: ReadFloatArray

Class providing read write access to betatron tune of a control system.

get()[source]#

Get the value

unit()[source]#

Get the unit of the values

class RBpmArray(hDev, vDev)[source]#

Bases: ReadFloatArray

Class providing read access to a BPM position [x,y] of a control system

get()[source]#

Get the value

unit()[source]#

Get the unit of the values

class RWBpmOffsetArray(hDev, vDev)[source]#

Bases: ReadWriteFloatArray

Class providing read write access to a BPM offset [x,y] of a control system

get()[source]#

Get the value

set(value)[source]#

Set the values

set_and_wait(value)[source]#

Set the values and wait that setpoints are reached

unit()[source]#

Get the unit of the value

class RWBpmTiltScalar(dev)[source]#

Bases: ReadFloatScalar

Class providing read access to a BPM tilt of a control system

get()[source]#

Get the value

set(value)[source]#
set_and_wait(value)[source]#
unit()[source]#

Get the unit of the value

class RWHardwareArray(model, devs)[source]#

Bases: ReadWriteFloatArray

Class providing read write access to a magnet array of a control system (in hardware units)

get()[source]#

Get the value

set(value)[source]#

Set the values

set_and_wait(value)[source]#

Set the values and wait that setpoints are reached

unit()[source]#

Get the unit of the value

class RWHardwareScalar(model, dev)[source]#

Bases: ReadWriteFloatScalar

Class providing read write access to a magnet of a control system (in hardware units)

get()[source]#

Get the value

set(value)[source]#

Set the value

set_and_wait(value)[source]#

Set the value and wait that setpoint is reached

set_magnet_rigidity(brho)[source]#
unit()[source]#

Get the unit of the value

class RWRFFrequencyScalar(rf, dev)[source]#

Bases: ReadWriteFloatScalar

Class providing read write access to RF frequency of a control system.

get()[source]#

Get the value

set(value)[source]#

Set the value

set_and_wait(value)[source]#

Set the value and wait that setpoint is reached

unit()[source]#

Get the unit of the value

class RWRFPhaseScalar(transmitter, dev)[source]#

Bases: ReadWriteFloatScalar

Class providing read write access to cavity phase for a transmitter of a control system.

get()[source]#

Get the value

set(value)[source]#

Set the value

set_and_wait(value)[source]#

Set the value and wait that setpoint is reached

unit()[source]#

Get the unit of the value

class RWRFVoltageScalar(transmitter, dev)[source]#

Bases: ReadWriteFloatScalar

Class providing read write access to cavity voltage for a transmitter of a control system.

get()[source]#

Get the value

set(value)[source]#

Set the value

set_and_wait(value)[source]#

Set the value and wait that setpoint is reached

unit()[source]#

Get the unit of the value

class RWStrengthArray(model, devs)[source]#

Bases: ReadWriteFloatArray

Class providing read write access to magnet strengths of a control system

get()[source]#

Get the value

set(value)[source]#

Set the values

set_and_wait(value)[source]#

Set the values and wait that setpoints are reached

unit()[source]#

Get the unit of the value

class RWStrengthScalar(model, dev)[source]#

Bases: ReadWriteFloatScalar

Class providing read write access to a strength of a control system

get()[source]#

Get the value

set(value)[source]#

Set the value

set_and_wait(value)[source]#

Set the value and wait that setpoint is reached

set_magnet_rigidity(brho)[source]#
unit()[source]#

Get the unit of the value

check_range(values, dev_range)[source]#

Check whether values are within given ranges.

Inverted semantics:
  • True -> all checks pass (everything is within bounds)

  • False -> at least one check fails (out of range)

dev_range format (flat):

[min1, max1, min2, max2, …]

Broadcasting rules:

Let N = number of values, K = number of ranges (pairs). - N == K : one range per value - N == 1 and K > 1: the single value must satisfy ALL ranges - N > 1 and K == 1: the single range applies to ALL values

format_out_of_range_message(values, devs, *, header='Values out of range:')[source]#

Build a user-friendly error message for out-of-range values.

Output example:

Values out of range: 110 A, ‘//host/dev/attr’ [10.0, 109.0] 110 A, ‘//host/dev/attr’ [10.0, 109.0]

Notes

  • Only failing channels are listed.

  • Supports scalar/array values and DeviceAccess/DeviceAccessList.

  • Uses check_range() semantics (inclusive bounds, None => unbounded).