0.5.0
Loading...
Searching...
No Matches
NAV::Pos Class Reference

Position Storage Class. More...

Public Member Functions

const double & altitude () const
 Returns the altitude (height above ground) in [m].
std::optional< std::reference_wrapper< const KeyedMatrixXd< Keys::MotionModelKey, Keys::MotionModelKey > > > e_CovarianceMatrix () const
 Returns the Covariance matrix in ECEF frame.
const Eigen::Vector3d & e_position () const
 Returns the coordinates in [m].
std::optional< Eigen::Vector3d > e_positionStdev () const
 Returns the standard deviation of the position in ECEF frame coordinates in [m].
Eigen::Quaterniond e_Quat_n () const
 Returns the Quaternion from navigation to Earth-fixed frame.
std::string getType () const override
 Returns the type of the data class.
std::optional< double > getValueAt (size_t idx) const override
 Get the value at the index.
const double & latitude () const
 Returns the latitude 𝜙 in [rad].
const Eigen::Vector3d & lla_position () const
 Returns the latitude 𝜙, longitude λ and altitude (height above ground) in [rad, rad, m].
const double & longitude () const
 Returns the longitude λ in [rad].
std::optional< std::reference_wrapper< const KeyedMatrixXd< Keys::MotionModelKey, Keys::MotionModelKey > > > n_CovarianceMatrix () const
 Returns the Covariance matrix in local navigation frame.
std::optional< Eigen::Vector3d > n_positionStdev () const
 Returns the standard deviation of the position in local navigation frame coordinates in [m].
Eigen::Quaterniond n_Quat_e () const
 Returns the Quaternion from Earth-fixed frame to navigation.
template<typename Derived>
void setPosCovarianceMatrix_e (const Eigen::MatrixBase< Derived > &e_covarianceMatrix)
 Set the Covariance matrix in ECEF coordinates.
template<typename Derived>
void setPosCovarianceMatrix_n (const Eigen::MatrixBase< Derived > &n_covarianceMatrix)
 Set the Covariance matrix in NED coordinates.
template<typename Derived>
void setPosition_e (const Eigen::MatrixBase< Derived > &e_position)
 Set the Position in coordinates.
template<typename Derived>
void setPosition_lla (const Eigen::MatrixBase< Derived > &lla_position)
 Set the Position lla object.
template<typename DerivedP, typename Derived>
void setPositionAndCov_e (const Eigen::MatrixBase< DerivedP > &e_position, const Eigen::MatrixBase< Derived > &e_covarianceMatrix)
 Set the position and the covariance matrix.
template<typename DerivedP, typename Derived>
void setPositionAndCov_n (const Eigen::MatrixBase< DerivedP > &lla_position, const Eigen::MatrixBase< Derived > &n_covarianceMatrix)
 Set the position and the covariance matrix.
bool setValueAt (size_t idx, double value) override
 Set the value at the index.
std::vector< std::string > staticDataDescriptors () const override
 Returns a vector of data descriptors.
size_t staticDescriptorCount () const override
 Get the amount of descriptors.
Public Member Functions inherited from NAV::NodeData
void addEvent (const std::string &text)
 Adds the event to the list.
virtual std::vector< std::string > dynamicDataDescriptors () const
 Returns a vector of data descriptors for the dynamic data.
const std::vector< std::string > & events () const
 Returns a vector of string events associated with this data.
virtual std::vector< std::pair< std::string, double > > getDynamicData () const
 Returns a vector of data descriptors and values for the dynamic data.
virtual std::optional< double > getDynamicDataAt (const std::string &) const
 Get the value for the descriptor.
double getValueAtOrNaN (size_t idx) const
 Get the value at the index or NaN if not in the observation.
virtual void guiTooltip (bool detailView, bool firstOpen, const char *displayName, const char *id, int *rootWindow) const
 Shows a GUI tooltip to look into details of the observation.
