Skip to content

ShmemTrainMatcher

Base classes: TrainMatcher

ZeroMQ configuration (zmqConfig)

Type
VECTOR_HASH
Access mode
INITONLY
Assignment
OPTIONAL
Description
Configuration for ZeroMQ sockets
Table schema and default value
Pattern HWM RCVTIMEO SNDTIMEO Protocol Use Infiniband ZMQ publisher port

ZeroMQ outputs (zmqOutputs)

Type
VECTOR_HASH
Access mode
READONLY
Assignment
OPTIONAL
Description
List of ZeroMQ outputs
Table schema and default value
Sent Pattern Address

ZeroMQ Poller Timeout (pollTimeout)

Type
UINT32
Access mode
RECONFIGURABLE
Assignment
OPTIONAL
Description
ZMQ poller timeout in milliseconds.
Default value
0

Data Sources (sources)

Type
VECTOR_HASH
Allowed in states
PASSIVE, ACTIVE
Access mode
RECONFIGURABLE
Assignment
OPTIONAL
Description
list data sources to monitor. To add a data source: Right click on the table below and select "add row below" Device properties: Write in the "source" column the device name and the property name joined with a dot, e.g. "SA2_XTD1_XGM/XGM/DOOCS.pulseEnergy.photonFlux" Device output channels: Write in the "Source" column the name of the channel you want to monitor, e.g. HED_XTD6_IMGPI/CAM/BEAMVIEW:output. If the device name and the data source name do not match, for example if you monitor data directly from the output of the DAQ or the calibration pipeline, use the following syntax: SOURCE_NAME@DEVICE:output. For example SQS_DIGITIZER_UTC2/ADC/1:network@SQS_DAQ_DATA/DIGI/2:output
Table schema and default value
Select Source Offset (#trains) Status

Sources Stats (stats)

Type
VECTOR_HASH
Access mode
READONLY
Assignment
OPTIONAL
Description
Statistics on input data
Table schema and default value
Source Update Rate (Hz) Received Train ID Latency (#trains)

Sort Sources (sortSources)

Type
BOOL
Access mode
READONLY
Assignment
OPTIONAL
Description
Sort sources by name after reconfiguration.
Default value
False

Mode (mode)

Type
STRING
Access mode
RECONFIGURABLE
Assignment
OPTIONAL
Description
operation mode, "match": match all selected fast sources, "buffer": send (selected) sources that arrived when the buffer reached the limit
Options:
match, buffer
Default value
match

Start (start)

Type
Slot
Allowed in states
PASSIVE
Access mode
RECONFIGURABLE

Stop (stop)

Type
Slot
Allowed in states
ACTIVE
Access mode
RECONFIGURABLE

Pipeline Update (processing)

Type
FLOAT
Access mode
READONLY
Assignment
OPTIONAL
Default value
0.0

Unique Trains Update (uniqueProcessing)

Type
FLOAT
Access mode
READONLY
Assignment
OPTIONAL
Default value
0.0

Control Update (ctrlProcessing)

Type
FLOAT
Access mode
READONLY
Assignment
OPTIONAL
Default value
0.0

Output Update (outProcessing)

Type
FLOAT
Access mode
READONLY
Assignment
OPTIONAL
Default value
0.0

Received (received)

Type
UINT32
Access mode
READONLY
Assignment
OPTIONAL
Description
Count how many trains were received.
Default value
0

Sent (sent)

Type
UINT32
Access mode
READONLY
Assignment
OPTIONAL
Description
Count how many train data were sent.
Default value
0

Matching Ratio (matchingRatio)

Type
FLOAT
Access mode
READONLY
Assignment
OPTIONAL
Description
Exponential moving average of the relation between sent and received trains.
Default value
0.0

Train ID (trainId)

Type
UINT64
Access mode
READONLY
Assignment
OPTIONAL
Description
the last trainId data that matched.
Default value
0

Buffer size (buffer)

Type
UINT32
Access mode
RECONFIGURABLE
Assignment
OPTIONAL
Description
Maximum length of buffer to hold non-matched trains
Default value
100

Buffered trains (buffered)

Type
UINT32
Access mode
READONLY
Assignment
OPTIONAL
Description
Number of trains buffered
Default value
0

Delay on output (delay)

Type
UINT32
Access mode
RECONFIGURABLE
Assignment
OPTIONAL
Description
delay applied before sending data on output channel (in #trains)
Default value
0

Overwrite Offset TrainIds (offsetTid)

Type
BOOL
Access mode
RECONFIGURABLE
Assignment
OPTIONAL
Description
If this property is True, it will change the value of the trainId in the metadata for the data sources having an offset value different from 0. The trainId value assigned will be the "matched" trainId, i.e. trainId + offset for the source.
Default value
False

Max Idle (maxIdle)

Type
FLOAT
Access mode
RECONFIGURABLE
Assignment
OPTIONAL
Description
Max allowed IDLE time (in seconds). If last data received for a source is longer than this time, the source will be ignore when matching data.
Default value
0.0

Idle Channels (idleChannels)

Type
VECTOR_STRING
Access mode
READONLY
Assignment
OPTIONAL
Description
List of idle channels
Default value
[]

Idle State (idleState)

Type
STRING
Access mode
READONLY
Assignment
OPTIONAL
Description
State of idle channels (error if any monitored channel is idle)
Default value
ON

CPU usage (cpuPercent)

Type
FLOAT
Access mode
READONLY
Assignment
OPTIONAL
Default value
0.0

MEM usage (memUsage)

Type
FLOAT
Access mode
READONLY
Assignment
OPTIONAL
Default value
0.0

Pipeline Output (output)

Output channel for combined train data. OutputChannel

Array stacking (merge)

Type
VECTOR_HASH
Allowed in states
PASSIVE
Access mode
RECONFIGURABLE
Assignment
OPTIONAL
Description
Specify which source(s) or key(s) to stack or interleave.When stacking sources, the 'Source pattern' is interpreted as a regular expression and the 'Key pattern' is interpreted as an ordinary string. From all sources matching the source pattern, the data under this key (should be array with same dimensions across all stacked sources) is stacked in the same order as the sources are listed in 'Data sources' and the result is under the same key name in a new source named by 'Replacement'. When stacking keys, both the 'Source pattern' and the 'Key pattern' are regular expressions. Within each source matching the source pattern, all keys matching the key pattern are stacked and the result is put under the key named by 'Replacement'. While source stacking is optimized and can use thread pool, key stacking will iterate over all paths in matched sources and naively call np.stack for each key pattern. In either case, data that is used for stacking is removed from its original location (e.g. key is erased from hash). In both cases, the data can alternatively be interleaved. This is essentially equivalent to stacking except followed by a reshape such that the output is shaped like concatenation.
Table schema and default value
Select Source pattern Key pattern Replacement Group type Merge method Axis

Use thread pool (useThreadPool)

Type
BOOL
Allowed in states
PASSIVE
Access mode
RECONFIGURABLE
Assignment
OPTIONAL
Default value
False

Enable Karabo channel (enableKaraboOutput)

Type
BOOL
Allowed in states
PASSIVE
Access mode
RECONFIGURABLE
Assignment
OPTIONAL
Default value
True

useInfiniband

Type
BOOL
Access mode
INITONLY
Assignment
OPTIONAL
Description
If enabled, device will during initialization try to bind its data output channel (output) to its node's infiniband interface. Default interface is used if no 'ib0' interface is found.
Default value
True