Struct PntosInertialPlugin

Struct Documentation

struct PntosInertialPlugin

An implementation of an inertial plugin. This plugin generates PntosCommonInertial instances which may be used to generate INS solutions from raw IMU data.

UNSTABLE: This feature is unstable and is not yet considered part of the stable pntOS API. Usage of this feature is highly discouraged in non-experimental code, and its definition may change at any time.

Public Members

PntosCommonPlugin common
bool (*is_inertial_type_supported)(struct PntosInertialPlugin *self, PntosInertialType type)

Return if the plugin supports a given type of inertial. See PntosInertialType.

PntosCommonInertial *(*new_inertial)(struct PntosInertialPlugin *self, PntosInertialType type, PntosMessage *solution, char *config_group)

Create an instance of PntosCommonInertial.

Param type

Specifies the type of inertial that the returned value will support. For example, if the user passes in PNTOS_STANDARD_INERTIAL_MECHANIZATION, then the returned value will be castable to PntosStandardInertialMechanization. If type is unsupported by the plugin, then NULL will be returned. Please use is_inertial_type_supported to check if the type is supported by the plugin.

Param solution

The initial solution (i.e. the alignment) to mechanize from.

Param config_group

An optional parameter which can be used to specify which group in the config should be used to initialize the new inertial. This allows for multiple inertial instances to exist with unique settings.

Return

A new inertial object. Returns NULL if type is unsupported, solution is invalid, or config_group is invalid. is_inertial_type_supported can be called to verify type before calling this method.