virtual bool hasTooltip () const
 Return whether this data has a tooltip.
 NodeData ()=default
 Default constructor.
 NodeData (const NodeData &)=default
 Copy constructor.
 NodeData (NodeData &&)=default
 Move constructor.
NodeDataoperator= (const NodeData &)=default
 Copy assignment operator.
NodeDataoperator= (NodeData &&)=default
 Move assignment operator.
virtual bool setDynamicDataAt (const std::string &, double)
 Set the value for the descriptor.
virtual ~NodeData ()=default
 Destructor.

Static Public Member Functions

static std::vector< std::string > GetStaticDataDescriptors ()
 Returns a vector of data descriptors.
static constexpr size_t GetStaticDescriptorCount ()
 Get the amount of descriptors.
static std::vector< std::string > parentTypes ()
 Returns the parent types of the data class.
static std::string type ()
 Returns the type of the data class.
Static Public Member Functions inherited from NAV::NodeData
static std::vector< std::string > GetStaticDataDescriptors ()
 Returns a vector of data descriptors.
static constexpr size_t GetStaticDescriptorCount ()
 Get the amount of descriptors.
static std::vector< std::string > parentTypes ()
 Returns the parent types of the data class.
static std::string type ()
 Returns the type of the data class.

Protected Attributes

std::optional< KeyedMatrixXd< Keys::MotionModelKey, Keys::MotionModelKey > > _e_covarianceMatrix
 Covariance matrix in ECEF coordinates.
std::optional< KeyedMatrixXd< Keys::MotionModelKey, Keys::MotionModelKey > > _n_covarianceMatrix
 Covariance matrix in local navigation coordinates.
Protected Attributes inherited from NAV::NodeData
std::vector< std::string > _events
 List of events.

Private Attributes

Eigen::Vector3d _e_position
 Position in ECEF coordinates [m].
Eigen::Vector3d _lla_position
 Position in LatLonAlt coordinates [rad, rad, m].

Additional Inherited Members

Data Fields inherited from NAV::NodeData
InsTime insTime
 Time at which the message was received.

Detailed Description

Position Storage Class.

Definition at line 31 of file Pos.hpp.

Member Function Documentation

◆ altitude()

const double & NAV::Pos::altitude ( ) const
inlinenodiscard

Returns the altitude (height above ground) in [m].

Definition at line 246 of file Pos.hpp.

◆ e_CovarianceMatrix()

std::optional< std::reference_wrapper< const KeyedMatrixXd< Keys::MotionModelKey, Keys::MotionModelKey > > > NAV::Pos::e_CovarianceMatrix ( ) const
inlinenodiscard

Returns the Covariance matrix in ECEF frame.

Definition at line 272 of file Pos.hpp.

◆ e_position()

const Eigen::Vector3d & NAV::Pos::e_position ( ) const
inlinenodiscard

Returns the coordinates in [m].

Definition at line 249 of file Pos.hpp.

◆ e_positionStdev()

std::optional< Eigen::Vector3d > NAV::Pos::e_positionStdev ( ) const
inlinenodiscard

Returns the standard deviation of the position in ECEF frame coordinates in [m].

Definition at line 252 of file Pos.hpp.

◆ e_Quat_n()

Eigen::Quaterniond NAV::Pos::e_Quat_n ( ) const
inlinenodiscard

Returns the Quaternion from navigation to Earth-fixed frame.

Returns
The Quaternion for the rotation from navigation to earth coordinates

Definition at line 220 of file Pos.hpp.

◆ GetStaticDataDescriptors()

std::vector< std::string > NAV::Pos::GetStaticDataDescriptors ( )
inlinestaticnodiscard

Returns a vector of data descriptors.

Definition at line 53 of file Pos.hpp.

◆ GetStaticDescriptorCount()

constexpr size_t NAV::Pos::GetStaticDescriptorCount ( )
inlinestaticnodiscardconstexpr

Get the amount of descriptors.

Definition at line 80 of file Pos.hpp.

◆ getType()

