Detector
- class slsdet.Detector(multi_id=0)
Bases:
CppDetectorApi
This class is the base for detector specific interfaces. Most functions exists in two versions like the getExptime() function that uses the C++ API directly and the simplified exptime property.
- acquire()
Run the configured measurement
Note
Blocking command, where control server is blocked and cannot accept other commands until acquisition is done.
sets acquiring flag
starts the receiver listener (if enabled)
starts detector acquisition for number of frames set
monitors detector status from running to idle
stops the receiver listener (if enabled)
increments file index if file write enabled
resets acquiring flag
- property adcclk
[Ctb] Sets ADC clock frequency in MHz.
- property adcenable
[Ctb] ADC Enable Mask for 1Gb. Enable for each 32 ADC channel.
- property adcenable10g
[Ctb] ADC Enable Mask for 10Gb mode for each 32 ADC channel.
Note
If any of a consecutive 4 bits are enabled, the complete 4 bits are enabled.
- property adcinvert
[Ctb][Jungfrau][Moench] ADC Inversion Mask.
Note
[Jungfrau][Moench] Inversions on top of the default mask.
- property adclist
[Chiptestboard] List of names for every adc for this board. 32 adcs
- property adcphase
[Gotthard][Jungfrau][Moench][CTB] Sets phase shift of ADC clock.
Note
[Jungfrau][Moench] Absolute phase shift. Changing Speed also resets adcphase to recommended defaults.
[Ctb] Absolute phase shift. Changing adcclk also resets adcphase and sets it to previous values.
[Gotthard] Relative phase shift.
- getter
Not implemented for Gotthard
- property adcpipeline
[Ctb] Sets pipeline for ADC clock.
- property adcreg
[Jungfrau][Moench][Ctb][Gotthard] Writes to an adc register
Note
Advanced user Function!
- getter
Not implemented
- property adcvpp
[Ctb][Moench] Vpp of ADC. [0 -> 1V | 1 -> 1.14V | 2 -> 1.33V | 3 -> 1.6V | 4 -> 2V]
Advanced User function!
- property apulse
[Mythen3] Enable or disable analog pulsing.
- property asamples
[Ctb] Number of analog samples expected.
- property autocompdisable
[Jungfrau] Enable or disable auto comparator disable mode.
Note
By default, the on-chip gain switching is active during the entire exposure. This mode disables the on-chip gain switching comparator automatically after 93.75% of exposure time (only for longer than 100us). The % is only for chipv1.0, the duration can be set for chipv1.1.
Default is 0 or this mode disabled (comparator enabled throughout). 1 enables mode. 0 disables mode.
- property badchannels
[fname|none|0] [Gotthard2][Mythen3] Sets the bad channels (from file of bad channel numbers) to be masked out. None or 0 unsets all the badchannels.
[Mythen3] Also does trimming
- blockingtrigger()
- property burstmode
[Gotthard2] Burst mode of detector. Enum: burstMode
Note
BURST_INTERNAL (default), BURST_EXTERNAL, CONTINUOUS_INTERNAL, CONTINUOUS_EXTERNAL Also changes clkdiv 2, 3, 4
- property burstperiod
[Gotthard2] Period between 2 bursts. Only in burst mode and auto timing mode.
- Getter
always returns in seconds. To get in DurationWrapper, use getBurstPeriod
- Setter
Not Implemented
Example
>>> # setting directly in seconds >>> d.burstperiod = 1.05 >>> >>> # setting directly in seconds >>> d.burstperiod = 5e-07 >>> >>> # using timedelta (up to microseconds precision) >>> from datatime import timedelta >>> d.burstperiod = timedelta(seconds = 1, microseconds = 3) >>> >>> # using DurationWrapper to set in seconds >>> from slsdet import DurationWrapper >>> d.burstperiod = DurationWrapper(1.2) >>> >>> # using DurationWrapper to set in ns >>> t = DurationWrapper() >>> t.set_count(500) >>> d.burstperiod = t >>> >>> # to get in seconds >>> d.burstperiod 181.23 >>> >>> d.getBurstPeriod() sls::DurationWrapper(total_seconds: 181.23 count: 181230000000)
- property bursts
[Gotthard2] Number of bursts per aquire. Only in auto timing mode and burst mode.
- property burstsl
[Gotthard2] Number of bursts left in acquisition.
Note
Only in burst auto mode.
- setter
Not Implemented
- property cdsgain
[Gotthard2] Enable or disable CDS gain. Default is disabled.
- property chipversion
[Jungfrau] Chip version of module. Can be 1.0 or 1.1.
Example
>>> d.chipversion '1.0'
- clearAcquiringFlag(self: _slsdet.CppDetectorApi) None
- clearBit(self: _slsdet.CppDetectorApi, arg0: int, arg1: int, arg2: List[int] = []) None
- clearROI(self: _slsdet.CppDetectorApi, arg0: List[int] = []) None
- clearRxROI(self: _slsdet.CppDetectorApi) None
- clearUDPDestinations(self: _slsdet.CppDetectorApi, arg0: List[int] = []) None
- clearbusy()
If acquisition aborted during acquire command, use this to clear acquiring flag in shared memory before starting next acquisition
- property clientversion
Client software version in format [YYMMDD]
Example
>>> d.clientversion '7.0.1'
- property clkdiv
[Gotthard2][Mythen3] Clock Divider of all clocks. Must be greater than 1.
Example
>>> d.clkdiv[0] = 20 >>> d.clkdiv 0: 20 1: 10 2: 20 3: 10 4: 10 5: 5
- property clkfreq
[Gotthard2][Mythen3] Frequency of clock in Hz.
- Setter
Not implemented. Use clkdiv to set frequency
Example
>>> d.clkfreq[0] 50000000
- property clkphase
[Gotthard2][Mythen3] Phase shift of all clocks.
Example
>>> d.clkphase[0] = 20 >>> d.clkphase 0: 20 1: 10 2: 20 3: 10 4: 10 5: 5
- property column
Set Detector column (udp header) to value. Gui uses it to rearrange for complete image.
- property compdisabletime
[Jungfrau] Time before end of exposure when comparator is disabled.
Note
It is only possible for chipv1.1.
- getter
always returns in seconds. To get in DurationWrapper, use getComparatorDisableTime
Example
>>> # setting directly in seconds >>> d.compdisabletime = 1.05 >>> >>> # setting directly in seconds >>> d.compdisabletime = 5e-07 >>> >>> # using timedelta (up to microseconds precision) >>> from datatime import timedelta >>> d.compdisabletime = timedelta(seconds = 1, microseconds = 3) >>> >>> # using DurationWrapper to set in seconds >>> from slsdet import DurationWrapper >>> d.compdisabletime = DurationWrapper(1.2) >>> >>> # using DurationWrapper to set in ns >>> t = DurationWrapper() >>> t.set_count(500) >>> d.compdisabletime = t >>> >>> # to get in seconds >>> d.compdisabletime 181.23 >>> >>> d.getComparatorDisableTime() sls::DurationWrapper(total_seconds: 181.23 count: 181230000000)
- property config
Load configuration file.
Note
Frees shared memory before loading configuration file. Set up once.
- getter
Not implemented
- setter
Loads config file
Example
>>> d.config = "/path/to/config/file.config"
- property counters
[Mythen3] List of counter indices enabled.
Note
Each element in list can be 0 - 2 and must be non repetitive. Enabling counters sets vth dacs to remembered values and disabling sets them to disabled values.
Example
>>> d.counters = [0, 1]
- property currentsource
[Gotthard2][Jungfrau] Pass in a currentSrcParameters object see python/examples/use_currentsource.py
- property daclist
List of enums/names for every dac for this detector
- Setter
Only implemented for Chiptestboard
- property dacvalues
Gets the dac values for every dac for this detector.
- property datastream
datastream [left|right] [0, 1] [Eiger] Enables or disables data streaming from left or/and right side of detector for 10GbE mode. 1 (enabled) by default.
- property dbitclk
[Ctb] Clock for latching the digital bits in MHz.
- property dbitphase
[Ctb][Jungfrau] Phase shift of clock to latch digital bits. Absolute phase shift.
Note
[Ctb]Changing dbitclk also resets dbitphase and sets to previous values.
- property dbitpipeline
[Ctb][Gotthard2] Pipeline of the clock for latching digital bits.
Note
[CTB] Options: 0 - 255 [Gotthard2] Options: 0 - 7
- property delay
[Gotthard][Jungfrau][Moench][CTB][Mythen3][Gotthard2] Delay after trigger, accepts either a value in seconds, DurationWrapper or datetime.timedelta
- Getter
always returns in seconds. To get in DurationWrapper, use getDelayAfterTrigger
Example
>>> # setting directly in seconds >>> d.delay = 1.05 >>> >>> # setting directly in seconds >>> d.delay = 5e-07 >>> >>> # using timedelta (up to microseconds precision) >>> from datatime import timedelta >>> d.delay = timedelta(seconds = 1, microseconds = 3) >>> >>> # using DurationWrapper to set in seconds >>> from slsdet import DurationWrapper >>> d.delay = DurationWrapper(1.2) >>> >>> # using DurationWrapper to set in ns >>> t = DurationWrapper() >>> t.set_count(500) >>> d.delay = t >>> >>> # to get in seconds >>> d.delay 181.23 >>> >>> d.getDelayAfterTrigger() sls::DurationWrapper(total_seconds: 181.23 count: 181230000000)
- property delayl
[Gotthard][Jungfrau][Moench][CTB][Mythen3][Gotthard2] Delay left after trigger during acquisition, accepts either a value in seconds, datetime.timedelta or DurationWrapper
Note
[Gotthard2] only in continuous mdoe.
- getter
always returns in seconds. To get in DurationWrapper, use getDelayAfterTriggerLeft
- setter
Not Implemented
Example
>>> d.delayl 181.23 >>> d.getDelayAfterTriggerLeft() [sls::DurationWrapper(total_seconds: 181.23 count: 181230000000)]
- property detectorserverversion
On-board detector server software version in format [0xYYMMDD]
Example
>>> d.detectorserverversion '7.0.0'
- property detsize
Sets the detector size in both dimensions (number of channels).
Note
This value is used to calculate row and column positions for each module and included into udp data packet header.
By default, it adds modules in y dimension for 2d detectors and in x dimension for 1d detectors.
Example
>>> d.detsize Geometry(x=3840, y=1) >>> d.detsize = [1024, 512] Geometry(x=1024, y = 512)
- property dpulse
[Mythen3] Enable or disable digital pulsing.
- property dr
Dynamic range or number of bits per pixel/channel.
Note
[Eiger] Options: 4, 8, 12, 16, 32. If set to 32, also sets clkdivider to 2 (quarter speed), else to 0 (full speed)
[Mythen3] Options: 8, 16, 32
[Jungfrau][Moench][Gotthard][Ctb][Mythen3][Gotthard2] 16
- property drlist
List of possible dynamic ranges for this detector
- property dsamples
[CTB] Number of digital samples expected.
- empty(self: _slsdet.CppDetectorApi) bool
- executeBusTest(self: _slsdet.CppDetectorApi, arg0: List[int] = []) None
- executeCommand(self: _slsdet.CppDetectorApi, arg0: str, arg1: List[int] = []) List[str]
- executeFirmwareTest(self: _slsdet.CppDetectorApi, arg0: List[int] = []) None
- property exptime
Exposure time, accepts either a value in seconds or datetime.timedelta
Note
[Mythen3] sets exposure time to all gate signals in auto and trigger mode (internal gating). To specify gateIndex, use getExptime or setExptime.
- getter
always returns in seconds. To get in DurationWrapper, use getExptime
Example
>>> # setting directly in seconds >>> d.exptime = 1.05 >>> >>> # setting directly in seconds >>> d.exptime = 5e-07 >>> >>> # using timedelta (up to microseconds precision) >>> from datatime import timedelta >>> d.exptime = timedelta(seconds = 1, microseconds = 3) >>> >>> # using DurationWrapper to set in seconds >>> from slsdet import DurationWrapper >>> d.exptime = DurationWrapper(1.2) >>> >>> # using DurationWrapper to set in ns >>> t = DurationWrapper() >>> t.set_count(500) >>> d.exptime = t >>> >>> # to get in seconds >>> d.exptime 181.23 >>> >>> d.getExptime() [sls::DurationWrapper(total_seconds: 1e-08 count: 10)]
- property exptimel
[Gotthard] Exposure time left for current frame.
- Getter
always returns in seconds. To get in DurationWrapper, use getExptimeLeft
- Setter
Not Implemented
Example
>>> d.exptimel 181.23 >>> d.getExptimeLeft() [sls::DurationWrapper(total_seconds: 181.23 count: 181230000000)]
- property extrastoragecells
[Jungfrau] Number of additional storage cells.
Note
Only for chip v1.0. For advanced users only.
Options: 0 - 15. Default is 0. The #images = #frames x #triggers x (#extrastoragecells + 1)
- property fformat
File format of data file in receiver. Enum: fileFormat
Note
Options: BINARY, HDF5 Default: BINARY For HDF5, package must be compiled with HDF5 flags. Default is binary.
Example
d.fformat = fileFormat.BINARY
- property filtercells
[Jungfrau] Set filter capacitor.
Note
[Jungfrau] Options: 0-12. Default: 0. Advanced user command. Only for chipv1.1.
- property filterresistor
[Gotthard2][Jungfrau] Set filter resistor. Increasing values for increasing ” “resistance.
Note
Advanced user command. [Gotthard2] Default is 0. Options: 0-3. [Jungfrau] Default is 1. Options: 0-1.
- property findex
File or Acquisition index in receiver.
Note
File name: [file name prefix]_d[detector index]_f[sub file index]_[acquisition/file index].[raw/h5].
- property firmwareversion
Fimware version of detector in format [0xYYMMDD] or an increasing 2 digit number for Eiger.
Example
>>> d.firmwareversion '0x200910'
- property fliprows
[Eiger] flips rows paramater sent to slsreceiver to stream as json parameter to flip rows in gui.
[Jungfrau] flips rows in the detector itself. For bottom module and number of interfaces must be set to 2. slsReceiver and slsDetectorGui does not handle.
- property flowcontrol10g
[Eiger][Jungfrau][Moench] Enable or disable 10GbE Flow Control.
- property fmaster
Enable or disable receiver master file. Default is enabled.
- property fname
File name prefix for output data file in receiver. Default is run.
Note
File name: [file name prefix]_d[detector index]_f[sub file index]_[acquisition/file index].[raw/h5].
Example
d.fname = ‘run’ eg. file name: run_d0_f0_5.raw
- property foverwrite
Enable or disable receiver file overwriting. Default is enabled.
- property fpath
Directory where output data files are written in receiver. Default is “/”.
Note
If path does not exist, it will try to create it.
Example
d.fpath = ‘/tmp/run_20201705’
- property framecounter
[Jungfrau][Moench][Mythen3][Gotthard2][CTB] Number of frames from start run control.
Note
[Gotthard2] only in continuous mode.
- setter
Not Implemented
- property frames
Number of frames per acquisition. In trigger mode, number of frames per trigger.
Note
Cannot be set in modular level.
In scan mode, number of frames is set to number of steps.
[Gotthard2] Burst mode has a maximum of 2720 frames.
- property framesl
[Gotthard][Jungfrau][Moench][Mythen3][Gotthard2][CTB] Number of frames left in acquisition.
Note
[Gotthard2] only in continuous auto mode.
- setter
Not Implemented
- property frametime
[Jungfrau][Moench][Mythen3][Gotthard2][CTB] Timestamp at a frame start.
Note
[Gotthard2] not in burst and auto mode.
- free()
Free detector shared memory
- property fwrite
Enable or disable receiver file write. Default is enabled.
- property gaincaps
[Mythen3] Gain caps. Enum: M3_GainCaps
Note
Options: M3_GainCaps, M3_C15sh, M3_C30sh, M3_C50sh, M3_C225ACsh, M3_C15pre
Example
>>> d.gaincaps C15pre, C30sh >>> d.gaincaps = M3_GainCaps.M3_C30sh >>> d.gaincaps C30sh >>> d.gaincaps = M3_GainCaps.M3_C30sh | M3_GainCaps.M3_C15sh >>> d.gaincaps C15sh, C30sh
- property gainmode
[Jungfrau] Detector gain mode. Enum: gainMode
Note
[Jungfrau] DYNAMIC, FORCE_SWITCH_G1, FORCE_SWITCH_G2, FIX_G1, FIX_G2, FIX_G0
CAUTION: Do not use FIX_G0 without caution, you can damage the detector!!!
- property gainmodelist
List of gainmode implemented for this detector.
- property gappixels
[Eiger][Jungfrau][Moench] Include Gap pixels in client data call back in Detecor api. Will not be in detector streaming, receiver file or streaming. Default is disabled.
- property gatedelay
[Mythen3] Gate Delay of all gate signals in auto and trigger mode (internal gating), accepts either a value in seconds, datetime.timedelta or DurationWrapper
Note
To specify gateIndex, use getGateDelay or setGateDelay.
- getter
always returns in seconds. To get in DurationWrapper, use getGateDelayForAllGates or getGateDelay(gateIndex)
Example
>>> # setting directly in seconds >>> d.gatedelay = 1.05 >>> >>> # setting directly in seconds >>> d.gatedelay = 5e-07 >>> >>> # using timedelta (up to microseconds precision) >>> from datatime import timedelta >>> d.gatedelay = timedelta(seconds = 1, microseconds = 3) >>> >>> # using DurationWrapper to set in seconds >>> from slsdet import DurationWrapper >>> d.gatedelay = DurationWrapper(1.2) >>> >>> # using DurationWrapper to set in ns >>> t = DurationWrapper() >>> t.set_count(500) >>> d.gatedelay = t >>> >>> # to get in seconds >>> d.gatedelay 181.23 >>> >>> d.getExptimeForAllGates() sls::DurationWrapper(total_seconds: 181.23 count: 181230000000)
- property gates
[Mythen3] Number of external gates in gating or trigger_gating mode (external gating).
- getADCClock(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getADCConfiguration(self: _slsdet.CppDetectorApi, arg0: int, arg1: int, arg2: List[int] = []) List[int]
- getADCEnableMask(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getADCInvert(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getADCPhase(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getADCPhaseInDegrees(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getADCPipeline(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getADCVpp(self: _slsdet.CppDetectorApi, arg0: bool = False, arg1: List[int] = []) List[int]
- getAcquisitionIndex(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getActive(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[bool]
- getActualTime(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[DurationWrapper]
- getAdcIndex(self: _slsdet.CppDetectorApi, arg0: str) int
- getAdcName(self: _slsdet.CppDetectorApi, arg0: int) str
- getAdcNames(self: _slsdet.CppDetectorApi) List[str]
- getAdditionalJsonHeader(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[Dict[str, str]]
- getAdditionalJsonParameter(self: _slsdet.CppDetectorApi, arg0: str, arg1: List[int] = []) List[str]
- getAllThresholdEnergy(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[Annotated[List[int], FixedSize(3)]]
- getAllTrimbits(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getAnalogPulsing(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[bool]
- getAutoComparatorDisable(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[bool]
- getBadChannels(*args, **kwargs)
Overloaded function.
getBadChannels(self: _slsdet.CppDetectorApi, arg0: str, arg1: List[int] = []) -> None
getBadChannels(self: _slsdet.CppDetectorApi, arg0: List[int] = []) -> List[List[int]]
- getBit(self: _slsdet.CppDetectorApi, arg0: int, arg1: int, arg2: List[int] = []) List[int]
- getBurstMode(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[_slsdet.slsDetectorDefs.burstMode]
- getBurstPeriod(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[DurationWrapper]
- getCDSGain(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[bool]
- getChipStatusRegister(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getChipVersion(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[float]
- getClientVersion(self: _slsdet.CppDetectorApi) str
- getClientZmqHwm(self: _slsdet.CppDetectorApi) int
- getClientZmqIp(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[sls::IpAddr]
- getClientZmqPort(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getClockDivider(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) List[int]
- getClockFrequency(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) List[int]
- getClockPhase(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) List[int]
- getClockPhaseinDegrees(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) List[int]
- getColumn(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getComparatorDisableTime(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[DurationWrapper]
- getControlPort(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getCounterMask(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getCurrentSource(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[slsDetectorDefs::currentSrcParameters]
- getDAC(self: _slsdet.CppDetectorApi, arg0: _slsdet.slsDetectorDefs.dacIndex, arg1: bool = False, arg2: List[int] = []) List[int]
- getDBITClock(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getDBITPhase(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getDBITPhaseInDegrees(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getDBITPipeline(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getDacIndex(self: _slsdet.CppDetectorApi, arg0: str) _slsdet.slsDetectorDefs.dacIndex
- getDacList(self: _slsdet.CppDetectorApi) List[_slsdet.slsDetectorDefs.dacIndex]
- getDacName(self: _slsdet.CppDetectorApi, arg0: _slsdet.slsDetectorDefs.dacIndex) str
- getDacNames(self: _slsdet.CppDetectorApi) List[str]
- getDataStream(self: _slsdet.CppDetectorApi, arg0: _slsdet.slsDetectorDefs.portPosition, arg1: List[int] = []) List[bool]
- getDefaultDac(*args, **kwargs)
Overloaded function.
getDefaultDac(self: _slsdet.CppDetectorApi, arg0: _slsdet.slsDetectorDefs.dacIndex, arg1: List[int] = []) -> List[int]
getDefaultDac(self: _slsdet.CppDetectorApi, arg0: _slsdet.slsDetectorDefs.dacIndex, arg1: _slsdet.slsDetectorDefs.detectorSettings, arg2: List[int] = []) -> List[int]
- getDelayAfterTrigger(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[DurationWrapper]
- getDelayAfterTriggerLeft(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[DurationWrapper]
- getDestinationUDPIP(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[sls::IpAddr]
- getDestinationUDPIP2(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[sls::IpAddr]
- getDestinationUDPList(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) List[sls::UdpDestination]
- getDestinationUDPMAC(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[sls::MacAddr]
- getDestinationUDPMAC2(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[sls::MacAddr]
- getDestinationUDPPort(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getDestinationUDPPort2(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getDetectorLock(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[bool]
- getDetectorServerVersion(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[str]
- getDetectorSize(self: _slsdet.CppDetectorApi) _slsdet.xy
- getDetectorStatus(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[_slsdet.slsDetectorDefs.runStatus]
- getDetectorType(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[_slsdet.slsDetectorDefs.detectorType]
- getDigitalPulsing(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[bool]
- getDynamicRange(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getDynamicRangeList(self: _slsdet.CppDetectorApi) List[int]
- getExptime(*args, **kwargs)
Overloaded function.
getExptime(self: _slsdet.CppDetectorApi, arg0: List[int] = []) -> List[DurationWrapper]
getExptime(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) -> List[DurationWrapper]
- getExptimeForAllGates(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[Annotated[List[DurationWrapper], FixedSize(3)]]
- getExptimeLeft(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[DurationWrapper]
- getExternalSampling(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[bool]
- getExternalSamplingSource(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getExternalSignalFlags(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) List[_slsdet.slsDetectorDefs.externalSignalFlag]
- getFileFormat(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[_slsdet.slsDetectorDefs.fileFormat]
- getFileNamePrefix(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[str]
- getFileOverWrite(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[bool]
- getFilePath(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[str]
- getFileWrite(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[bool]
- getFilterResistor(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getFirmwareVersion(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getFirstUDPDestination(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getFlipRows(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[bool]
- getFramesCaught(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[List[int]]
- getFramesPerFile(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getFrontEndFirmwareVersion(self: _slsdet.CppDetectorApi, arg0: _slsdet.slsDetectorDefs.fpgaPosition, arg1: List[int] = []) List[int]
- getGainCaps(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getGainMode(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[_slsdet.slsDetectorDefs.gainMode]
- getGainModeList(self: _slsdet.CppDetectorApi) List[_slsdet.slsDetectorDefs.gainMode]
- getGapPixelsinCallback(self: _slsdet.CppDetectorApi) bool
- getGateDelay(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) List[DurationWrapper]
- getGateDelayForAllGates(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[Annotated[List[DurationWrapper], FixedSize(3)]]
- getHardwareVersion(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[str]
- getHighVoltage(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getHostname(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[str]
- getImageTestMode(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getIndividualRxROIs(self: _slsdet.CppDetectorApi, arg0: List[int]) List[slsDetectorDefs::ROI]
- getInitialChecks(self: _slsdet.CppDetectorApi) bool
- getInjectChannel(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[Annotated[List[int], FixedSize(2)]]
- getInterpolation(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[bool]
- getInterruptSubframe(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[bool]
- getKernelVersion(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[str]
- getLEDEnable(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[bool]
- getLastClientIP(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[sls::IpAddr]
- getMaster(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[bool]
- getMasterFileWrite(self: _slsdet.CppDetectorApi) bool
- getMaxADCPhaseShift(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getMaxClockPhaseShift(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) List[int]
- getMaxDBITPhaseShift(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getMeasuredCurrent(self: _slsdet.CppDetectorApi, arg0: _slsdet.slsDetectorDefs.dacIndex, arg1: List[int] = []) List[int]
- getMeasuredPeriod(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[DurationWrapper]
- getMeasuredPower(self: _slsdet.CppDetectorApi, arg0: _slsdet.slsDetectorDefs.dacIndex, arg1: List[int] = []) List[int]
- getMeasuredSubFramePeriod(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[DurationWrapper]
- getMeasurementTime(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[DurationWrapper]
- getModuleGeometry(self: _slsdet.CppDetectorApi) _slsdet.xy
- getModuleId(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getModuleSize(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[_slsdet.xy]
- getNextFrameNumber(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getNumMissingPackets(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[List[int]]
- getNumberOfAdditionalStorageCells(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getNumberOfAnalogSamples(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getNumberOfBursts(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getNumberOfBurstsLeft(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getNumberOfDigitalSamples(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getNumberOfFilterCells(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getNumberOfFrames(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getNumberOfFramesFromStart(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getNumberOfFramesLeft(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getNumberOfGates(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getNumberOfTransceiverSamples(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getNumberOfTriggers(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getNumberOfTriggersLeft(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getNumberofUDPDestinations(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getNumberofUDPInterfaces(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getOnChipDAC(self: _slsdet.CppDetectorApi, arg0: _slsdet.slsDetectorDefs.dacIndex, arg1: int, arg2: List[int] = []) List[int]
- getOverFlowMode(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[bool]
- getPackageVersion(self: _slsdet.CppDetectorApi) str
- getParallelMode(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[bool]
- getPartialFramesPadding(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[bool]
- getPartialReset(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[bool]
- getPatterFileName(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[str]
- getPatternBitMask(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getPatternIOControl(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getPatternLoopAddresses(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) List[Annotated[List[int], FixedSize(2)]]
- getPatternLoopCycles(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) List[int]
- getPatternMask(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getPatternWaitAddr(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) List[int]
- getPatternWaitTime(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) List[int]
- getPatternWord(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) List[int]
- getPedestalMode(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[slsDetectorDefs::pedestalParameters]
- getPeriod(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[DurationWrapper]
- getPeriodLeft(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[DurationWrapper]
- getPolarity(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[_slsdet.slsDetectorDefs.polarity]
- getPower(self: _slsdet.CppDetectorApi, arg0: _slsdet.slsDetectorDefs.dacIndex, arg1: List[int] = []) List[int]
- getPowerChip(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[bool]
- getPowerIndex(self: _slsdet.CppDetectorApi, arg0: str) _slsdet.slsDetectorDefs.dacIndex
- getPowerList(self: _slsdet.CppDetectorApi) List[_slsdet.slsDetectorDefs.dacIndex]
- getPowerName(self: _slsdet.CppDetectorApi, arg0: _slsdet.slsDetectorDefs.dacIndex) str
- getPowerNames(self: _slsdet.CppDetectorApi) List[str]
- getPumpProbe(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[bool]
- getQuad(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[bool]
- getROI(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[slsDetectorDefs::ROI]
- getRUNClock(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getRateCorrection(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[DurationWrapper]
- getReadNRows(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getReadoutMode(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[_slsdet.slsDetectorDefs.readoutMode]
- getReadoutSpeed(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[_slsdet.slsDetectorDefs.speedLevel]
- getReadoutSpeedList(self: _slsdet.CppDetectorApi) List[_slsdet.slsDetectorDefs.speedLevel]
- getReceiverStatus(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[_slsdet.slsDetectorDefs.runStatus]
- getReceiverVersion(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[str]
- getRow(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getRxArping(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[bool]
- getRxCurrentFrameIndex(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[List[int]]
- getRxDbitList(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[List[int]]
- getRxDbitOffset(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getRxFifoDepth(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getRxFrameDiscardPolicy(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[_slsdet.slsDetectorDefs.frameDiscardPolicy]
- getRxHostname(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[str]
- getRxLastClientIP(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[sls::IpAddr]
- getRxLock(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[bool]
- getRxPort(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getRxROI(self: _slsdet.CppDetectorApi) slsDetectorDefs::ROI
- getRxRealUDPSocketBufferSize(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getRxSilentMode(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[bool]
- getRxThreadIds(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[Annotated[List[int], FixedSize(9)]]
- getRxUDPSocketBufferSize(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getRxZmqDataStream(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[bool]
- getRxZmqFrequency(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getRxZmqHwm(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getRxZmqIP(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[sls::IpAddr]
- getRxZmqPort(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getRxZmqStartingFrame(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getRxZmqTimer(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getSYNCClock(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getScan(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[slsDetectorDefs::scanParameters]
- getScanErrorMessage(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[str]
- getSelectedUDPInterface(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getSerialNumber(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getSettings(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[_slsdet.slsDetectorDefs.detectorSettings]
- getSettingsList(self: _slsdet.CppDetectorApi) List[_slsdet.slsDetectorDefs.detectorSettings]
- getSettingsPath(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[str]
- getShmId(self: _slsdet.CppDetectorApi) int
- getSignalIndex(self: _slsdet.CppDetectorApi, arg0: str) int
- getSignalName(self: _slsdet.CppDetectorApi, arg0: int) str
- getSignalNames(self: _slsdet.CppDetectorApi) List[str]
- getSlowADC(self: _slsdet.CppDetectorApi, arg0: _slsdet.slsDetectorDefs.dacIndex, arg1: List[int] = []) List[int]
- getSlowADCIndex(self: _slsdet.CppDetectorApi, arg0: str) _slsdet.slsDetectorDefs.dacIndex
- getSlowADCList(self: _slsdet.CppDetectorApi) List[_slsdet.slsDetectorDefs.dacIndex]
- getSlowADCName(self: _slsdet.CppDetectorApi, arg0: _slsdet.slsDetectorDefs.dacIndex) str
- getSlowADCNames(self: _slsdet.CppDetectorApi) List[str]
- getSourceUDPIP(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[sls::IpAddr]
- getSourceUDPIP2(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[sls::IpAddr]
- getSourceUDPMAC(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[sls::MacAddr]
- getSourceUDPMAC2(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[sls::MacAddr]
- getStopPort(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getStorageCellDelay(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[DurationWrapper]
- getStorageCellStart(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getSubDeadTime(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[DurationWrapper]
- getSubExptime(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[DurationWrapper]
- getSynchronization(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[bool]
- getTemperature(self: _slsdet.CppDetectorApi, arg0: _slsdet.slsDetectorDefs.dacIndex, arg1: List[int] = []) List[int]
- getTemperatureControl(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[bool]
- getTemperatureEvent(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getTemperatureList(self: _slsdet.CppDetectorApi) List[_slsdet.slsDetectorDefs.dacIndex]
- getTenGiga(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[bool]
- getTenGigaADCEnableMask(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getTenGigaFlowControl(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[bool]
- getThresholdEnergy(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getThresholdTemperature(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getTimingMode(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[_slsdet.slsDetectorDefs.timingMode]
- getTimingModeList(self: _slsdet.CppDetectorApi) List[_slsdet.slsDetectorDefs.timingMode]
- getTimingSource(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[_slsdet.slsDetectorDefs.timingSourceType]
- getTop(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[bool]
- getTransceiverEnableMask(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getTransmissionDelay(self: _slsdet.CppDetectorApi) int
- getTransmissionDelayFrame(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getTransmissionDelayLeft(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getTransmissionDelayRight(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[int]
- getTrimEnergies(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[List[int]]
- getUpdateMode(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[bool]
- getUseReceiverFlag(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[bool]
- getUserDetails(self: _slsdet.CppDetectorApi) str
- getVeto(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[bool]
- getVetoAlgorithm(self: _slsdet.CppDetectorApi, arg0: _slsdet.slsDetectorDefs.streamingInterface, arg1: List[int] = []) List[_slsdet.slsDetectorDefs.vetoAlgorithm]
- getVetoPhoton(self: _slsdet.CppDetectorApi, arg0: int, arg1: str, arg2: List[int] = []) None
- getVetoStream(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[_slsdet.slsDetectorDefs.streamingInterface]
- property hardwareversion
[Jungfrau][Moench][Gotthard2][Myhten3][Gotthard][Ctb] Hardware version of detector.
[Eiger] Hardware version of front FPGA on detector.
- property highvoltage
High voltage to the sensor in Voltage.
Note
[Gotthard] 0, 90, 110, 120, 150, 180, 200
[Eiger][Mythen3][Gotthard2] 0 - 200
[Jungfrau][Moench][Ctb] 0, 60 - 200
- property hostname
Frees shared memory and sets hostname (or IP address) of all modules concatenated by + Virtual servers can already use the port in hostname separated by ‘:’ and ports incremented by 2 to accomodate the stop server as well.
Example
>>> d.hostname = 'beb031+beb032+' >>> d.hostname = 'localhost:1912+localhost:1914+' >>> d.hostname ['localhost']
- property im_a
[Ctb] Measured current of power supply a in mA.
- Setter
Not implemented
- property im_b
[Ctb] Measured current of power supply b in mA.
- Setter
Not implemented
- property im_c
[Ctb] Measured current of power supply c in mA.
- Setter
Not implemented
- property im_d
[Ctb] Measured current of power supply d in mA.
- Setter
Not implemented
- property im_io
[Ctb] Measured current of power supply io in mA.
- Setter
Not implemented
- property initialchecks
Enable or disable intial compatibility and other checks at detector start up.
Note
It is enabled by default. Must come before ‘hostname’ command to take effect.
Can be used to reprogram fpga when current firmware is incompatible.
Advanced user function!
- property interpolation
[Mythen3] Enable or disable interpolation. interpolation mode enables all counters and disables vth3. Disabling sets back counter mask and vth3.
- property interruptsubframe
[Eiger] Enable last subframe interrupt at required exposure time. Disabling will wait for last sub frame to finish exposing. Default is disabled.
- isVirtualDetectorServer(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[bool]
- property kernelversion
Kernel version on the detector including time and date
Example
>>> d.kernelversion '#37 PREEMPT Thu Oct 13 14:51:04 CEST 2016'
- property lastclient
Get Client IP Address that last communicated with the detector.
- property led
[Ctb] Switches on/off all LEDs. Default is enabled.
- loadConfig(self: _slsdet.CppDetectorApi, arg0: str) None
- loadDefaultPattern(self: _slsdet.CppDetectorApi, arg0: List[int] = []) None
- loadParameters(*args, **kwargs)
Overloaded function.
loadParameters(self: _slsdet.CppDetectorApi, arg0: str) -> None
loadParameters(self: _slsdet.CppDetectorApi, arg0: List[str]) -> None
- loadTrimbits(self: _slsdet.CppDetectorApi, arg0: str, arg1: List[int] = []) None
- property lock
Lock detector to one client IP, 1 locks, 0 unlocks. Default is unlocked.
- property master
[Eiger][Gotthard2][Jungfrau][Moench] Sets (half) module to master and other(s) to slaves.
[Gotthard][Gotthard2][Mythen3][Eiger][Jungfrau][Moench] Gets if the current (half) module is master.
- property maxadcphaseshift
[Jungfrau][Moench][CTB] Absolute maximum Phase shift of ADC clock.
- Setter
Not Implemented
- property maxclkphaseshift
[Gotthard2][Mythen3] Absolute maximum Phase shift of clocks.
- Setter
Not Implemented
Example
>>> d.maxclkphaseshift 0: 80 1: 80 2: 160 3: 80 4: 80
- property maxdbitphaseshift
[CTB][Jungfrau] Absolute maximum Phase shift of of the clock to latch digital bits.
- Setter
Not Implemented
- property measuredperiod
[Eiger] Measured frame period between last frame and previous one.
Note
Can be measured with minimum 2 frames in an acquisition.
- setter
Not implemented
- property measuredsubperiod
[Eiger] Measured sub frame period between last sub frame and previous one.
- Setter
Not implemented
- property module_geometry
- property module_size
[Eiger][Jungfrau][Moench][CTB] Next frame number. Stopping acquisition might result in different frame numbers for different modules.
- property nmod
Number of modules in shared memory.
- property numinterfaces
[Jungfrau][Moench][Gotthard2] Number of udp interfaces to stream data from detector. Default is 1.
Note
Also enables second interface in receiver for listening (Writes a file per interface if writing enabled).
Also restarts client and receiver zmq sockets if zmq streaming enabled.
[Gotthard2] second interface enabled to send veto information via 10Gbps for debugging. By default, if veto enabled, it is sent via 2.5 gbps interface.
- property overflow
[Eiger] Enable or disable show overflow flag in 32 bit mode. Default is disabled.
- property packageversion
Package version (git branch).
- property parallel
[Eiger][Mythen3][Gotthard2][Moench] Enable or disable the parallel readout mode of detector.
Note
[Mythen3] If exposure time is too short, acquisition will return with an ERROR and take fewer frames than expected. [Mythen3][Eiger][Moench] Default: Non parallel [Gotthard2] Default: parallel. Non parallel mode works only in continuous mode.
- property parameters
Sets detector measurement parameters to those contained in fname. Set up per measurement.
Note
Equivalent to config, but does not free shared memory.
- getter
Not implemented
- setter
loads parameters file
Example
>>> d.parameters = 'path/to/file.par'
- property partialreset
[Eiger] Sets up detector to do partial or complete reset at start of acquisition. 0 complete reset, 1 partial reset. Default is complete reset.
Note
Advanced Function!
- property patfname
[Ctb][Mythen3] Gets the pattern file name including path of the last pattern uploaded. Returns an empty if nothing was uploaded or via a server default file
- property patioctrl
[Ctb] 64 bit mask defining input (0) and output (1) signals.
Example
>>> d.patioctrl = 0x8f0effff6dbffdbf >>> hex(d.patioctrl) '0x8f0effff6dbffdbf'
- property patlimits
[Ctb][Mythen3] Limits (start and stop address) of complete pattern.
Example
>>> d.patlimits = [0x0, 0x18c] >>> d.patlimits [0, 396] >>> [hex(l) for l in d.patlimits] ['0x0', '0x18c']
- property patloop
[Ctb][Mythen3] Limits (start and stop address) of the loop provided.
Example
>>> d.patloop[0] = [5, 20] >>> d.patloop[0] [5, 20] >>> d.patloop 0: [5, 20] 1: [20, 4] 2: [30, 5]
- property patloop0
[Ctb][Mythen3] Limits (start and stop address) of loop 0.
Example
>>> d.patloop0 = [0x0, 0x18c] >>> d.patloop0 [0, 396] >>> [hex(l) for l in d.patloop0] ['0x0', '0x18c']
- property patloop1
[Ctb][Mythen3] Limits (start and stop address) of loop 1.
Example
>>> d.patloop1 = [0x0, 0x18c] >>> d.patloop1 [0, 396] >>> [hex(l) for l in d.patloop1] ['0x0', '0x18c']
- property patloop2
[Ctb][Mythen3] Limits (start and stop address) of loop 2.
Example
>>> d.patloop2 = [0x0, 0x18c] >>> d.patloop2 [0, 396] >>> [hex(l) for l in d.patloop2] ['0x0', '0x18c']
- property patmask
[Ctb][Mythen3] Selects the bits that will have a pattern mask applied to the selected patmask for every pattern.
Example
>>> d.patmask = 0x8f0effff6dbffdbf >>> hex(d.patmask) '0x8f0effff6dbffdbf'
- property patnloop
[Ctb][Mythen3] Number of cycles of the loop provided.
Example
>>> d.patnloop[0] = 5 >>> d.patnloop[0] 5 >>> d.patnloop 0: 5 1: 20 2: 30
- property patnloop0
[Ctb][Mythen3] Number of cycles of loop 0.
- property patnloop1
[Ctb][Mythen3] Number of cycles of loop 1.
- property patnloop2
[Ctb][Mythen3] Number of cycles of loop 2.
- property patsetbit
[Ctb][Mythen3] Sets the mask applied to every pattern to the selected bits.
Example
>>> d.patsetbit = 0x8f0effff6dbffdbf >>> hex(d.patsetbit) '0x8f0effff6dbffdbf'
- property pattern
[Mythen3][Ctb] Loads ASCII pattern file directly to server (instead of executing line by line).
- Getter
Not Implemented
Example
>>> d.pattern = '/tmp/pat.txt'
- property patwait
[Ctb][Mythen3] Wait address of loop level provided.
Example
>>> d.patwait[0] = 5 >>> d.patwait[0] 5 >>> d.patwait 0: 5 1: 20 2: 30
- property patwait0
[Ctb][Mythen3] Wait 0 address.
Example
>>> d.patwait0 = 0xaa >>> d.patwait0 170 >>> hex(d.patwait0) '0xaa'
- property patwait1
[Ctb][Mythen3] Wait 1 address.
Example
>>> d.patwait1 = 0xaa >>> d.patwait1 170 >>> hex(d.patwait1) '0xaa'
- property patwait2
[Ctb][Mythen3] Wait 2 address.
Example
>>> d.patwait2 = 0xaa >>> d.patwait2 170 >>> hex(d.patwait2) '0xaa'
- property patwaittime
[Ctb][Mythen3] Wait time in clock cycles of loop level provided.
Example
>>> d.patwaittime[0] = 5 >>> d.patwaittime[0] 5 >>> d.patwaittime 0: 5 1: 20 2: 30
- property patwaittime0
[Ctb][Mythen3] Wait 0 time in clock cycles.
- property patwaittime1
[Ctb][Mythen3] Wait 1 time in clock cycles.
- property patwaittime2
[Ctb][Mythen3] Wait 2 time in clock cycles.
- property pedestalmode
[Jungfrau] Enables or disables pedestal mode. Pass in a pedestalParameters object see python/examples/use_pedestalmode.py
Note
The number of frames or triggers is overwritten by #pedestal_frames x pedestal_loops x 2.
In auto timing mode or in trigger mode with #frames > 1, #frames is overwritten and #triggers = 1, else #triggers is overwritten and #frames = 1.
One cannot set #frames, #triggers or timing mode in pedestal mode (exception thrown).
Disabling pedestal mode will set back the normal mode values of #frames and #triggers.”
- property period
Period between frames, accepts either a value in seconds or datetime.timedelta
- Getter
always returns in seconds. To get in DurationWrapper, use getPeriod
Example
>>> # setting directly in seconds >>> d.period = 1.05 >>> >>> # setting directly in seconds >>> d.period = 5e-07 >>> >>> # using timedelta (up to microseconds precision) >>> from datatime import timedelta >>> d.period = timedelta(seconds = 1, microseconds = 3) >>> >>> # using DurationWrapper to set in seconds >>> from slsdet import DurationWrapper >>> d.period = DurationWrapper(1.2) >>> >>> # using DurationWrapper to set in ns >>> t = DurationWrapper() >>> t.set_count(500) >>> d.period = t >>> >>> # to get in seconds >>> d.period 181.23 >>> >>> d.getExptime() sls::DurationWrapper(total_seconds: 181.23 count: 181230000000)
- property periodl
[Gotthard][Jungfrau][Moench][CTB][Mythen3][Gotthard2] Period left for current frame.
Note
[Gotthard2] only in continuous mode.
- getter
always returns in seconds. To get in DurationWrapper, use getPeriodLeft
- setter
Not Implemented
Example
>>> d.periodl 181.23 >>> d.getPeriodLeft() [sls::DurationWrapper(total_seconds: 181.23 count: 181230000000)]
- property polarity
[Mythen3] Set positive or negative polarity. Enum: polarity
- property port
Port number of the control server on detector for detector-client tcp interface.
Note
Default is 1952. Normally unchanged.
Set different ports for virtual servers on same pc.
- property powerchip
[Jungfrau][Moench][Mythen3][Gotthard2] Power the chip.
Note
[Jungfrau][Moench] Default is disabled. Get will return power status. Can be off if temperature event occured (temperature over temp_threshold with temp_control enabled. Will configure chip (only chip v1.1).
[Mythen3][Gotthard2] Default is 1. If module not connected or wrong module, powerchip will fail.
- property powerlist
[Chiptestboard] List of names for every power for this board. 5 power supply
- property powervalues
[Chiptestboard] Gets the power values for every power for this detector.
- printRxConfiguration(self: _slsdet.CppDetectorApi, arg0: List[int] = []) List[str]
- programFPGA(self: _slsdet.CppDetectorApi, arg0: str, arg1: bool, arg2: List[int] = []) None
- pulseChip(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) None
- pulsePixel(self: _slsdet.CppDetectorApi, arg0: int, arg1: _slsdet.xy, arg2: List[int] = []) None
- pulsePixelNMove(self: _slsdet.CppDetectorApi, arg0: int, arg1: _slsdet.xy, arg2: List[int] = []) None
- property pumpprobe
[Mythen3] Enable or disable pump probe mode. Pump probe mode only enables vth2. Disabling sets back to previous value
- property quad
[Eiger] Sets detector size to a quad. 0 (disabled) is default. (Specific hardware required).
- property ratecorr
[Eiger] Custom dead time correction constant in ns. 0 will unset rate correction.
Note
To set default rate correction from trimbit file, use setDefaultRateCorrection
Known Issue:
- getter
Always give 0 due to the microseconds precision.
- setter
Use scientific notation to set custom rate correction, since timedelta resolution is 1 microseconds.
Or use setDefaultRateCorrection to set the default one from trimbit file
Example
>>> d.ratecorr = 10e-9 >>> d.setDefaultRateCorrection() >>> d.ratecorr = 0.0
- readRegister(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) List[int]
- property readnrows
[Eiger] Number of rows to read out per half module starting from the centre. [Jungfrau][Moench] Number of rows to read per module starting from the centre.
Note
[Eiger] Options: 1 - 256. 256 is default.
[Eiger]The permissible values depend on dynamic range and 10Gbe enabled.
[Jungfrau][Moench] Options: 8 - 512 (multiples of 8)
- readout()
[Mythen3] Starts detector readout. Status changes to TRANSMITTING and automatically returns to idle at the end of readout.
- property readoutspeed
[Eiger][Jungfrau|Gotthard2] Readout speed of chip. Enum: speedLevel
Note
[Jungfrau][Moench] FULL_SPEED, HALF_SPEED (Default), QUARTER_SPEED [Eiger] FULL_SPEED (Default), HALF_SPEED, QUARTER_SPEED [Moench] FULL_SPEED (Default), HALF_SPEED, QUARTER_SPEED [Gottthard2] G2_108MHZ (Default), G2_144MHZ [Jungfrau] FULL_SPEED option only available from v2.0 boards and is recommended to set number of interfaces to 2.
Also overwrites adcphase to recommended default.
- property readoutspeedlist
List of readout speed levels implemented for this detector.
- rebootController(self: _slsdet.CppDetectorApi, arg0: List[int] = []) None
- reconfigureUDPDestination(self: _slsdet.CppDetectorApi, arg0: List[int] = []) None
- property reg
Reads/writes to a 32 bit register.
Note
Advanced user Function!
Goes to stop server. Hence, can be called while calling blocking acquire().
[Eiger] Address is +0x100 for only left, +0x200 for only right.
- registerAcquisitionFinishedCallback(self: _slsdet.CppDetectorApi, arg0: void (double, int, void*), arg1: capsule) None
- registerDataCallback(self: _slsdet.CppDetectorApi, arg0: void (sls::detectorData*, unsigned long, unsigned int, void*), arg1: capsule) None
- resetFPGA(self: _slsdet.CppDetectorApi, arg0: List[int] = []) None
- resetTemperatureEvent(self: _slsdet.CppDetectorApi, arg0: List[int] = []) None
- resetToDefaultDacs(self: _slsdet.CppDetectorApi, arg0: bool, arg1: List[int] = []) None
- resetdacs(use_hardware_values)
- property romode
[CTB] Readout mode of detector. Enum: readoutMode
Note
Options: ANALOG_ONLY, DIGITAL_ONLY, ANALOG_AND_DIGITAL, TRANSCEIVER_ONLY, DIGITAL_AND_TRANSCEIVER Default: ANALOG_ONLY
Example
>>> d.romode = readoutMode.ANALOG_ONLY >>> d.romode readoutMode.ANALOG_ONLY
- property row
Set Detector row (udp header) to value. Gui uses it to rearrange for complete image.
- property runclk
[Ctb] Run clock in MHz.
- property runtime
[Jungfrau][Moench][Mythen3][Gotthard2][CTB] Time from detector start up.
Note
[Gotthard2] not in burst and auto mode.
- property rx_arping
Starts a thread in slsReceiver to arping the interface it is listening every minute. Useful in 10G mode.
- property rx_dbitlist
[Ctb] List of digital signal bits read out.
Note
Each element in list can be 0 - 63 and must be non repetitive.
Example
>>> d.rxdbitlist = [0, 1, 61, 9] >>> d.rxdbitlist [0, 1, 61, 9] >>> d.rxdbitlist = [] >>> d.rxdbitlist []
- property rx_dbitoffset
[Ctb] Offset in bytes in digital data to skip in receiver.
- property rx_discardpolicy
Frame discard policy of receiver. Enum: frameDiscardPolicy
Note
Options: NO_DISCARD, DISCARD_EMPTY_FRAMES, DISCARD_PARTIAL_FRAMES
Default: NO_DISCARD
DISCARD_PARTIAL_FRAMES is the fastest.
Example
>>> d.rx_discardpolicy = frameDiscardPolicy.NO_DISCARD >>> d.rx_discardpolicy frameDiscardPolicy.NO_DISCARD
- property rx_fifodepth
Sets the number of frames in the receiver fifo depth (buffer between listener and writer threads).
- property rx_frameindex
Current frame index received for each port in receiver during acquisition.
- property rx_framescaught
Number of frames caught by each port in receiver.
- property rx_framesperfile
Sets the number of frames per file in receiver in an acquisition.
Note
Default: depends on detector type.
0 is infinite or all frames in single file.
- property rx_hostname
Sets receiver hostname or IP address. Used for TCP control communication between client and receiver to configure receiver. Also updates receiver with detector parameters.
Note
Also resets any prior receiver property (not on detector).
Can concatenate receiver hostnames for every module.
If port included, then its the receiver tcp port for every receiver hostname.
Example
>>> d.rx_hostname 'mpc1922' >>> d.rx_hostname = 'mpc1922' >>> d.rx_hostname = 'mpc1922:2000' >>> d.rx_hostname = 'mpc1922:2000+mpc1922:2002' >>> d.rx_hostname 'mpc1922' >>> d.rx_tcpport [2000, 2002]
- property rx_jsonaddheader
Additional json header to be streamed out from receiver via zmq.
Note
Default is empty. Max 20 characters for each key/value
Use only if to be processed by an intermediate user process listening to receiver zmq packets, such as Moench
Empty value deletes header.
Example
>>> d.rx_jsonaddheader {} >>> d.rx_jsonaddheader = {"key1": "value1", "key2":"value2"} >>> d.rx_jsonaddheader {'emax': '30', 'emin': '50'}
- property rx_jsonpara
Set the receiver additional json parameter.
Note
Use only if to be processed by an intermediate user process listening to receiver zmq packets, such as Moench
If not found, the pair is appended. Empty value deletes parameter. Max 20 characters for each key/value.
On setting the value is automatically, it is converted to a string.
Example
>>> d.rx_jsonpara['emin'] '4500' >>> d.rx_jsonpara['emin'] = 5000 >>> d.rx_jsonpara emax: 30 emin: 5000
- property rx_lastclient
Client IP Address that last communicated with the receiver.
- property rx_lock
Lock receiver to one client IP, 1 locks, 0 unlocks. Default is unlocked.
- property rx_missingpackets
Gets the number of missing packets for each port in receiver. Negative number denotes extra packets.
- property rx_padding
Partial frames padding enable in the receiver.
Note
Default: enabled
Disabling is fastest.
- property rx_realudpsocksize
Gets actual udp socket buffer size. Double the size of rx_udpsocksize due to kernel bookkeeping.
- property rx_silent
When enabled, switches off receiver text output during acquisition.
- rx_start()
Starts receiver listener for detector data packets and create a data file (if file write enabled).
- property rx_status
Gets receiver listener status. Enum: runStatus
Note
Options: IDLE, TRANSMITTING, RUNNING >>> d.rx_status runStatus.IDLE
- rx_stop()
Stops receiver listener for detector data packets and closes current data file (if file write enabled).
- property rx_tcpport
TCP port for client-receiver communication.
Note
Default is 1954.
Must be different if multiple receivers on same pc.
Must be first command to set a receiver parameter to be able to communicate.
Multi command will automatically increment port for individual modules, which must be set via setRxPort.
Example
>>> d.rx_tcpport 2010 >>> d.rx_tcpport [2000, 2002]
- property rx_threads
Get kernel thread ids from the receiver in order of [parent, tcp, listener 0, processor 0, streamer 0, listener 1, processor 1, streamer 1, arping].
Note
If no streamer yet or there is no second interface, it gives 0 in its place.
- setter
Not Implemented
- property rx_udpsocksize
INT_MAX/2.
- Type
UDP socket buffer size in receiver. Tune rmem_default and rmem_max accordingly. Max size
- property rx_version
Receiver version
- property rx_zmqfreq
Frequency of frames streamed out from receiver via zmq.
Note
Default: 1, Means every frame is streamed out.
If 2, every second frame is streamed out.
If 0, streaming timer is the timeout, after which current frame is sent out. (default timeout is 200 ms). Usually used for gui purposes.
- property rx_zmqhwm
Receiver’s zmq send high water mark. Default is the zmq library’s default (1000). This is a high number and can be set to 2 for gui purposes. One must also set the client’s receive high water mark to similar value. Final effect is sum of them. Also restarts receiver zmq streaming if enabled. Can set to -1 to set default value.
- property rx_zmqip
Zmq Ip Address from which data is to be streamed out of the receiver.
Note
Also restarts receiver zmq streaming if enabled.
Default is from rx_hostname.
Modified only when using an intermediate process after receiver.
Example
>>> d.rx_zmqip 192.168.0.101 >>> d.rx_zmqip = '192.168.0.101'
- property rx_zmqport
Zmq port for data to be streamed out of the receiver.
Note
Also restarts receiver zmq streaming if enabled.
Default is 30001.
Must be different for every detector (and udp port).
Multi command will automatically increment for individual modules, use setRxZmqPort.
Example
>>> d.rx_zmqport [30001, 30002, 30003, 300004] >>> d.rx_zmqport = 30001 >>> d.rx_zmqport = [30001, 30005] #Set ports for the two first detectors
- property rx_zmqstartfnum
The starting frame index to stream out.
Note
0 by default, which streams the first frame in an acquisition, and then depending on the rx zmq frequency/ timer.
- property rx_zmqstream
Enable/ disable data streaming from receiver via zmq (eg. to GUI or to another process for further processing).
This creates/ destroys zmq streamer threads in receiver.
Switching to Gui automatically enables data streaming in receiver.
Switching back to command line acquire will require disabling data streaming in receiver for fast applications.
- property samples
[CTB] Number of samples (only analog) expected.
- savePattern(self: _slsdet.CppDetectorApi, arg0: str) None
- saveTrimbits(self: _slsdet.CppDetectorApi, arg0: str, arg1: List[int] = []) None
- property scan
Pass in a scanParameters object see python/examples/use_scan.py
- property scanerrmsg
Gets Scan error message if scan ended in error for non blocking acquisitions.
- selectUDPInterface(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) None
- property selinterface
[Jungfrau][Moench] The udp interface to stream data from detector.
Note
Effective only when number of interfaces is 1. Default: 0 (outer). Inner is 1.
- sendSoftwareTrigger(self: _slsdet.CppDetectorApi, arg0: bool = False, arg1: List[int] = []) None
- property serialnumber
Jungfrau][Gotthard][Mythen3][Gotthard2][CTB][Moench] Serial number of detector
- setADCClock(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) None
- setADCConfiguration(self: _slsdet.CppDetectorApi, arg0: int, arg1: int, arg2: int, arg3: List[int] = []) None
- setADCEnableMask(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) None
- setADCInvert(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) None
- setADCPhase(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) None
- setADCPhaseInDegrees(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) None
- setADCPipeline(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) None
- setADCVpp(self: _slsdet.CppDetectorApi, arg0: int, arg1: bool = False, arg2: List[int] = []) None
- setAcquisitionIndex(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) None
- setActive(self: _slsdet.CppDetectorApi, arg0: bool, arg1: List[int] = []) None
- setAdcName(self: _slsdet.CppDetectorApi, arg0: int, arg1: str) None
- setAdcNames(self: _slsdet.CppDetectorApi, arg0: List[str]) None
- setAdditionalJsonHeader(self: _slsdet.CppDetectorApi, arg0: Dict[str, str], arg1: List[int] = []) None
- setAdditionalJsonParameter(self: _slsdet.CppDetectorApi, arg0: str, arg1: str, arg2: List[int] = []) None
- setAllTrimbits(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) None
- setAnalogPulsing(self: _slsdet.CppDetectorApi, arg0: bool, arg1: List[int] = []) None
- setAutoComparatorDisable(self: _slsdet.CppDetectorApi, arg0: bool, arg1: List[int] = []) None
- setBadChannels(*args, **kwargs)
Overloaded function.
setBadChannels(self: _slsdet.CppDetectorApi, arg0: str, arg1: List[int] = []) -> None
setBadChannels(self: _slsdet.CppDetectorApi, arg0: List[int], arg1: List[int] = []) -> None
setBadChannels(self: _slsdet.CppDetectorApi, arg0: List[List[int]]) -> None
- setBit(self: _slsdet.CppDetectorApi, arg0: int, arg1: int, arg2: List[int] = []) None
- setBurstMode(self: _slsdet.CppDetectorApi, arg0: _slsdet.slsDetectorDefs.burstMode, arg1: List[int] = []) None
- setBurstPeriod(self: _slsdet.CppDetectorApi, arg0: DurationWrapper, arg1: List[int] = []) None
- setCDSGain(self: _slsdet.CppDetectorApi, arg0: bool, arg1: List[int] = []) None
- setClientZmqHwm(self: _slsdet.CppDetectorApi, arg0: int) None
- setClientZmqIp(self: _slsdet.CppDetectorApi, arg0: sls::IpAddr, arg1: List[int] = []) None
- setClientZmqPort(self: _slsdet.CppDetectorApi, arg0: int, arg1: int = -1) None
- setClockDivider(self: _slsdet.CppDetectorApi, arg0: int, arg1: int, arg2: List[int] = []) None
- setClockPhase(self: _slsdet.CppDetectorApi, arg0: int, arg1: int, arg2: List[int] = []) None
- setClockPhaseinDegrees(self: _slsdet.CppDetectorApi, arg0: int, arg1: int, arg2: List[int] = []) None
- setColumn(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) None
- setComparatorDisableTime(self: _slsdet.CppDetectorApi, arg0: DurationWrapper, arg1: List[int] = []) None
- setControlPort(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) None
- setCounterMask(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) None
- setCurrentSource(self: _slsdet.CppDetectorApi, arg0: slsDetectorDefs::currentSrcParameters, arg1: List[int] = []) None
- setDAC(self: _slsdet.CppDetectorApi, arg0: _slsdet.slsDetectorDefs.dacIndex, arg1: int, arg2: bool = False, arg3: List[int] = []) None
- setDBITClock(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) None
- setDBITPhase(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) None
- setDBITPhaseInDegrees(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) None
- setDBITPipeline(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) None
- setDacName(self: _slsdet.CppDetectorApi, arg0: _slsdet.slsDetectorDefs.dacIndex, arg1: str) None
- setDacNames(self: _slsdet.CppDetectorApi, arg0: List[str]) None
- setDataStream(self: _slsdet.CppDetectorApi, arg0: _slsdet.slsDetectorDefs.portPosition, arg1: bool, arg2: List[int] = []) None
- setDefaultDac(*args, **kwargs)
Overloaded function.
setDefaultDac(self: _slsdet.CppDetectorApi, arg0: _slsdet.slsDetectorDefs.dacIndex, arg1: int, arg2: List[int] = []) -> None
setDefaultDac(self: _slsdet.CppDetectorApi, arg0: _slsdet.slsDetectorDefs.dacIndex, arg1: int, arg2: _slsdet.slsDetectorDefs.detectorSettings, arg3: List[int] = []) -> None
- setDefaultRateCorrection(self: _slsdet.CppDetectorApi, arg0: List[int] = []) None
- setDelayAfterTrigger(self: _slsdet.CppDetectorApi, arg0: DurationWrapper, arg1: List[int] = []) None
- setDestinationUDPIP(self: _slsdet.CppDetectorApi, arg0: sls::IpAddr, arg1: List[int] = []) None
- setDestinationUDPIP2(self: _slsdet.CppDetectorApi, arg0: sls::IpAddr, arg1: List[int] = []) None
- setDestinationUDPList(self: _slsdet.CppDetectorApi, arg0: sls::UdpDestination, arg1: int) None
- setDestinationUDPMAC(self: _slsdet.CppDetectorApi, arg0: sls::MacAddr, arg1: List[int] = []) None
- setDestinationUDPMAC2(self: _slsdet.CppDetectorApi, arg0: sls::MacAddr, arg1: List[int] = []) None
- setDestinationUDPPort(self: _slsdet.CppDetectorApi, arg0: int, arg1: int = -1) None
- setDestinationUDPPort2(self: _slsdet.CppDetectorApi, arg0: int, arg1: int = -1) None
- setDetectorLock(self: _slsdet.CppDetectorApi, arg0: bool, arg1: List[int] = []) None
- setDetectorSize(self: _slsdet.CppDetectorApi, arg0: _slsdet.xy) None
- setDigitalIODelay(self: _slsdet.CppDetectorApi, arg0: int, arg1: int, arg2: List[int] = []) None
- setDigitalPulsing(self: _slsdet.CppDetectorApi, arg0: bool, arg1: List[int] = []) None
- setDynamicRange(self: _slsdet.CppDetectorApi, arg0: int) None
- setExptime(*args, **kwargs)
Overloaded function.
setExptime(self: _slsdet.CppDetectorApi, arg0: DurationWrapper, arg1: List[int] = []) -> None
setExptime(self: _slsdet.CppDetectorApi, arg0: int, arg1: DurationWrapper, arg2: List[int] = []) -> None
- setExternalSampling(self: _slsdet.CppDetectorApi, arg0: bool, arg1: List[int] = []) None
- setExternalSamplingSource(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) None
- setExternalSignalFlags(self: _slsdet.CppDetectorApi, arg0: int, arg1: _slsdet.slsDetectorDefs.externalSignalFlag, arg2: List[int] = []) None
- setFileFormat(self: _slsdet.CppDetectorApi, arg0: _slsdet.slsDetectorDefs.fileFormat, arg1: List[int] = []) None
- setFileNamePrefix(self: _slsdet.CppDetectorApi, arg0: str, arg1: List[int] = []) None
- setFileOverWrite(self: _slsdet.CppDetectorApi, arg0: bool, arg1: List[int] = []) None
- setFilePath(self: _slsdet.CppDetectorApi, arg0: str, arg1: List[int] = []) None
- setFileWrite(self: _slsdet.CppDetectorApi, arg0: bool, arg1: List[int] = []) None
- setFilterResistor(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) None
- setFirstUDPDestination(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) None
- setFlipRows(self: _slsdet.CppDetectorApi, arg0: bool, arg1: List[int] = []) None
- setFramesPerFile(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) None
- setGainCaps(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) None
- setGainMode(self: _slsdet.CppDetectorApi, arg0: _slsdet.slsDetectorDefs.gainMode, arg1: List[int] = []) None
- setGapPixelsinCallback(self: _slsdet.CppDetectorApi, arg0: bool) None
- setGateDelay(self: _slsdet.CppDetectorApi, arg0: int, arg1: DurationWrapper, arg2: List[int] = []) None
- setHighVoltage(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) None
- setHostname(self: _slsdet.CppDetectorApi, arg0: List[str]) None
- setImageTestMode(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) None
- setInitialChecks(self: _slsdet.CppDetectorApi, arg0: bool) None
- setInjectChannel(self: _slsdet.CppDetectorApi, arg0: int, arg1: int, arg2: List[int] = []) None
- setInterpolation(self: _slsdet.CppDetectorApi, arg0: bool, arg1: List[int] = []) None
- setInterruptSubframe(self: _slsdet.CppDetectorApi, arg0: bool, arg1: List[int] = []) None
- setLEDEnable(self: _slsdet.CppDetectorApi, arg0: bool, arg1: List[int] = []) None
- setMaster(self: _slsdet.CppDetectorApi, arg0: bool, arg1: int) None
- setMasterFileWrite(self: _slsdet.CppDetectorApi, arg0: bool) None
- setNextFrameNumber(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) None
- setNumberOfAdditionalStorageCells(self: _slsdet.CppDetectorApi, arg0: int) None
- setNumberOfAnalogSamples(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) None
- setNumberOfBursts(self: _slsdet.CppDetectorApi, arg0: int) None
- setNumberOfDigitalSamples(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) None
- setNumberOfFilterCells(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) None
- setNumberOfFrames(self: _slsdet.CppDetectorApi, arg0: int) None
- setNumberOfGates(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) None
- setNumberOfTransceiverSamples(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) None
- setNumberOfTriggers(self: _slsdet.CppDetectorApi, arg0: int) None
- setNumberofUDPInterfaces(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) None
- setOnChipDAC(self: _slsdet.CppDetectorApi, arg0: _slsdet.slsDetectorDefs.dacIndex, arg1: int, arg2: int, arg3: List[int] = []) None
- setOverFlowMode(self: _slsdet.CppDetectorApi, arg0: bool, arg1: List[int] = []) None
- setParallelMode(self: _slsdet.CppDetectorApi, arg0: bool, arg1: List[int] = []) None
- setPartialFramesPadding(self: _slsdet.CppDetectorApi, arg0: bool, arg1: List[int] = []) None
- setPartialReset(self: _slsdet.CppDetectorApi, arg0: bool, arg1: List[int] = []) None
- setPattern(*args, **kwargs)
Overloaded function.
setPattern(self: _slsdet.CppDetectorApi, arg0: str, arg1: List[int] = []) -> None
setPattern(self: _slsdet.CppDetectorApi, arg0: sls::Pattern, arg1: List[int] = []) -> None
- setPatternBitMask(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) None
- setPatternIOControl(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) None
- setPatternLoopAddresses(self: _slsdet.CppDetectorApi, arg0: int, arg1: int, arg2: int, arg3: List[int] = []) None
- setPatternLoopCycles(self: _slsdet.CppDetectorApi, arg0: int, arg1: int, arg2: List[int] = []) None
- setPatternMask(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) None
- setPatternWaitAddr(self: _slsdet.CppDetectorApi, arg0: int, arg1: int, arg2: List[int] = []) None
- setPatternWaitTime(self: _slsdet.CppDetectorApi, arg0: int, arg1: int, arg2: List[int] = []) None
- setPatternWord(self: _slsdet.CppDetectorApi, arg0: int, arg1: int, arg2: List[int] = []) None
- setPedestalMode(self: _slsdet.CppDetectorApi, arg0: slsDetectorDefs::pedestalParameters, arg1: List[int] = []) None
- setPeriod(self: _slsdet.CppDetectorApi, arg0: DurationWrapper, arg1: List[int] = []) None
- setPolarity(self: _slsdet.CppDetectorApi, arg0: _slsdet.slsDetectorDefs.polarity, arg1: List[int] = []) None
- setPower(self: _slsdet.CppDetectorApi, arg0: _slsdet.slsDetectorDefs.dacIndex, arg1: int, arg2: List[int] = []) None
- setPowerChip(self: _slsdet.CppDetectorApi, arg0: bool, arg1: List[int] = []) None
- setPowerName(self: _slsdet.CppDetectorApi, arg0: _slsdet.slsDetectorDefs.dacIndex, arg1: str) None
- setPowerNames(self: _slsdet.CppDetectorApi, arg0: List[str]) None
- setPumpProbe(self: _slsdet.CppDetectorApi, arg0: bool, arg1: List[int] = []) None
- setQuad(self: _slsdet.CppDetectorApi, arg0: bool) None
- setROI(self: _slsdet.CppDetectorApi, arg0: slsDetectorDefs::ROI, arg1: int) None
- setRUNClock(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) None
- setRateCorrection(self: _slsdet.CppDetectorApi, arg0: DurationWrapper, arg1: List[int] = []) None
- setReadNRows(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) None
- setReadoutMode(self: _slsdet.CppDetectorApi, arg0: _slsdet.slsDetectorDefs.readoutMode, arg1: List[int] = []) None
- setReadoutSpeed(self: _slsdet.CppDetectorApi, arg0: _slsdet.slsDetectorDefs.speedLevel, arg1: List[int] = []) None
- setRow(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) None
- setRxArping(self: _slsdet.CppDetectorApi, arg0: bool, arg1: List[int] = []) None
- setRxDbitList(self: _slsdet.CppDetectorApi, arg0: List[int], arg1: List[int] = []) None
- setRxDbitOffset(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) None
- setRxFifoDepth(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) None
- setRxFrameDiscardPolicy(self: _slsdet.CppDetectorApi, arg0: _slsdet.slsDetectorDefs.frameDiscardPolicy, arg1: List[int] = []) None
- setRxHostname(*args, **kwargs)
Overloaded function.
setRxHostname(self: _slsdet.CppDetectorApi, arg0: str, arg1: List[int] = []) -> None
setRxHostname(self: _slsdet.CppDetectorApi, arg0: List[str]) -> None
- setRxLock(self: _slsdet.CppDetectorApi, arg0: bool, arg1: List[int] = []) None
- setRxPort(self: _slsdet.CppDetectorApi, arg0: int, arg1: int = -1) None
- setRxROI(self: _slsdet.CppDetectorApi, arg0: slsDetectorDefs::ROI) None
- setRxSilentMode(self: _slsdet.CppDetectorApi, arg0: bool, arg1: List[int] = []) None
- setRxUDPSocketBufferSize(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) None
- setRxZmqDataStream(self: _slsdet.CppDetectorApi, arg0: bool, arg1: List[int] = []) None
- setRxZmqFrequency(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) None
- setRxZmqHwm(self: _slsdet.CppDetectorApi, arg0: int) None
- setRxZmqIP(self: _slsdet.CppDetectorApi, arg0: sls::IpAddr, arg1: List[int] = []) None
- setRxZmqPort(self: _slsdet.CppDetectorApi, arg0: int, arg1: int = -1) None
- setRxZmqStartingFrame(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) None
- setRxZmqTimer(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) None
- setScan(self: _slsdet.CppDetectorApi, arg0: slsDetectorDefs::scanParameters) None
- setSettings(self: _slsdet.CppDetectorApi, arg0: _slsdet.slsDetectorDefs.detectorSettings, arg1: List[int] = []) None
- setSettingsPath(self: _slsdet.CppDetectorApi, arg0: str, arg1: List[int] = []) None
- setSignalName(self: _slsdet.CppDetectorApi, arg0: int, arg1: str) None
- setSignalNames(self: _slsdet.CppDetectorApi, arg0: List[str]) None
- setSlowADCName(self: _slsdet.CppDetectorApi, arg0: _slsdet.slsDetectorDefs.dacIndex, arg1: str) None
- setSlowADCNames(self: _slsdet.CppDetectorApi, arg0: List[str]) None
- setSourceUDPIP(self: _slsdet.CppDetectorApi, arg0: sls::IpAddr, arg1: List[int] = []) None
- setSourceUDPIP2(self: _slsdet.CppDetectorApi, arg0: sls::IpAddr, arg1: List[int] = []) None
- setSourceUDPMAC(self: _slsdet.CppDetectorApi, arg0: sls::MacAddr, arg1: List[int] = []) None
- setSourceUDPMAC2(self: _slsdet.CppDetectorApi, arg0: sls::MacAddr, arg1: List[int] = []) None
- setStopPort(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) None
- setStorageCellDelay(self: _slsdet.CppDetectorApi, arg0: DurationWrapper, arg1: List[int] = []) None
- setStorageCellStart(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) None
- setSubDeadTime(self: _slsdet.CppDetectorApi, arg0: DurationWrapper, arg1: List[int] = []) None
- setSubExptime(self: _slsdet.CppDetectorApi, arg0: DurationWrapper, arg1: List[int] = []) None
- setSynchronization(self: _slsdet.CppDetectorApi, arg0: bool) None
- setTemperatureControl(self: _slsdet.CppDetectorApi, arg0: bool, arg1: List[int] = []) None
- setTenGiga(self: _slsdet.CppDetectorApi, arg0: bool, arg1: List[int] = []) None
- setTenGigaADCEnableMask(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) None
- setTenGigaFlowControl(self: _slsdet.CppDetectorApi, arg0: bool, arg1: List[int] = []) None
- setThresholdEnergy(*args, **kwargs)
Overloaded function.
setThresholdEnergy(self: _slsdet.CppDetectorApi, arg0: int, arg1: _slsdet.slsDetectorDefs.detectorSettings = <detectorSettings.STANDARD: 0>, arg2: bool = True, arg3: List[int] = []) -> None
setThresholdEnergy(self: _slsdet.CppDetectorApi, arg0: Annotated[List[int], FixedSize(3)], arg1: _slsdet.slsDetectorDefs.detectorSettings = <detectorSettings.STANDARD: 0>, arg2: bool = True, arg3: List[int] = []) -> None
- setThresholdTemperature(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) None
- setTimingMode(self: _slsdet.CppDetectorApi, arg0: _slsdet.slsDetectorDefs.timingMode, arg1: List[int] = []) None
- setTimingSource(self: _slsdet.CppDetectorApi, arg0: _slsdet.slsDetectorDefs.timingSourceType, arg1: List[int] = []) None
- setTop(self: _slsdet.CppDetectorApi, arg0: bool, arg1: List[int] = []) None
- setTransceiverEnableMask(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) None
- setTransmissionDelay(self: _slsdet.CppDetectorApi, arg0: int) None
- setTransmissionDelayFrame(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) None
- setTransmissionDelayLeft(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) None
- setTransmissionDelayRight(self: _slsdet.CppDetectorApi, arg0: int, arg1: List[int] = []) None
- setTrimEnergies(self: _slsdet.CppDetectorApi, arg0: List[int], arg1: List[int] = []) None
- setUpdateMode(self: _slsdet.CppDetectorApi, arg0: bool, arg1: List[int] = []) None
- setVeto(self: _slsdet.CppDetectorApi, arg0: bool, arg1: List[int] = []) None
- setVetoAlgorithm(self: _slsdet.CppDetectorApi, arg0: _slsdet.slsDetectorDefs.vetoAlgorithm, arg1: _slsdet.slsDetectorDefs.streamingInterface, arg2: List[int] = []) None
- setVetoFile(self: _slsdet.CppDetectorApi, arg0: int, arg1: str, arg2: List[int] = []) None
- setVetoPhoton(self: _slsdet.CppDetectorApi, arg0: int, arg1: int, arg2: int, arg3: str, arg4: List[int] = []) None
- setVetoReference(self: _slsdet.CppDetectorApi, arg0: int, arg1: int, arg2: List[int] = []) None
- setVetoStream(self: _slsdet.CppDetectorApi, arg0: _slsdet.slsDetectorDefs.streamingInterface, arg1: List[int] = []) None
- setVirtualDetectorServers(self: _slsdet.CppDetectorApi, arg0: int, arg1: int) None
- property settings
Detector settings. Enum: detectorSettings
Note
[Eiger] Use threshold command to load settings [Jungfrau] GAIN0, HIGHGAIN0
[Gotthard] DYNAMICGAIN, HIGHGAIN, LOWGAIN, MEDIUMGAIN, VERYHIGHGAIN
[Gotthard2] DYNAMICGAIN, FIXGAIN1, FIXGAIN2
[Eiger] settings loaded from file found in settingspath [Moench] G1_HIGHGAIN, G1_LOWGAIN, G2_HIGHCAP_HIGHGAIN, G2_HIGHCAP_LOWGAIN, G2_LOWCAP_HIGHGAIN, G2_LOWCAP_LOWGAIN, G4_HIGHGAIN, G4_LOWGAIN
- property settingslist
List of settings implemented for this detector.
- property settingspath
[Eiger] Directory where settings files are loaded from/to.
- property signallist
[Chiptestboard] List of names for every io signal for this board. 64 signals
- size(self: _slsdet.CppDetectorApi) int
- property slowadc
[Ctb] Slow ADC channel in uV of all channels or specific ones from 0-7.
Example
>>> d.slowadc 0: 0 uV 1: 0 uV 2: 0 uV 3: 0 uV 4: 0 uV 5: 0 uV 6: 0 uV 7: 0 uV >>> d.slowadc[3] 0
- property slowadclist
[Chiptestboard] List of names for every slowadc for this board. 8 slowadc
- property slowadcvalues
[Chiptestboard] Gets the slow adc values for every slow adc for this detector.
- start()
Start detector acquisition. Status changes to RUNNING or WAITING and automatically returns to idle at the end of acquisition.
- startDetector(self: _slsdet.CppDetectorApi, arg0: List[int] = []) None
- startDetectorReadout(self: _slsdet.CppDetectorApi) None
- startPattern(self: _slsdet.CppDetectorApi, arg0: List[int] = []) None
- startReceiver(self: _slsdet.CppDetectorApi) None
- property status
Gets detector status. Enum: runStatus
Note
Options: IDLE, ERROR, WAITING, RUN_FINISHED, TRANSMITTING, RUNNING, STOPPED
Goes to stop server. >>> d.status runStatus.IDLE
- stop()
Abort detector acquisition. Status changes to IDLE or STOPPED. Goes to stop server.
- stopDetector(self: _slsdet.CppDetectorApi, arg0: List[int] = []) None
- stopReceiver(self: _slsdet.CppDetectorApi) None
- property stopport
Port number of the stop server on detector for detector-client tcp interface.
Note
Default is 1953. Normally unchanged.
- property storagecell_delay
[Jungfrau] Additional time delay between 2 consecutive exposures in burst mode, accepts either a value in seconds, datetime.timedelta or DurationWrapper
Note
Only applicable for chipv1.0. For advanced users only
Value: 0-1638375 ns (resolution of 25ns)
- getter
always returns in seconds. To get in DurationWrapper, use getStorageCellDelay
Example
>>> # setting directly in seconds >>> d.storagecell_delay = 1.05 >>> >>> # setting directly in seconds >>> d.storagecell_delay = 5e-07 >>> >>> # using timedelta (up to microseconds precision) >>> from datatime import timedelta >>> d.storagecell_delay = timedelta(seconds = 1, microseconds = 3) >>> >>> # using DurationWrapper to set in seconds >>> from slsdet import DurationWrapper >>> d.storagecell_delay = DurationWrapper(1.2) >>> >>> # using DurationWrapper to set in ns >>> t = DurationWrapper() >>> t.set_count(500) >>> d.storagecell_delay = t >>> >>> # to get in seconds >>> d.storagecell_delay 181.23 >>> >>> d.getStorageCellDelay() sls::DurationWrapper(total_seconds: 181.23 count: 181230000000)
- property storagecell_start
[Jungfrau] Storage cell that stores the first acquisition of the series.
Note
For advanced users only. Options 0-max. max is 15 (default) for chipv1.0 and 3 (default) for chipv1.1.
- property subdeadtime
[Eiger] Dead time of EIGER subframes in 32 bit mode, accepts either a value in seconds, datetime.timedelta or DurationWrapper
Note
Subperiod = subexptime + subdeadtime.
- getter
always returns in seconds. To get in DurationWrapper, use getSubDeadTime
Example
>>> # setting directly in seconds >>> d.subdeadtime = 1.230203 >>> >>> # setting directly in seconds >>> d.subdeadtime = 5e-07 >>> >>> # using timedelta (up to microseconds precision) >>> from datatime import timedelta >>> d.subdeadtime = timedelta(seconds = 1.23, microseconds = 203) >>> >>> # using DurationWrapper to set in seconds >>> from slsdet import DurationWrapper >>> d.subdeadtime = DurationWrapper(1.2) >>> >>> # using DurationWrapper to set in ns >>> t = DurationWrapper() >>> t.set_count(500) >>> d.subdeadtime = t >>> >>> # to get in seconds >>> d.subdeadtime 181.23 >>> >>> d.getSubDeadTime() sls::DurationWrapper(total_seconds: 181.23 count: 181230000000)
- property subexptime
[Eiger] Exposure time of EIGER subframes in 32 bit mode.
Note
Subperiod = subexptime + subdeadtime.
- getter
always returns in seconds. To get in DurationWrapper, use getSubExptime
Example
>>> # setting directly in seconds >>> d.subexptime = 1.230203 >>> >>> # setting directly in seconds >>> d.subexptime = 5e-07 >>> >>> # using timedelta (up to microseconds precision) >>> from datatime import timedelta >>> d.subexptime = timedelta(seconds = 1.23, microseconds = 203) >>> >>> # using DurationWrapper to set in seconds >>> from slsdet import DurationWrapper >>> d.subexptime = DurationWrapper(1.2) >>> >>> # using DurationWrapper to set in ns >>> t = DurationWrapper() >>> t.set_count(500) >>> d.subexptime = t >>> >>> # to get in seconds >>> d.subexptime 181.23 >>> >>> d.getSubExptime() sls::DurationWrapper(total_seconds: 181.23 count: 181230000000)
- property sync
[Jungfrau][Moench] Enables or disables synchronization between modules.
Note
Sync mode requires at least one master configured. Also requires flatband cabling between master and slave with termination board.
- property syncclk
[Ctb] Sync clock in MHz.
- Setter
Not implemented
- property temp_control
[Jungfrau][Moench] Temperature control enable.
Note
Default is 0 (disabled).
If temperature crosses threshold temperature and temperature control is enabled, power to chip will be switched off and temperature event occurs.
To power on chip again, temperature has to be less than threshold temperature and temperature event has to be cleared/reset.
- property temp_event
[Jungfrau][Moench] 1, if a temperature event occured.
Note
If temperature crosses threshold temperature and temperature control is enabled, power to chip will be switched off and temperature event occurs.
To power on chip again, temperature has to be less than threshold temperature and temperature event has to be cleared/reset.
- setter
To clear the event, set it to 0.
- property temp_threshold
[Jungfrau][Moench] Threshold temperature in degrees.
Note
If temperature crosses threshold temperature and temperature control is enabled, power to chip will be switched off and temperature event occurs.
To power on chip again, temperature has to be less than threshold temperature and temperature event has to be cleared/reset.
- property templist
List of temperature enums (dacIndex) implemented for this detector.
- property tempvalues
Gets the temp values for every temp for this detector.
- property tengiga
[Eiger][Ctb][Mythen3] 10GbE Enable.
- property threshold
[Eiger][Mythen3] Threshold in eV
To change settings as well or set threshold without trimbits, use setThresholdEnergy.
- setter
It loads trim files from settingspath.
[Mythen3] An energy of -1 will pick up values from detector.
- property timing
Set Timing Mode of detector. Enum: timingMode
Note
Default: AUTO_TIMING
[Jungfrau][Moench][Gotthard][Ctb][Gotthard2] AUTO_TIMING, TRIGGER_EXPOSURE
[Mythen3] AUTO_TIMING, TRIGGER_EXPOSURE, GATED, TRIGGER_GATED
[Eiger] AUTO_TIMING, TRIGGER_EXPOSURE, GATED, BURST_TRIGGER
- property timinglist
Gets the list of timing modes (timingMode) for this detector.
- property timingsource
[Gotthard2] Timing source. Enum: timingSourceType
Note
Options: TIMING_INTERNAL, TIMING_EXTERNAL
Internal is crystaland external is system timing. Default is internal.
- property top
[Eiger] Sets half module to top (1), else bottom.
Note
Advanced Function!
- property transceiverenable
[Ctb] Transceiver Enable Mask. Enable for each 4 transceiver channel.
- trigger()
- property triggers
Number of triggers per aquire. Set timing mode to use triggers.
- property triggersl
[Gotthard][Jungfrau][Moench][Mythen3][Gotthard2][CTB] Number of triggers left in acquisition.
Note
Only when external trigger used.
- setter
Not Implemented
- property trimbits
[Eiger][Mythen3] Loads/Saves custom trimbit file to detector.
Note
If no extension specified, serial number of each module is attached.
- setter
Loads the trimbit file to detector
- getter
Saves the trimbits from the detector to file. Not implemented with ‘trimbits’. Use saveTrimbits().
Example
>>> d.trimbits = '/path_to_file/noise' - 14:53:27.931 INFO: Settings file loaded: /path_to_file/noise.sn000
- property trimen
[Eiger] List of trim energies, where corresponding default trim files exist in corresponding trim folders.
Example
>>> d.trimen [] >>> d.trimen = [4500, 5400, 6400] >>> d.trimen [4500, 5400, 6400]
- property trimval
[Eiger][Mythen3] Set all trimbits to this value. Returns -1 if all trimbits are different values.
- property tsamples
[CTB] Number of transceiver samples expected.
- property txdelay
[Eiger][Jungfrau][Moench][Mythen3] Set transmission delay for all modules in the detector using the step size provided.
Note
Sets up the following for every module:
[Eiger] txdelay_left to (2 * mod_index * n_delay),
[Eiger] txdelay_right to ((2 * mod_index + 1) * n_delay) and
[Eiger] txdelay_frame to (2 *num_modules * n_delay)
[Jungfrau][Moench][Mythen3] txdelay_frame to (num_modules * n_delay)
Please refer txdelay_left, txdelay_right and txdelay_frame for details.
- property txdelay_frame
[Eiger][Jungfrau][Moench][Mythen3] Transmission delay of first udp packet being streamed out of the module.
Note
[Jungfrau][Moench] [0-31] Each value represents 1 ms.
[Eiger] Additional delay to txdelay_left and txdelay_right. Each value represents 10ns. Typical value is 50000.
[Mythen3] [0-16777215] Each value represents 8 ns (125 MHz clock), max is 134 ms.
- property txdelay_left
[Eiger] Transmission delay of first packet in an image being streamed out of the module’s left UDP port.
Note
Each value represents 10ns. Typical value is 50000.
- property txdelay_right
[Eiger] Transmission delay of first packet in an image being streamed out of the module’s right UDP port.
Note
Each value represents 10ns. Typical value is 50000.
- property type
Returns detector type. Enum: detectorType [EIGER, JUNGFRAU, GOTTHARD, MOENCH, MYTHEN3, GOTTHARD2, CHIPTESTBOARD]
- Setter
Not implemented
- property udp_dstip
Ip address of the receiver (destination) udp interface.
Note
If ‘auto’ used, then ip is set to ip of rx_hostname.
To set IPs for individual modules, use setDestinationUDPIP.
Example
>>> d.udp_dstip = '192.168.1.110' >>> d.udp_dstip 192.168.1.110
- property udp_dstip2
[Jungfrau][Moench][Gotthard2] Ip address of the receiver (destination) udp interface 2.
Note
[Jungfrau][Moench] bottom half
[Gotthard2] veto debugging
If ‘auto’ used, then ip is set to ip of rx_hostname.
To set IPs for individual modules, use setDestinationUDPIP2.
Example
>>> d.udp_dstip2 = '10.1.1.185' >>> d.udp_dstip2 10.1.1.185
- property udp_dstmac
Mac address of the receiver (destination) udp interface.
Note
Not mandatory to set as udp_dstip retrieves it from slsReceiver process but must be set if you use a custom receiver (not slsReceiver).
To set MACs for individual modules, use setDestinationUDPMAC. Use router mac if router between detector and receiver.
Example
>>> d.udp_dstmac = '00:1b:31:01:8a:de' d.udp_dstmac 00:1b:31:01:8a:de
- property udp_dstmac2
[Jungfrau][Moench][Gotthard2] Mac address of the receiver (destination) udp interface 2.
Note
Not mandatory to set as udp_dstip2 retrieves it from slsReceiver process but must be set if you use a custom receiver (not slsReceiver).
To set MACs for individual modules, use setDestinationUDPMAC2.
[Jungfrau][Moench] bottom half
[Gotthard2] veto debugging
Use router mac if router between detector and receiver.
Example
>>> d.udp_dstmac2 = '00:1b:31:01:8a:de' d.udp_dstmac2 00:1b:31:01:8a:de
- property udp_dstport
Port number of the receiver (destination) udp interface.
Note
Default is 50001.
Ports for each module is calculated (incremented by 1 if no 2nd interface)
To set ports for individual modules, use setDestinationUDPPort.
- property udp_dstport2
Port number of the receiver (destination) udp interface.
Note
Default is 50002.
[Eiger] right half
[Jungfrau][Moench] bottom half
[Gotthard2] veto debugging
Ports for each module is calculated (incremented by 2)
To set ports for individual modules, use setDestinationUDPPort2.
- property udp_srcip
Ip address of the detector (source) udp interface.
Note
Must be same subnet as destination udp ip.
[Eiger] Set only for 10G. For 1G, detector will replace with its own DHCP IP address.
To set IPs for individual modules, use setSourceUDPIP.
Example
>>> d.udp_srcip = '192.168.1.127' >>> d.udp_srcip 192.168.1.127
- property udp_srcip2
[Jungfrau][Moench][Gotthard2] Ip address of the detector (source) udp interface 2.
Note
[Jungfrau][Moench] bottom half
[Gotthard2] veto debugging
Must be same subnet as destination udp ip2.
To set IPs for individual modules, use setSourceUDPIP2.
Example
>>> d.udp_srcip2 = '192.168.1.127' >>> d.udp_srcip2 192.168.1.127
- property udp_srcmac
Mac address of the receiver (source) udp interface.
Note
[Eiger] Do not set as detector will replace with its own DHCP Mac (1G) or DHCP Mac + 1 (10G).
To set MACs for individual modules, use setSourceUDPMAC.
Example
>>> d.udp_srcmac = '00:1b:31:01:8a:de' d.udp_srcmac 00:1b:31:01:8a:de
- property udp_srcmac2
[Jungfrau][Moench][Gotthard2] Mac address of the receiver (source) udp interface 2.
Note
[Jungfrau][Moench] bottom half
[Gotthard2] veto debugging
To set MACs for individual modules, use setSourceUDPMAC2.
Example
>>> d.udp_srcmac2 = '00:1b:31:01:8a:de' d.udp_srcmac2 00:1b:31:01:8a:de
- updateDetectorServer(self: _slsdet.CppDetectorApi, arg0: str, arg1: List[int] = []) None
- updateFirmwareAndServer(self: _slsdet.CppDetectorApi, arg0: str, arg1: str, arg2: List[int] = []) None
- updateKernel(self: _slsdet.CppDetectorApi, arg0: str, arg1: List[int] = []) None
- property use_receiver
- property user
Retrieve user details from shared memory (hostname, type, PID, User, Date)
- property v_a
[Ctb] Power supply a in mV.
- property v_b
[Ctb] Power supply b in mV.
- property v_c
[Ctb] Power supply c in mV.
- property v_d
[Ctb] Power supply d in mV.
- property v_io
[Ctb] Power supply io in mV. Minimum 1200 mV.
Note
Must be the first power regulator to be set after fpga reset (on-board detector server start up).
- property v_limit
[Ctb] Soft limit for power supplies (ctb only) and DACS in mV.
- validateUDPConfiguration(self: _slsdet.CppDetectorApi, arg0: List[int] = []) None
- property versions
- property veto
[Gotthard2] Enable or disable veto data from chip.
Note
Default is 0.
- property vetoalg
[Gotthard2] Algorithm used for veto. Enum: vetoAlgorithm, streamingInterface
Note
Options: (vetoAlgorithm): ALG_HITS (default), ALG_RAW (streamingInterface): ETHERNET_10GB, LOW_LATENCY_LINK
Example
>>> d.vetoalg = defs.ALG_HITS, defs.ETHERNET_10GB
- property vetofile
[Gotthard2] Set veto reference for each 128 channels for specific chip.
The file should have 128 rows of gain index and 12 bit value in dec.
Example
d.vetofile = -1, ‘/path/to/file.txt’ #set for all chips d.vetofile = 3, ‘/path/to/file.txt’ # set for chip 3
- property vetophoton
[Gotthard2] Set veto reference for 128 channels for chip ichip according to reference file and #photons and energy in keV.
Note
Arguments: (chip_index, n_photons, photon_energy, fname)
- getter
Not Implemented
Example
>>> d.vetophoton = (2, 24, 2560, '/tmp/bla.txt')
- property vetoref
[Gotthard2] Set veto reference for all 128 channels for all chips.
Example
>>> d.vetoref = chip, value
- property vetostream
[Gotthard2] Enabling/ disabling veto interface
Note
Default: both off Options: NONE, LOW_LATENCY_LINK, 10GBE (debugging) Debugging interface also enables second interface in receiver (separate file), which also restarts zmq streaming if enabled.
- property virtual
Setup with n virtual servers running on localhost starting with control port p
Note
Every virtual server will have a stop port (control port + 1)
Example
>>> d.virtual = n, p
- property vthreshold
[Eiger][Mythen3] Detector threshold voltage for single photon counters in dac units.
Note
[Eiger] Sets vcmp_ll, vcmp_lr, vcmp_rl, vcmp_rr and vcp to the same value.
[Mythen3] Sets vth1, vth2 and vth3 to the same value for enabled counters.
- writeAdcRegister(self: _slsdet.CppDetectorApi, arg0: int, arg1: int, arg2: List[int] = []) None
- writeRegister(self: _slsdet.CppDetectorApi, arg0: int, arg1: int, arg2: List[int] = []) None
- property zmqhwm
Client’s zmq receive high water mark. Default is the zmq library’s default (1000), can also be set here using -1. This is a high number and can be set to 2 for gui purposes. One must also set the receiver’s send high water mark to similar value. Final effect is sum of them.
Setting it via command line is useful only before zmq enabled (before opening gui).
- property zmqip
Ip Address to listen to zmq data streamed out from receiver or intermediate process.
Note
Also restarts client zmq streaming if enabled.
Default is from rx_hostname.
Modified only when using an intermediate process after receiver.
Example
>>> d.zmqip 192.168.0.101 >>> d.zmqip = '192.168.0.101'
- property zmqport
Port number to listen to zmq data streamed out from receiver or intermediate process.
Note
Also restarts client zmq streaming if enabled.
Default connects to receiver zmq streaming out port (30001).
Must be different for every detector (and udp port).
Multi command will automatically increment for individual modules, use setClientZmqPort.
Example
>>> d.zmqport [30001, 30003] >>> d.zmqport = 30002 >>> d.zmqport = [30002, 30004] #Set ports for the two first detectors