Filter Messages

This article was written for version 2.3.1 of Core. Click here for the most recent version of the help center.

PolySync Core nodes subscribe to data from the Core bus in the form of high level message types.

The messages can be filtered by the subscribing node for specific sensor sources.

1. Sensor descriptors

Dynamic driver nodes publish messages to the bus containing the sensor data. Each message published by these nodes contains a sensor descriptor that uniquely identifies the source sensor.

The sensor descriptor contains a ps_sensor_kind type to identify a kind of sensor, and a ps_identifier which is unique within the same sensor kind.

1.1 Filter by sensor kind

Each supported sensor and hardware device has a unique sensor kind value defined by PolySync.

Filter for specific sensor types by comparing the incoming msg->sensor_descriptor.ps_sensor_kind to the values in the supported sensor values table. Using the C++ API you can access this information with a call to Msg->getSensorDescriptorType().

1.2 Filter by sensor identifier

Many sensors support─and sometimes require─a sensor identifier parameter to uniquely identify a sensor or hardware device.

The Sensor 0 Identifier parameter can also be used to identify a specific sensor stream.

Filter for specific sensor identifiers by comparing the incoming msg->ps_sensor_descriptor.ps_identifier to the parameter Sensor 0 Identifier that’s stored in the nodes Sensor Configuration table within the SDF. Using the C++ API you can access this information with a call to Msg->getSensorDescriptorId().