std::string NAV::Pos::getType ( ) const
inlinenodiscardoverridevirtual

Returns the type of the data class.

Returns
The data type

Reimplemented from NAV::NodeData.

Reimplemented in NAV::PosVel, NAV::PosVelAtt, NAV::RtklibPosObs, NAV::RtkSolution, NAV::SppSolution, and NAV::WiFiPositioningSolution.

Definition at line 43 of file Pos.hpp.

◆ getValueAt()

std::optional< double > NAV::Pos::getValueAt ( size_t idx) const
inlinenodiscardoverridevirtual

Get the value at the index.

Parameters
idxIndex corresponding to data descriptor order
Returns
Value if in the observation

Reimplemented from NAV::NodeData.

Reimplemented in NAV::PosVel, NAV::PosVelAtt, NAV::RtklibPosObs, NAV::RtkSolution, NAV::SppSolution, and NAV::WiFiPositioningSolution.

Definition at line 91 of file Pos.hpp.

◆ latitude()

const double & NAV::Pos::latitude ( ) const
inlinenodiscard

Returns the latitude 𝜙 in [rad].

Definition at line 240 of file Pos.hpp.

◆ lla_position()

const Eigen::Vector3d & NAV::Pos::lla_position ( ) const
inlinenodiscard

Returns the latitude 𝜙, longitude λ and altitude (height above ground) in [rad, rad, m].

Definition at line 237 of file Pos.hpp.

◆ longitude()

const double & NAV::Pos::longitude ( ) const
inlinenodiscard

Returns the longitude λ in [rad].

Definition at line 243 of file Pos.hpp.

◆ n_CovarianceMatrix()

std::optional< std::reference_wrapper< const KeyedMatrixXd< Keys::MotionModelKey, Keys::MotionModelKey > > > NAV::Pos::n_CovarianceMatrix ( ) const
inlinenodiscard

Returns the Covariance matrix in local navigation frame.

Definition at line 275 of file Pos.hpp.

◆ n_positionStdev()

std::optional< Eigen::Vector3d > NAV::Pos::n_positionStdev ( ) const
inlinenodiscard

Returns the standard deviation of the position in local navigation frame coordinates in [m].

Definition at line 262 of file Pos.hpp.

◆ n_Quat_e()

Eigen::Quaterniond NAV::Pos::n_Quat_e ( ) const
inlinenodiscard

Returns the Quaternion from Earth-fixed frame to navigation.

Returns
The Quaternion for the rotation from earth navigation coordinates

Definition at line 227 of file Pos.hpp.

◆ parentTypes()

std::vector< std::string > NAV::Pos::parentTypes ( )
inlinestaticnodiscard

Returns the parent types of the data class.

Returns
The parent data types

Definition at line 47 of file Pos.hpp.

◆ setPosCovarianceMatrix_e()

template<typename Derived>
void NAV::Pos::setPosCovarianceMatrix_e ( const Eigen::MatrixBase< Derived > & e_covarianceMatrix)
inline

Set the Covariance matrix in ECEF coordinates.

Parameters
[in]e_covarianceMatrix3x3 Pos Error variance
Attention
Position has to be set before calling this

Definition at line 323 of file Pos.hpp.

◆ setPosCovarianceMatrix_n()

template<typename Derived>
void NAV::Pos::setPosCovarianceMatrix_n ( const Eigen::MatrixBase< Derived > & n_covarianceMatrix)
inline

Set the Covariance matrix in NED coordinates.

Parameters
[in]n_covarianceMatrix3x3 Pos Error variance
Attention
Position has to be set before calling this

Definition at line 341 of file Pos.hpp.

◆ setPosition_e()

template<typename Derived>
void NAV::Pos::setPosition_e ( const Eigen::MatrixBase< Derived > & e_position)
inline

Set the Position in coordinates.

Parameters
[in]e_positionNew Position in ECEF coordinates

Definition at line 284 of file Pos.hpp.

◆ setPosition_lla()

