Go to the documentation of this file.
65 #ifndef XSDATAPACKET_H
66 #define XSDATAPACKET_H
363 inline bool empty(
void)
const
375 inline uint16_t itemCount()
const
417 inline XsVector rawAccelerationConverted(
void)
const
424 inline bool containsRawAcceleration(
void)
const
443 inline XsVector rawGyroscopeDataConverted(
void)
const
450 inline bool containsRawGyroscopeData(
void)
const
469 inline XsVector rawGyroscopeTemperatureDataConverted(
void)
const
476 inline bool containsRawGyroscopeTemperatureData(
void)
const
482 inline void setRawGyroscopeTemperatureData(
const XsUShortVector& vec)
495 inline XsVector rawMagneticFieldConverted(
void)
const
502 inline bool containsRawMagneticField(
void)
const
514 inline uint16_t rawTemperature(
void)
const
520 inline bool containsRawTemperature(
void)
const
526 inline void setRawTemperature(uint16_t temp)
541 inline bool containsRawData(
void)
const
553 inline XsVector velocityIncrement(
void)
const
560 inline bool containsVelocityIncrement(
void)
const
566 inline void setVelocityIncrement(
const XsVector& vec)
572 inline XsVector calibratedAcceleration(
void)
const
579 inline bool containsCalibratedAcceleration(
void)
const
585 inline void setCalibratedAcceleration(
const XsVector& vec)
598 inline bool containsOrientationIncrement(
void)
const
604 inline void setOrientationIncrement(
const XsQuaternion& quat)
610 inline XsVector calibratedGyroscopeData(
void)
const
617 inline bool containsCalibratedGyroscopeData(
void)
const
623 inline void setCalibratedGyroscopeData(
const XsVector& vec)
629 inline XsVector calibratedMagneticField(
void)
const
636 inline bool containsCalibratedMagneticField(
void)
const
642 inline void setCalibratedMagneticField(
const XsVector& vec)
655 XSNOEXPORT inline bool containsCorrectedMagneticField(
void)
const
674 inline bool containsCalibratedData(
void)
const
722 inline XsEuler orientationEuler()
const
746 inline XsMatrix orientationMatrix()
const
759 inline bool containsOrientation(
void)
const
784 inline bool containsSdiData(
void)
const
824 inline bool containsStoredDeviceId(
void)
const
838 inline uint16_t storedLocationId(
void)
const
844 inline bool containsStoredLocationId(
void)
const
850 inline void setStoredLocationId(uint16_t
data)
863 inline bool containsStatus(
void)
const
869 inline bool containsDetailedStatus(
void)
const
881 inline void setStatusByte(
const uint8_t
data)
887 inline uint8_t packetCounter8(
void)
const
893 inline bool containsPacketCounter8(
void)
const
899 inline void setPacketCounter8(uint8_t counter)
905 inline uint16_t packetCounter(
void)
const
911 inline bool containsPacketCounter(
void)
const
917 inline void setPacketCounter(uint16_t counter)
923 inline uint32_t sampleTimeFine(
void)
const
929 inline bool containsSampleTimeFine(
void)
const
935 inline void setSampleTimeFine(
uint32_t counter)
941 inline uint32_t sampleTimeCoarse(
void)
const
947 inline bool containsSampleTimeCoarse(
void)
const
953 inline void setSampleTimeCoarse(
uint32_t counter)
959 inline uint64_t sampleTime64(
void)
const
965 inline bool containsSampleTime64(
void)
const
971 inline void setSampleTime64(uint64_t counter)
977 inline XsVector freeAcceleration(
void)
const
984 inline bool containsFreeAcceleration(
void)
const
990 inline void setFreeAcceleration(
const XsVector& g)
996 inline double temperature(
void)
const
1002 inline bool containsTemperature(
void)
const
1008 inline void setTemperature(
double temperature)
1021 inline bool containsPressure(
void)
const
1027 inline bool containsPressureAge(
void)
const
1046 inline bool containsAnalogIn1Data(
void)
const
1065 inline bool containsAnalogIn2Data(
void)
const
1077 inline XsVector positionLLA(
void)
const
1084 inline bool containsPositionLLA(
void)
const
1096 inline XsVector latitudeLongitude(
void)
const
1103 inline bool containsLatitudeLongitude(
void)
const
1115 inline double altitude(
void)
const
1121 inline bool containsAltitude(
void)
const
1127 inline void setAltitude(
double data)
1133 inline double altitudeMsl(
void)
const
1139 inline bool containsAltitudeMsl(
void)
const
1145 inline void setAltitudeMsl(
double data)
1162 inline XsVector velocity(
void)
const
1169 inline bool containsVelocity(
void)
const
1202 inline bool containsUtcTime(
void)
const
1214 inline XsRange frameRange()
const
1221 inline bool containsFrameRange()
const
1227 inline void setFrameRange(
const XsRange& r)
1233 inline int rssi()
const
1239 inline bool containsRssi()
const
1245 inline void setRssi(
int r)
1260 inline bool containsRawGnssPvtData(
void)
const
1272 inline uint8_t gnssAge(
void)
const
1278 inline bool containsGnssAge(
void)
const
1284 XSNOEXPORT inline void setGnssAge(uint8_t age)
1299 inline bool containsRawGnssSatInfo(
void)
const
1313 inline uint32_t gnssPvtPulse(
void)
const
1319 inline bool containsGnssPvtPulse(
void)
const
1325 inline void setGnssPvtPulse(
uint32_t counter)
1338 inline bool containsFullSnapshot(
void)
const
1356 XSNOEXPORT inline bool containsAwindaSnapshot(
void)
const
1368 inline bool isAwindaSnapshotARetransmission(
void)
const
1401 inline void setTimeOfArrival(
const XsTimeStamp& t)
1415 inline void setEstimatedTimeOfSampling(
const XsTimeStamp& t)
1421 inline XsTimeStamp estimatedTimeOfSampling()
const
1429 inline void setPacketId(int64_t t)
1438 inline int64_t packetId()
const
1475 inline bool containsRawBlob(
void)
const
1487 inline XsVector accelerationHR(
void)
const
1494 inline bool containsAccelerationHR(
void)
const
1500 inline void setAccelerationHR(
const XsVector& vec)
1506 inline XsVector rateOfTurnHR(
void)
const
1513 inline bool containsRateOfTurnHR(
void)
const
1519 inline void setRateOfTurnHR(
const XsVector& vec)
1524 #ifndef XSENS_NO_STL
1529 inline std::map<XsDataIdentifier, void*> simplifiedContents()
const
1531 return *((std::map<XsDataIdentifier, void*>*)(
void*)
d);
1537 #endif // __cplusplus
XSTYPES_DLL_API XsDataIdentifier XsDataPacket_coordinateSystemVelocity(const XsDataPacket *thisPtr)
Returns the coordinate system of the first velocity data of any kind in the packet.
XSTYPES_DLL_API int XsDataPacket_containsCalibratedData(const XsDataPacket *thisPtr)
Check if data item contains calibrated Data.
XSTYPES_DLL_API XsPressure * XsDataPacket_pressure(const XsDataPacket *thisPtr, XsPressure *returnVal)
The air pressure component of a data item.
XSTYPES_DLL_API XsTimeInfo * XsDataPacket_utcTime(const XsDataPacket *thisPtr, XsTimeInfo *returnVal)
The utc time component of a data item.
XSTYPES_DLL_API XsSdiData * XsDataPacket_sdiData(const XsDataPacket *thisPtr, XsSdiData *returnVal)
Return the strapdown integration data component of a data item.
XSTYPES_DLL_API void XsDataPacket_swap(XsDataPacket *thisPtr, XsDataPacket *other)
Swaps the XsDataPackets in thisPtr and other.
int64_t m_packetId
64 bit packet id, based on, depending on availability: (1) packet counter (2) sample time (3) arrival...
XSTYPES_DLL_API XsRawGnssPvtData * XsDataPacket_rawGnssPvtData(const XsDataPacket *thisPtr, XsRawGnssPvtData *returnVal)
Returns a struct with RawGnssPvtData.
XSTYPES_DLL_API int XsDataPacket_containsCorrectedMagneticField(const XsDataPacket *thisPtr)
Check if data item contains corrected magnetometer data (ICC result).
A class that represents a matrix of real numbers.
struct XsDataPacket XsDataPacket
XSTYPES_DLL_API void XsDataPacket_toMessage(const XsDataPacket *thisPtr, XsMessage *msg)
Write the contents of the XsDataPacket to an XsMessage in MtData2 format.
XSTYPES_DLL_API int XsDataPacket_containsTriggerIndication(const XsDataPacket *thisPtr, XsDataIdentifier triggerId)
Check if data item contains trigger indication data.
XSTYPES_DLL_API void XsDataPacket_setStoredDeviceId(XsDataPacket *thisPtr, const XsDeviceId *data)
Add or update device id for the item.
XSTYPES_DLL_API void XsDataPacket_setGnssPvtPulse(XsDataPacket *thisPtr, uint32_t counter)
Add/update pvt pulse timestamp data for the item.
A class that represents a vector of real numbers.
XSTYPES_DLL_API void XsDataPacket_setOrientationEuler(XsDataPacket *thisPtr, const XsEuler *data, XsDataIdentifier coordinateSystem)
Add/update quaternion orientation Data for the item.
XSTYPES_DLL_API void XsDataPacket_setSdiData(XsDataPacket *thisPtr, const XsSdiData *data)
Add/update strapdown integration data for the item.
XSTYPES_DLL_API void XsDataPacket_setTriggerIndication(XsDataPacket *thisPtr, XsDataIdentifier triggerId, const XsTriggerIndicationData *triggerIndicationData)
Add/update trigger indication data for the item.
XSTYPES_DLL_API void XsDataPacket_setFullSnapshot(XsDataPacket *thisPtr, XsSnapshot const *data, int retransmission)
Sets the Awinda Snapshot part of the XsDataPacket.
A list of uint8_t values.
XSTYPES_DLL_API XsQuaternion * XsDataPacket_orientationIncrement(const XsDataPacket *thisPtr, XsQuaternion *returnVal)
The delta quaternion (deltaQ) component of a data item.
XSTYPES_DLL_API int XsDataPacket_containsFrameRange(const XsDataPacket *thisPtr)
Returns whether the datapacket contains a framerange.
XSTYPES_DLL_API int XsDataPacket_rssi(const XsDataPacket *thisPtr)
Returns the rssi value contained in the datapacket.
XSTYPES_DLL_API void XsDataPacket_setRawData(XsDataPacket *thisPtr, const XsScrData *data)
Add/update raw data for the item.
XSTYPES_DLL_API void XsDataPacket_setCalibratedMagneticField(XsDataPacket *thisPtr, const XsVector *vec)
Add/update calibrated magnetometer data for the item.
XSTYPES_DLL_API int XsDataPacket_containsStoredDeviceId(const XsDataPacket *thisPtr)
Return non-zero if this data packet stores a device ID.
A container for Glove Snapshot data.
XSTYPES_DLL_API XsVector * XsDataPacket_rateOfTurnHR(const XsDataPacket *thisPtr, XsVector *returnVal)
Returns RateOfTurnHR.
XSTYPES_DLL_API XsQuaternion * XsDataPacket_orientationQuaternion(const XsDataPacket *thisPtr, XsQuaternion *returnVal, XsDataIdentifier coordinateSystem)
Return the orientation component of a data item as a quaternion.
XSTYPES_DLL_API int XsDataPacket_containsAccelerationHR(const XsDataPacket *thisPtr)
Check if data item contains AccelerationHR.
XSTYPES_DLL_API int XsDataPacket_containsRawAcceleration(const XsDataPacket *thisPtr)
Check if data item contains Raw Accelerometer data.
XSTYPES_DLL_API void XsDataPacket_setGloveData(XsDataPacket *thisPtr, const XsGloveData *data, XsHandId hand)
Add/update strapdown integration data for the item.
XSTYPES_DLL_API void XsDataPacket_setCalibratedGyroscopeData(XsDataPacket *thisPtr, const XsVector *vec)
Add/update calibrated gyroscope data for the item.
@ XDI_None
Empty datatype.
XSTYPES_DLL_API int XsDataPacket_containsPacketCounter(const XsDataPacket *thisPtr)
Check if data item contains a packet counter.
XSTYPES_DLL_API void XsDataPacket_setRawGyroscopeTemperatureData(XsDataPacket *thisPtr, const XsUShortVector *vec)
Add/update raw gyroscope temperature data for the item.
XSTYPES_DLL_API int XsDataPacket_containsSdiData(const XsDataPacket *thisPtr)
Check if data item contains strapdown integration data.
XSTYPES_DLL_API void XsDataPacket_clear(XsDataPacket *thisPtr, XsDataIdentifier id)
Clears all data in an XsDataPacket.
XSTYPES_DLL_API uint16_t XsDataPacket_storedLocationId(const XsDataPacket *thisPtr)
The location ID of a data item.
XSTYPES_DLL_API int XsDataPacket_containsRawBlob(const XsDataPacket *thisPtr)
Returns true if the XsDataPacket contains raw blob data.
XSTYPES_DLL_API void XsDataPacket_copyConstruct(XsDataPacket *thisPtr, XsDataPacket const *src)
Initializes a data packet as a (referenced) copy of src.
A container for glove data.
XSTYPES_DLL_API int XsDataPacket_containsFullSnapshot(const XsDataPacket *thisPtr)
Returns true if the XsDataPacket contains Full Snapshot data.
XSTYPES_DLL_API void XsDataPacket_setPositionLLA(XsDataPacket *thisPtr, const XsVector *data)
Add/update position lat lon alt data for the item.
XSTYPES_DLL_API void XsDataPacket_setAltitude(XsDataPacket *thisPtr, double data)
Add/update altitude data for the item.
XSTYPES_DLL_API XsByteArray * XsDataPacket_rawBlob(const XsDataPacket *thisPtr, XsByteArray *returnVal)
Returns the raw blob part of the XsDataPacket.
XSTYPES_DLL_API XsVector * XsDataPacket_accelerationHR(const XsDataPacket *thisPtr, XsVector *returnVal)
Returns AccelerationHR.
XSTYPES_DLL_API uint8_t XsDataPacket_packetCounter8(const XsDataPacket *thisPtr)
Return the 8 bit packet counter of a packet.
XSTYPES_DLL_API void XsDataPacket_setRawMagneticField(XsDataPacket *thisPtr, const XsUShortVector *vec)
Add/update raw magnetometer data for the item.
XSTYPES_DLL_API XsVector * XsDataPacket_freeAcceleration(const XsDataPacket *thisPtr, XsVector *returnVal)
The free acceleration component of a data item.
XSTYPES_DLL_API int XsDataPacket_containsAltitudeMsl(const XsDataPacket *thisPtr)
Check if data item contains position altitude above MSL data.
XSTYPES_DLL_API XsDataIdentifier XsDataPacket_dataFormat(const XsDataPacket *thisPtr, XsDataIdentifier id)
Returns the dataformat of a specific data identifier in the packet.
XSTYPES_DLL_API int XsDataPacket_containsRawData(const XsDataPacket *thisPtr)
Check if data item contains raw data.
XSTYPES_DLL_API int XsDataPacket_containsRawGnssPvtData(const XsDataPacket *thisPtr)
Returns 1 if data item contains RawGnssPvtData, 0 otherwise.
XSTYPES_DLL_API void XsDataPacket_setPressure(XsDataPacket *thisPtr, const XsPressure *data)
Add/update pressure data for the item.
Contains an interpreted data message. The class provides easy access to the contained data through it...
XsHandId
This is an enumerator that contains the left and right hand.
XSTYPES_DLL_API XsVector * XsDataPacket_positionLLA(const XsDataPacket *thisPtr, XsVector *returnVal)
The position lat lon alt component of a data item.
XSTYPES_DLL_API int XsDataPacket_containsGloveSnapshot(const XsDataPacket *thisPtr, XsHandId hand)
Returns true if the XsDataPacket contains Glove Snapshot data.
XSTYPES_DLL_API int XsDataPacket_containsAwindaSnapshot(const XsDataPacket *thisPtr)
Returns true if the XsDataPacket contains Awinda Snapshot data.
XSTYPES_DLL_API XsAnalogInData * XsDataPacket_analogIn2Data(const XsDataPacket *thisPtr, XsAnalogInData *returnVal)
The analog in 2 component of a data item.
XSTYPES_DLL_API int XsDataPacket_containsGloveData(const XsDataPacket *thisPtr, XsHandId hand)
Check if data item contains glove data.
XSTYPES_DLL_API int XsDataPacket_containsFreeAcceleration(const XsDataPacket *thisPtr)
Check if data item contains free acceleration.
XSTYPES_DLL_API uint32_t XsDataPacket_sampleTimeFine(const XsDataPacket *thisPtr)
Return the fine sample time of a packet.
XSTYPES_DLL_API XsDeviceId * XsDataPacket_storedDeviceId(const XsDataPacket *thisPtr, XsDeviceId *returnVal)
The device id of a data item.
XSTYPES_DLL_API XsUShortVector * XsDataPacket_rawMagneticField(const XsDataPacket *thisPtr, XsUShortVector *returnVal)
The raw magnetometer component of a data item.
XSTYPES_DLL_API XsVector * XsDataPacket_rawGyroscopeDataConverted(const XsDataPacket *thisPtr, XsVector *returnVal)
The raw gyroscope component of a data item, converted to floating point values.
XSTYPES_DLL_API void XsDataPacket_construct(XsDataPacket *thisPtr)
Inits a data packet, the packet will be empty after construction.
XSTYPES_DLL_API int XsDataPacket_containsRawTemperature(const XsDataPacket *thisPtr)
Check if data item contains raw temperature data.
XSTYPES_DLL_API XsUShortVector * XsDataPacket_rawGyroscopeTemperatureData(const XsDataPacket *thisPtr, XsUShortVector *returnVal)
The raw gyroscope temperature component of a data item.
A class that implements a quaternion.
XSTYPES_DLL_API XsVector * XsDataPacket_calibratedGyroscopeData(const XsDataPacket *thisPtr, XsVector *returnVal)
The calibrated gyroscope component of a data item.
XSTYPES_DLL_API XsGloveSnapshot * XsDataPacket_gloveSnapshot(const XsDataPacket *thisPtr, XsGloveSnapshot *returnVal, XsHandId hand)
Returns the Glove Snapshot part of the XsDataPacket.
XSTYPES_DLL_API void XsDataPacket_destruct(XsDataPacket *thisPtr)
Clears and frees data in an XsDataPacket.
XSTYPES_DLL_API void XsDataPacket_setAnalogIn2Data(XsDataPacket *thisPtr, const XsAnalogInData *data)
Add/update analog in 2 data for the item.
A container for GNSS Position Velocity and Time data.
XSTYPES_DLL_API void XsDataPacket_setVelocity(XsDataPacket *thisPtr, const XsVector *data, XsDataIdentifier coordinateSystem)
Add/update velocity NED data for the item.
XSTYPES_DLL_API int XsDataPacket_containsAnalogIn2Data(const XsDataPacket *thisPtr)
Check if data item contains analog in 2 data.
XSTYPES_DLL_API void XsDataPacket_setStatusByte(XsDataPacket *thisPtr, uint8_t data)
Add/update status data for the item.
A class whose objects can be used to store a range. It provides method to check whether a value is in...
XSTYPES_DLL_API void XsDataPacket_setCalibratedAcceleration(XsDataPacket *thisPtr, const XsVector *vec)
Add/update calibrated accelerometer data for the item.
XSTYPES_DLL_API int XsDataPacket_containsPositionLLA(const XsDataPacket *thisPtr)
Check if data item contains position lat lon alt data.
XSTYPES_DLL_API int XsDataPacket_containsGnssPvtPulse(const XsDataPacket *thisPtr)
Check if data item XsDataPacket_contains a pvt pulse.
XSTYPES_DLL_API uint32_t XsDataPacket_sampleTimeCoarse(const XsDataPacket *thisPtr)
XSTYPES_DLL_API XsUShortVector * XsDataPacket_rawAcceleration(const XsDataPacket *thisPtr, XsUShortVector *returnVal)
The raw accelerometer component of a data item.
XSTYPES_DLL_API void XsDataPacket_setTemperature(XsDataPacket *thisPtr, double temperature)
Adds or updates the temperature data in the datapacket.
XSTYPES_DLL_API int XsDataPacket_containsOrientationIncrement(const XsDataPacket *thisPtr)
Check if data item contains delta quaternion data.
XSTYPES_DLL_API int XsDataPacket_containsRawGnssSatInfo(const XsDataPacket *thisPtr)
Returns 1 if data item contains RawGnssPvtData, 0 otherwise.
XSTYPES_DLL_API XsScrData * XsDataPacket_rawData(const XsDataPacket *thisPtr, XsScrData *returnVal)
Return the raw data component of a data item.
XSTYPES_DLL_API double XsDataPacket_altitude(const XsDataPacket *thisPtr)
The position altitude component of a data item.
Data from analog inputs from sensors.
XSTYPES_DLL_API void XsDataPacket_setRawTemperature(XsDataPacket *thisPtr, uint16_t temp)
Add/update raw temperature data for the item.
Contains StrapDown Integration (SDI) data.
XSTYPES_DLL_API int XsDataPacket_containsRawGyroscopeTemperatureData(const XsDataPacket *thisPtr)
Check if data item contains raw gyroscope temperature data.
XSTYPES_DLL_API void XsDataPacket_setOrientationQuaternion(XsDataPacket *thisPtr, const XsQuaternion *data, XsDataIdentifier coordinateSystem)
Add/update quaternion orientation Data for the item.
XsDataIdentifier
Defines the data identifiers.
XSTYPES_DLL_API XsCalibratedData * XsDataPacket_calibratedData(const XsDataPacket *thisPtr, XsCalibratedData *returnVal)
Return the calibrated Data component of a data item.
XSTYPES_DLL_API int XsDataPacket_containsLatitudeLongitude(const XsDataPacket *thisPtr)
Check if data item contains position latitude longitude data.
XSTYPES_DLL_API int XsDataPacket_containsVelocity(const XsDataPacket *thisPtr)
Check if data item contains velocity NED data.
XSTYPES_DLL_API void XsDataPacket_setMessage(XsDataPacket *thisPtr, const XsMessage *msg)
Overwrite the contents of the XsDataPacket with the contents of the supplied XsMessage.
XSTYPES_DLL_API void XsDataPacket_setFreeAcceleration(XsDataPacket *thisPtr, const XsVector *g)
Add/update free acceleration data for the item.
XSTYPES_DLL_API XsDataPacket * XsDataPacket_merge(XsDataPacket *thisPtr, const XsDataPacket *other, int overwrite)
Merge the data items from other into the packet.
XSTYPES_DLL_API void XsDataPacket_setRateOfTurnHR(XsDataPacket *thisPtr, const XsVector *vec)
Add/update the RateOfTurnHR for the item.
XSTYPES_DLL_API XsMatrix * XsDataPacket_orientationMatrix(const XsDataPacket *thisPtr, XsMatrix *returnVal, XsDataIdentifier coordinateSystem)
Return the orientation component of a data item as a orientation matrix.
Data for a trigger indication message.
XSTYPES_DLL_API int XsDataPacket_containsGnssAge(const XsDataPacket *thisPtr)
Returns 1 if data item contains GnssAge, 0 otherwise.
XSTYPES_DLL_API void XsDataPacket_setAwindaSnapshot(XsDataPacket *thisPtr, XsSnapshot const *data, int retransmission)
Sets the Awinda Snapshot part of the XsDataPacket.
XSTYPES_DLL_API void XsDataPacket_setAnalogIn1Data(XsDataPacket *thisPtr, const XsAnalogInData *data)
Add/update analog in 1 data for the item.
A vector containing 3 short values.
A container for GNSS Satellite Information.
XSTYPES_DLL_API void XsDataPacket_setCalibratedData(XsDataPacket *thisPtr, const XsCalibratedData *data)
Add/update calibrated Data for the item.
XSTYPES_DLL_API void XsDataPacket_setSampleTimeFine(XsDataPacket *thisPtr, uint32_t counter)
Add/update sample tine fine data for the item.
XSTYPES_DLL_API int XsDataPacket_empty(const XsDataPacket *thisPtr)
Returns whether the datapacket is empty.
XSTYPES_DLL_API XsVector * XsDataPacket_latitudeLongitude(const XsDataPacket *thisPtr, XsVector *returnVal)
The position latitude longitude component of a data item.
@ XHI_Unknown
Used as uninitialized or unknown side.
struct XSNOEXPORT DataPacketPrivate
XSTYPES_DLL_API uint32_t XsDataPacket_gnssPvtPulse(const XsDataPacket *thisPtr)
Returns the timestamp of a PVT Pulse.
XSTYPES_DLL_API XsGloveData * XsDataPacket_gloveData(const XsDataPacket *thisPtr, XsGloveData *returnVal, XsHandId hand)
Return the glove data component of a data item.
XSTYPES_DLL_API void XsDataPacket_copy(XsDataPacket *copy, XsDataPacket const *src)
Copy the XsDataPacket to copy.
XSTYPES_DLL_API void XsDataPacket_setOrientationIncrement(XsDataPacket *thisPtr, const XsQuaternion *quat)
Add/update delta quaternion data for the item.
XSTYPES_DLL_API void XsDataPacket_setGnssAge(XsDataPacket *thisPtr, uint8_t age)
Sets or updates the GnssAge value in the datapacket.
XSTYPES_DLL_API XsSnapshot * XsDataPacket_fullSnapshot(const XsDataPacket *thisPtr, XsSnapshot *returnVal)
Returns the Full Snapshot part of the XsDataPacket.
XSTYPES_DLL_API XsEuler * XsDataPacket_orientationEuler(const XsDataPacket *thisPtr, XsEuler *returnVal, XsDataIdentifier coordinateSystem)
Return the orientation component of a data item as a euler angles.
XSTYPES_DLL_API int XsDataPacket_containsPressure(const XsDataPacket *thisPtr)
Check if data item contains pressure data.
XSTYPES_DLL_API int XsDataPacket_containsPressureAge(const XsDataPacket *thisPtr)
Check if data item contains pressure age data.
struct XSNOEXPORT DataPacketPrivate * d
XSTYPES_DLL_API uint32_t XsDataPacket_status(const XsDataPacket *thisPtr)
The status component of a data item.
XSTYPES_DLL_API XsTriggerIndicationData * XsDataPacket_triggerIndication(const XsDataPacket *thisPtr, XsDataIdentifier triggerId, XsTriggerIndicationData *returnVal)
Returns the trigger indication data of a packet If the packet does not contain the requested data,...
XSTYPES_DLL_API int XsDataPacket_containsRateOfTurnHR(const XsDataPacket *thisPtr)
Check if data item contains RateOfTurnHR.
XSTYPES_DLL_API void XsDataPacket_setAccelerationHR(XsDataPacket *thisPtr, const XsVector *vec)
Add/update the AccelerationHR for the item.
XSTYPES_DLL_API int XsDataPacket_containsVelocityIncrement(const XsDataPacket *thisPtr)
Check if data item contains delta velocity data.
XSTYPES_DLL_API XsVector * XsDataPacket_velocityIncrement(const XsDataPacket *thisPtr, XsVector *returnVal)
The delta velocity (deltaV) component of a data item.
XSTYPES_DLL_API int XsDataPacket_containsRssi(const XsDataPacket *thisPtr)
Returns whether the datapacket contains an rssi value.
XSTYPES_DLL_API void XsDataPacket_setSampleTime64(XsDataPacket *thisPtr, uint64_t counter)
Add/update sample tine coarse data for the item.
XSTYPES_DLL_API void XsDataPacket_setCorrectedMagneticField(XsDataPacket *thisPtr, const XsVector *vec)
Add/update corrected magnetometer data for the item (ICC result).
XSTYPES_DLL_API void XsDataPacket_setRawBlob(XsDataPacket *thisPtr, const XsByteArray *data)
Sets the raw blob part of the XsDataPacket.
XSTYPES_DLL_API int XsDataPacket_containsCalibratedGyroscopeData(const XsDataPacket *thisPtr)
Check if data item contains calibrated gyroscope data.
XSTYPES_DLL_API XsVector * XsDataPacket_calibratedAcceleration(const XsDataPacket *thisPtr, XsVector *returnVal)
The calibrated accelerometer component of a data item.
XSTYPES_DLL_API void XsDataPacket_setPacketCounter8(XsDataPacket *thisPtr, uint8_t counter)
Add/update 8 bit packet counter data for the item.
XSTYPES_DLL_API int XsDataPacket_containsSampleTimeFine(const XsDataPacket *thisPtr)
Check if data item XsDataPacket_contains a sample time fine.
XSTYPES_DLL_API XsVector * XsDataPacket_calibratedMagneticField(const XsDataPacket *thisPtr, XsVector *returnVal)
The calibrated magnetometer component of a data item.
XSTYPES_DLL_API XsUShortVector * XsDataPacket_rawGyroscopeData(const XsDataPacket *thisPtr, XsUShortVector *returnVal)
The raw gyroscope component of a data item.
Structure for storing a single message.
XSTYPES_DLL_API int XsDataPacket_containsSampleTimeCoarse(const XsDataPacket *thisPtr)
Check if data item XsDataPacket_contains a sample time coarse.
XSTYPES_DLL_API int XsDataPacket_itemCount(const XsDataPacket *thisPtr)
Returns the number of individual items in the XsDataPacket.
Contains an Xsens device ID and provides operations for determining the type of device.
XSTYPES_DLL_API void XsDataPacket_setRawGnssSatInfo(XsDataPacket *thisPtr, const XsRawGnssSatInfo *r)
Sets or updates the RawGnssSatInfo value in the datapacket.
Container for combined calibrated measurement data from accelerometers, gyroscopes and magnetometers.
XsDeviceId m_deviceId
The device Id to which the message belongs.
XSTYPES_DLL_API int XsDataPacket_containsDetailedStatus(const XsDataPacket *thisPtr)
Check if data item contains detailed status data.
XSTYPES_DLL_API XsAnalogInData * XsDataPacket_analogIn1Data(const XsDataPacket *thisPtr, XsAnalogInData *returnVal)
The analog in 1 component of a data item.
XSTYPES_DLL_API void XsDataPacket_setUtcTime(XsDataPacket *thisPtr, const XsTimeInfo *data)
Add/update utc time data for the item.
XSTYPES_DLL_API double XsDataPacket_altitudeMsl(const XsDataPacket *thisPtr)
The position altitude above MSL component of a data item.
XSTYPES_DLL_API uint16_t XsDataPacket_rawTemperature(const XsDataPacket *thisPtr)
The raw temperature component of a data item.
XSTYPES_DLL_API XsVector * XsDataPacket_rawAccelerationConverted(const XsDataPacket *thisPtr, XsVector *returnVal)
The raw accelerometer component of a data item, converted to floating point values.
XSTYPES_DLL_API int XsDataPacket_privateCount()
Returns the number of private data items for all XsDataPacket combined currently in memory.
XSTYPES_DLL_API void XsDataPacket_setLatitudeLongitude(XsDataPacket *thisPtr, const XsVector *data)
Add/update position latitude longitude data for the item.
Container for raw sensor measurement data.
XSTYPES_DLL_API int XsDataPacket_containsOrientation(const XsDataPacket *thisPtr)
Check if data item contains orientation Data of any kind.
XSTYPES_DLL_API void XsDataPacket_setRawGyroscopeData(XsDataPacket *thisPtr, const XsUShortVector *vec)
Add/update raw gyroscope data for the item.
A container for Snapshot data.
XSTYPES_DLL_API void XsDataPacket_setRawGnssPvtData(XsDataPacket *thisPtr, const XsRawGnssPvtData *r)
Sets or updates the RawGnssPvtData value in the datapacket.
XSTYPES_DLL_API XsVector * XsDataPacket_rawGyroscopeTemperatureDataConverted(const XsDataPacket *thisPtr, XsVector *returnVal)
The raw gyroscope temperature component of a data item, converted to floating point values.
XSTYPES_DLL_API void XsDataPacket_setFrameRange(XsDataPacket *thisPtr, const XsRange *r)
Sets or updates the frame range in the datapacket.
XSTYPES_DLL_API void XsDataPacket_setVelocityIncrement(XsDataPacket *thisPtr, const XsVector *vec)
Add/update delta velocity data for the item.
XSTYPES_DLL_API uint64_t XsDataPacket_sampleTime64(const XsDataPacket *thisPtr)
Return the full 64-bit sample time of a packet, combined from the fine and coarse sample times or rec...
XSTYPES_DLL_API XsDataIdentifier XsDataPacket_coordinateSystemOrientation(const XsDataPacket *thisPtr)
Returns the coordinate system of the first orientation data of any kind in the packet.
XSTYPES_DLL_API int XsDataPacket_containsAnalogIn1Data(const XsDataPacket *thisPtr)
Check if data item contains analog in 1 data.
XSTYPES_DLL_API int XsDataPacket_isAwindaSnapshotARetransmission(const XsDataPacket *thisPtr)
Returns true if the contained Awinda Snapshot is marked as a retransmission.
XSTYPES_DLL_API int XsDataPacket_containsRawMagneticField(const XsDataPacket *thisPtr)
Check if data item contains raw magnetometer data.
XSTYPES_DLL_API XsVector * XsDataPacket_rawMagneticFieldConverted(const XsDataPacket *thisPtr, XsVector *returnVal)
The raw magnetometer component of a data item, converted to floating point values.
XSTYPES_DLL_API uint16_t XsDataPacket_packetCounter(const XsDataPacket *thisPtr)
Return the packet/frame counter of a packet.
XSTYPES_DLL_API XsRange * XsDataPacket_frameRange(const XsDataPacket *thisPtr, XsRange *returnVal)
Returns the frame range contained in the datapacket.
XSTYPES_DLL_API int XsDataPacket_containsSampleTime64(const XsDataPacket *thisPtr)
Check if data item XsDataPacket contains a full 64-bit sample time.
XSTYPES_DLL_API void XsDataPacket_setRawAcceleration(XsDataPacket *thisPtr, const XsUShortVector *vec)
Add/update raw accelerometer data for the item.
Contains Euler Angle data and conversion from Quaternion.
XsTimeStamp m_etos
Estimated Time of Sampling (live packets only)
XSTYPES_DLL_API XsDataIdentifier XsDataPacket_velocityIdentifier(const XsDataPacket *thisPtr)
Returns the data identifier of the first velocity data of any kind in the packet.
XSTYPES_DLL_API int XsDataPacket_containsPacketCounter8(const XsDataPacket *thisPtr)
Check if data item contains an 8 bit packet counter.
XSTYPES_DLL_API void XsDataPacket_setStoredLocationId(XsDataPacket *thisPtr, uint16_t data)
Add or update location ID for the item.
XSTYPES_DLL_API int XsDataPacket_containsStatus(const XsDataPacket *thisPtr)
Check if data item contains legacy status data.
XSTYPES_DLL_API int XsDataPacket_containsCalibratedMagneticField(const XsDataPacket *thisPtr)
Check if data item contains calibrated magnetometer data.
XSTYPES_DLL_API XsVector * XsDataPacket_correctedMagneticField(const XsDataPacket *thisPtr, XsVector *returnVal)
The corrected magnetometer component of a data item (ICC result).
XSTYPES_DLL_API XsSnapshot * XsDataPacket_awindaSnapshot(const XsDataPacket *thisPtr, XsSnapshot *returnVal)
Returns the Awinda Snapshot part of the XsDataPacket.
XSTYPES_DLL_API double XsDataPacket_temperature(const XsDataPacket *thisPtr)
The temperature component of a data item.
XSTYPES_DLL_API void XsDataPacket_setRssi(XsDataPacket *thisPtr, int r)
Sets or updates the rssi value in the datapacket.
XSTYPES_DLL_API uint8_t XsDataPacket_gnssAge(const XsDataPacket *thisPtr)
Returns the age of the GNSS data (in samples)
XSTYPES_DLL_API int XsDataPacket_containsStoredLocationId(const XsDataPacket *thisPtr)
Return non-zero if this data packet stores a location ID.
XSTYPES_DLL_API void XsDataPacket_setOrientationMatrix(XsDataPacket *thisPtr, const XsMatrix *data, XsDataIdentifier coordinateSystem)
Add/update quaternion orientation Data for the item.
XsTimeStamp m_toa
Time Of Arrival (live packets only)
XSTYPES_DLL_API int XsDataPacket_containsCalibratedAcceleration(const XsDataPacket *thisPtr)
Check if data item contains calibrated accelerometer data.
XSTYPES_DLL_API void XsDataPacket_setSampleTimeCoarse(XsDataPacket *thisPtr, uint32_t counter)
Add/update sample tine coarse data for the item.
XSTYPES_DLL_API void XsDataPacket_setAltitudeMsl(XsDataPacket *thisPtr, double data)
Add/update altitude above MSL data for the item.
XSTYPES_DLL_API int XsDataPacket_containsTemperature(const XsDataPacket *thisPtr)
Check if data item contains temperature data.
XSTYPES_DLL_API XsVector * XsDataPacket_velocity(const XsDataPacket *thisPtr, XsVector *returnVal, XsDataIdentifier coordinateSystem)
The velocity NWU component of a data item.
XSTYPES_DLL_API void XsDataPacket_setStatus(XsDataPacket *thisPtr, uint32_t data)
Add/update status data for the item.
XSTYPES_DLL_API void XsDataPacket_setGloveSnapshot(XsDataPacket *thisPtr, XsGloveSnapshot const *data, int retransmission, XsHandId hand)
Sets the Glove Snapshot part of the XsDataPacket.
XSTYPES_DLL_API int XsDataPacket_containsUtcTime(const XsDataPacket *thisPtr)
Check if data item contains utc time data.
XSTYPES_DLL_API XsDataIdentifier XsDataPacket_orientationIdentifier(const XsDataPacket *thisPtr)
Returns the data identifier of the first orientation data of any kind in the packet.
XSTYPES_DLL_API XsRawGnssSatInfo * XsDataPacket_rawGnssSatInfo(const XsDataPacket *thisPtr, XsRawGnssSatInfo *returnVal)
Returns a struct with RawGnssSatInfo.
XSTYPES_DLL_API void XsDataPacket_setPacketCounter(XsDataPacket *thisPtr, uint16_t counter)
Add/update packet counter data for the item.
XSTYPES_DLL_API int XsDataPacket_containsAltitude(const XsDataPacket *thisPtr)
Check if data item contains position altitude data.
This class contains method to set, retrieve and compare timestamps.
XSTYPES_DLL_API int XsDataPacket_containsRawGyroscopeData(const XsDataPacket *thisPtr)
Check if data item contains raw gyroscope data.
A structure for storing Time values.