mirror of
https://github.com/ArduPilot/ardupilot
synced 2025-01-08 17:08:28 -04:00
AP_NavEKF: GSF getLogData and getYawData pass by reference
This commit is contained in:
parent
8a8271c2c7
commit
1ee9f3a6de
@ -592,11 +592,11 @@ float EKFGSF_yaw::gaussianDensity(const uint8_t mdl_idx) const
|
||||
return normDist;
|
||||
}
|
||||
|
||||
bool EKFGSF_yaw::getLogData(float *yaw_composite, float *yaw_composite_variance, float yaw[N_MODELS_EKFGSF], float innov_VN[N_MODELS_EKFGSF], float innov_VE[N_MODELS_EKFGSF], float weight[N_MODELS_EKFGSF])
|
||||
bool EKFGSF_yaw::getLogData(float &yaw_composite, float &yaw_composite_variance, float yaw[N_MODELS_EKFGSF], float innov_VN[N_MODELS_EKFGSF], float innov_VE[N_MODELS_EKFGSF], float weight[N_MODELS_EKFGSF])
|
||||
{
|
||||
if (vel_fuse_running) {
|
||||
*yaw_composite = GSF.yaw;
|
||||
*yaw_composite_variance = GSF.yaw_variance;
|
||||
yaw_composite = GSF.yaw;
|
||||
yaw_composite_variance = GSF.yaw_variance;
|
||||
for (uint8_t mdl_idx = 0; mdl_idx < N_MODELS_EKFGSF; mdl_idx++) {
|
||||
yaw[mdl_idx] = EKF[mdl_idx].X[2];
|
||||
innov_VN[mdl_idx] = EKF[mdl_idx].innov[0];
|
||||
@ -647,12 +647,12 @@ Matrix3f EKFGSF_yaw::updateRotMat(const Matrix3f &R, const Vector3f &g)
|
||||
return ret;
|
||||
}
|
||||
|
||||
bool EKFGSF_yaw::getYawData(float *yaw, float *yawVariance)
|
||||
bool EKFGSF_yaw::getYawData(float &yaw, float &yawVariance)
|
||||
{
|
||||
if (!vel_fuse_running) {
|
||||
return false;
|
||||
}
|
||||
*yaw = GSF.yaw;
|
||||
*yawVariance = GSF.yaw_variance;
|
||||
yaw = GSF.yaw;
|
||||
yawVariance = GSF.yaw_variance;
|
||||
return true;
|
||||
}
|
@ -27,11 +27,11 @@ public:
|
||||
|
||||
// get solution data for logging
|
||||
// return false if yaw estimation is inactive
|
||||
bool getLogData(float *yaw_composite, float *yaw_composite_variance, float yaw[N_MODELS_EKFGSF], float innov_VN[N_MODELS_EKFGSF], float innov_VE[N_MODELS_EKFGSF], float weight[N_MODELS_EKFGSF]);
|
||||
bool getLogData(float &yaw_composite, float &yaw_composite_variance, float yaw[N_MODELS_EKFGSF], float innov_VN[N_MODELS_EKFGSF], float innov_VE[N_MODELS_EKFGSF], float weight[N_MODELS_EKFGSF]);
|
||||
|
||||
// get yaw estimated and corresponding variance
|
||||
// return false if yaw estimation is inactive
|
||||
bool getYawData(float *yaw, float *yawVariance);
|
||||
bool getYawData(float &yaw, float &yawVariance);
|
||||
|
||||
private:
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user