template<typename Derived>
void NAV::Pos::setPosition_lla ( const Eigen::MatrixBase< Derived > & lla_position)
inline

Set the Position lla object.

Parameters
[in]lla_positionNew Position in LatLonAlt coordinates

Definition at line 293 of file Pos.hpp.

◆ setPositionAndCov_e()

template<typename DerivedP, typename Derived>
void NAV::Pos::setPositionAndCov_e ( const Eigen::MatrixBase< DerivedP > & e_position,
const Eigen::MatrixBase< Derived > & e_covarianceMatrix )
inline

Set the position and the covariance matrix.

Parameters
[in]e_positionNew Position in ECEF coordinates
[in]e_covarianceMatrix3x3 Pos Error variance

Definition at line 303 of file Pos.hpp.

◆ setPositionAndCov_n()

template<typename DerivedP, typename Derived>
void NAV::Pos::setPositionAndCov_n ( const Eigen::MatrixBase< DerivedP > & lla_position,
const Eigen::MatrixBase< Derived > & n_covarianceMatrix )
inline

Set the position and the covariance matrix.

Parameters
[in]lla_positionNew Position in LatLonAlt coordinates [rad, rad, m]
[in]n_covarianceMatrix3x3 Pos Error variance in NED frame [m]

Definition at line 313 of file Pos.hpp.

◆ setValueAt()

bool NAV::Pos::setValueAt ( size_t idx,
double value )
inlinenodiscardoverridevirtual

Set the value at the index.

Parameters
idxIndex corresponding to data descriptor order
valueValue to set
Returns
True if the value was updated

Reimplemented from NAV::NodeData.

Reimplemented in NAV::PosVel, and NAV::PosVelAtt.

Definition at line 158 of file Pos.hpp.

◆ staticDataDescriptors()

std::vector< std::string > NAV::Pos::staticDataDescriptors ( ) const
inlinenodiscardoverridevirtual

Returns a vector of data descriptors.

Reimplemented from NAV::NodeData.

Reimplemented in NAV::PosVel, NAV::PosVelAtt, NAV::RtklibPosObs, NAV::RtkSolution, NAV::SppSolution, and NAV::WiFiPositioningSolution.

Definition at line 83 of file Pos.hpp.

◆ staticDescriptorCount()

size_t NAV::Pos::staticDescriptorCount ( ) const
inlinenodiscardoverridevirtual

Get the amount of descriptors.

Reimplemented from NAV::NodeData.

Reimplemented in NAV::PosVel, NAV::PosVelAtt, NAV::RtklibPosObs, NAV::RtkSolution, NAV::SppSolution, and NAV::WiFiPositioningSolution.

Definition at line 86 of file Pos.hpp.

◆ type()

std::string NAV::Pos::type ( )
inlinestaticnodiscard

Returns the type of the data class.

Returns
The data type

Definition at line 36 of file Pos.hpp.

Field Documentation

◆ _e_covarianceMatrix

std::optional<KeyedMatrixXd<Keys::MotionModelKey, Keys::MotionModelKey> > NAV::Pos::_e_covarianceMatrix
protected

Covariance matrix in ECEF coordinates.

Definition at line 361 of file Pos.hpp.

◆ _e_position

Eigen::Vector3d NAV::Pos::_e_position
private

Position in ECEF coordinates [m].

Definition at line 368 of file Pos.hpp.

◆ _lla_position

Eigen::Vector3d NAV::Pos::_lla_position
private

Position in LatLonAlt coordinates [rad, rad, m].

Definition at line 370 of file Pos.hpp.

◆ _n_covarianceMatrix

std::optional<KeyedMatrixXd<Keys::MotionModelKey, Keys::MotionModelKey> > NAV::Pos::_n_covarianceMatrix
protected

Covariance matrix in local navigation coordinates.

Definition at line 364 of file Pos.hpp.


The documentation for this class was generated from the following file:
  • /home/runner/work/INSTINCT/INSTINCT/src/NodeData/State/Pos.hpp