define the arrival waypoint

This commit is contained in:
Sven Czarnian
2021-11-22 16:18:47 +01:00
parent 155a035a9c
commit 2240978b01
3 changed files with 95 additions and 0 deletions

View File

@@ -0,0 +1,56 @@
/*
* @brief Defines a waypoint of a route
* @file types/ArrivalWaypoint.h
* @author Sven Czarnian <devel@svcz.de>
* @copyright Copyright 2020-2021 Sven Czarnian
* @license This project is published under the GNU General Public License v3 (GPLv3)
*/
#pragma once
#include <string>
#include <aman/helper/UtcTime.h>
#include <aman/types/GeoCoordinate.h>
namespace aman {
/**
* @brief Describes a waypoint of a route
* @ingroup types
*/
class ArrivalWaypoint {
private:
std::string m_name;
GeoCoordinate m_position;
Length m_altitude;
Velocity m_indicatedAirspeed;
UtcTime::Point m_plannedArrivalTime;
public:
/**
* @brief Creates an empty waypoint
*/
ArrivalWaypoint() noexcept;
/**
* @brief Creates a waypoint
* @param[in] name The waypoint's name
* @param[in] position The waypoint's position
* @param[in] altitude The planned altitude
* @param[in] indicatedAirspeed The planned IAS
* @param[in] pta The planned time of arrival
*/
ArrivalWaypoint(const std::string& name, const GeoCoordinate& position, const Length& altitude,
const Velocity& indicatedAirspeed, const UtcTime::Point& pta);
/**
* @brief Returns the waypoint's name
* @return The name
*/
const std::string& name() const noexcept;
/**
* @brief Returns the waypoint's position
* @return The position
*/
const GeoCoordinate& position() const noexcept;
};
}