WSF
WsfSixDOF_Utils.hpp File Reference
#include "wsf_six_dof_export.h"
#include <memory>
#include <string>
#include <vector>
#include "UtVec3dX.hpp"
#include "WsfSixDOF_PID.hpp"
Include dependency graph for WsfSixDOF_Utils.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  wsf
 Function definitions for those who need run-time access to the version.
namespace  wsf::six_dof
namespace  wsf::six_dof::utils

Enumerations

enum  wsf::six_dof::utils::CanFlyAtReturnValue { wsf::six_dof::utils::CAN_NOT_FLY , wsf::six_dof::utils::CONTROL_FAIL , wsf::six_dof::utils::CAN_FLY }

Functions

WSF_SIX_DOF_EXPORT const SinglePidValueDatawsf::six_dof::utils::GetSinglePidData (Pid::Type aPidType, const AutopilotPidGroupValueData &aPidValues)
std::string wsf::six_dof::utils::OutputDoubleString (double aValue, int aWidth, int aPrecision)
WSF_SIX_DOF_EXPORT int64_t wsf::six_dof::utils::TimeToTime (double aSimTime_sec)
WSF_SIX_DOF_EXPORT double wsf::six_dof::utils::TimeToTime (int64_t aSimTime_nanosec)
WSF_SIX_DOF_EXPORT double wsf::six_dof::utils::NextGuessFromFalsePosition (double aInputA, double aOutputA, double aInputB, double aOutputB)
WSF_SIX_DOF_EXPORT void wsf::six_dof::utils::UpdateFalsePositionBounds (double &aInputA, double &aOutputA, double &aInputB, double &aOutputB, double aInputC, double aOutputC)
WSF_SIX_DOF_EXPORT void wsf::six_dof::utils::CalcUnitVectors (const UtDCM &aDCM, UtVec3dX &aUnitVecX, UtVec3dX &aUnitVecY, UtVec3dX &aUnitVecZ)
WSF_SIX_DOF_EXPORT void wsf::six_dof::utils::CalcLocalNEDVectors (const UtVec3dX &aPos, UtVec3dX &aLocalNorth, UtVec3dX &aLocalEast, UtVec3dX &aLocalDown)
WSF_SIX_DOF_EXPORT void wsf::six_dof::utils::CalcLocalAngles (const UtVec3dX &aLocalNorth, const UtVec3dX &aLocalEast, const UtVec3dX &aLocalDown, const UtVec3dX &aUnitVecX, const UtVec3dX &aUnitVecZ, double &aLocalYaw_rad, double &aLocalPitch_rad, double &aLocalRoll_rad)
WSF_SIX_DOF_EXPORT void wsf::six_dof::utils::InertialToBodyRel (const UtDCM &aMatrix, const UtVec3dX &aInertial, UtVec3dX &aBodyRel)
WSF_SIX_DOF_EXPORT void wsf::six_dof::utils::DCM_InertialToBodyRel (const UtDCM &aMatrix, const UtVec3dX &aInertial, UtVec3dX &aBodyRel)
WSF_SIX_DOF_EXPORT void wsf::six_dof::utils::AlphaBetaFromInertialVel (const UtDCM &aMatrix, const UtVec3dX &aInertialVel_mps, double &aSpeed_fps, double &aAlpha_deg, double &aBeta_deg)
WSF_SIX_DOF_EXPORT void wsf::six_dof::utils::AlphaBetaFromBodyRelVel (const UtVec3dX &aVel_fps, double &aAlpha_deg, double &aBeta_deg, double &aSpeed_fps)
WSF_SIX_DOF_EXPORT void wsf::six_dof::utils::AlphaBetaFromBodyRelVel (const UtVec3dX &aVel_fps, double &aAlpha_deg, double &aBeta_deg)
WSF_SIX_DOF_EXPORT void wsf::six_dof::utils::LimitThrottleNormalized (double &aThrottle)
WSF_SIX_DOF_EXPORT void wsf::six_dof::utils::LimitThrottleAfterburner (double &aThrottle)

Variables

static constexpr int64_t wsf::six_dof::utils::cDT_RIGID_BODY_NANOSEC = 10000000
static constexpr int64_t wsf::six_dof::utils::cDT_POINT_MASS_NANOSEC = 50000000
static constexpr double wsf::six_dof::utils::cDT_RIGID_BODY_SEC = (0.000000001 * static_cast<double>(cDT_RIGID_BODY_NANOSEC))
static constexpr double wsf::six_dof::utils::cDT_POINT_MASS_SEC = (0.000000001 * static_cast<double>(cDT_POINT_MASS_NANOSEC))
static constexpr int64_t wsf::six_dof::utils::cEPSILON_SIMTIME_NANOSEC = 100
static constexpr double wsf::six_dof::utils::cEPSILON_SIMTIME_SEC = (0.000000001 * static_cast<double>(cEPSILON_SIMTIME_NANOSEC))
static constexpr double wsf::six_dof::utils::cREFERENCE_GRAV_ACCEL_MPS2 = 9.80665
Copyrights Multiple, All Rights Reserved