Go to the documentation of this file.
81 using namespace xsens;
135 return deviceId().isImu() ? 0 : 400;
148 return deviceId().isGnss() ? 400 : 0;
150 return deviceId().isGnss() ? 400 : 0;
178 return static_cast<uint8_t
>(gmtLine);
221 sndType.setDataLong(type);
222 sndType.setDataShort(frequency, 4);
268 serializer >> config;
278 snd.setBusId(
busId());
279 bool wasEmpty = config.empty();
300 return rcv.getDataLong();
312 rv.push_back((
int)rcv.getDataLong(0));
313 rv.push_back((
int)rcv.getDataLong(4));
314 rv.push_back((
int)rcv.getDataLong(8));
325 snd.setBusId(
busId());
327 if (config.size() > 0)
328 snd.setDataLong((
uint32_t)config[0], 0);
329 if (config.size() > 1)
330 snd.setDataLong((
uint32_t)config[1], 4);
331 if (config.size() > 2)
332 snd.setDataLong((
uint32_t)config[2], 8);
338 if (currentConfig != config)
351 snd.setBusId(
busId());
352 snd.setDataLong(config);
358 if ((currentConfig & 0xFF) != (config & 0xFF))
#define XS_BID_MASTER
The bus identifier of the master device.
@ XSF_SyncIn
When set indicates a sync-in event has been triggered.
@ XDI_RateOfTurnHR
Rate of turn HR data.
@ XSOT_PHTRO
Proprietry NMEA string with Pitch and Roll.
XsDeviceId const & deviceId() const
Return the device ID of the device.
@ XDI_PositionGroup
Group for position related outputs.
A class that does the message deserialization.
bool setStringOutputMode6x0(uint32_t type, uint16_t frequency)
Sets the string output mode for this device.
@ XSOT_HCHDM
NMEA string with Magnetic Heading.
@ XDI_AccelerationGroup
Group for acceleration related outputs.
@ XSOT_PRDID
Proprietry NMEA string with Pitch, Roll and Heading.
@ XDI_AngularVelocityGroup
Group for angular velocity related outputs.
int m_frequency
A frequency value.
static XsString stripProductCode(const XsString &code)
Helper function to strip the hardware type from the product code.
uint8_t syncLine(const XsSyncSetting &setting) const override
@ XSOT_TSS2
Proprietry string with Heading, Heave, Roll and Pitch.
@ XSOT_XSVEL
Proprietry NMEA string with velocity data.
@ XDI_None
Empty datatype.
@ XSF_GpsValid
Is set when the device has a GPS receiver and the receiver says that there is a GPS position fix.
Mti8X0Device(Communicator *comm)
Constructs a device.
@ XDI_DeviceId
DeviceId output.
struct XsCanOutputConfigurationArray XsCanOutputConfigurationArray
uint32_t supportedStatusFlags() const override
Returns a bitmask with all the status flags supported by this device.
SyncLineGmt xslToXslgmt(XsSyncLine line)
Translate an XsSyncLine into a SyncLineGmt.
XsString productCode() const
Return the product code of the device.
@ XMID_SetStringOutputConfig
@ XDI_VelocityGroup
Group for velocity related outputs.
@ XMID_SetCanOutputConfig
struct XsVersion XsVersion
uint32_t canConfiguration() const override
Returns the currently configured CAN configuration of the device.
@ XSF_ClippingDetected
When set Indicates clipping has occurred.
@ XSOT_HCHDG
NMEA string with Heading and Magnetic Variation.
@ XSF_RepresentativeMotion
Indicates if the In-Run Compass Calibration is doing the representative motion analysis.
@ XSF_FilterMode
Mask for the 3 bit filter mode field.
@ XDI_MagneticGroup
Group for magnetometer related outputs.
@ XDI_FullTypeMask
Mask to get the type of data, without the data format.
@ XDI_LocationId
LocationId output.
@ XSF_NoRotationMask
If all of these flags are set, the No Rotation algorithm is running.
bool setPortConfiguration(XsIntArray &config) override
Change the port configuration of a device.
virtual int busId() const
The bus ID for this device.
@ XSF_ExternalClockSynced
Indicates whether the internal clock is synced with an external clock (Either GNNS or custom provided...
@ XSOT_PSONCMS
NMEA string with Xsens Compass Motion Sensor information.
@ XSF_OrientationValid
Is set when the computed orientation is valid. The orientation may be invalid during startup or when ...
A structure for storing all xsens sync settings.
XsDataIdentifier
Defines the data identifiers.
A base struct for a communication interface.
virtual ~Mti8X0Device()
Destroys a device.
virtual XsVersion firmwareVersion() const
Return the firmware version.
bool hasIccSupport() const override
@ XSOT_HEROT
NMEA string with Rate of Turn.
SyncLineGmt
Synchronization line identifiers for the generic motion tracker (GMT) devices, only to be used direct...
@ XDI_TimestampGroup
Group for time stamp related outputs.
@ XSOT_HEHDT
NMEA string with True Heading.
@ XDI_GnssGroup
Group for Gnss related outputs.
MtiBaseDevice::BaseFrequencyResult getBaseFrequencyInternal(XsDataIdentifier dataType=XDI_None) const override
Returns the base update rate (Hz) corresponding to the dataType.
XsStringOutputTypeArray supportedStringOutputTypes() const override
Ask the device for its supported string output types.
@ XDI_StatusGroup
Group for status related outputs.
bool setCanConfiguration(uint32_t config) override
Set the CAN output configuration for this device.
Structure for storing a single message.
virtual bool reset()
Reset the device.
#define XDI_MAX_FREQUENCY_VAL
XsString shortProductCode() const override
Return the shortened product code of the device suitable for display.
@ XDI_FreeAcceleration
Free acceleration output in m/s2.
struct XsIntArray XsIntArray
@ XSOT_PTCF
NMEA string with motion data.
@ XSOT_GPGGA
NMEA string with Global Positioning system fix data.
A class that does the message serialization.
@ XSF_SyncOut
When set Indicates a sync-out event has been generated.
bool m_divedable
A divedable value.
@ XSOT_GPZDA
NMEA string with date and time.
@ XSOT_EM1000
Binary format suitable for use with Simrad EM1000 mulitibeam sounders with Roll, Pitch,...
@ XDI_PressureGroup
Group for pressure related outputs.
Single data type CAN output configuration.
A list of XsStringOutputType values.
@ XDI_OrientationGroup
Group for orientation related outputs.
bool setCanOutputConfiguration(XsCanOutputConfigurationArray &config) override
Set the CAN output configuration for this device.
A list of XsCanOutputConfiguration values.
@ XSOT_HCMTW
NMEA string with (water) Temperature.
@ XDI_TemperatureGroup
Group for temperature outputs.
bool doTransaction(const XsMessage &snd) const
A struct for base frequency result.
@ XSOT_GPRMC
NMEA string with recommended minimum specific GPS/Transit data.
A 0-terminated managed string of characters.
@ XSF_HaveGnssTimePulse
Indicates that the 1PPS GNSS time pulse is present.
XsIntArray portConfiguration() const override
Get the current port configuration of a device.
XsCanOutputConfigurationArray canOutputConfiguration() const override
Returns the currently configured CAN output of the device.
@ XDI_TypeMask
Mask for checking the group which a dataidentifier belongs to, Eg. XDI_TimestampGroup or XDI_Orientat...
@ XDI_AccelerationHR
AccelerationHR output.
The internal base class for MTi devices.