Class astrea::astro::Vehicle¶
ClassList > astrea > astro > Vehicle
A class representing a vehicle in the astrea astro platform. This class serves as a base for user-defined vehicles and provides a common interface.
#include <Vehicle.hpp>
Inherits the following classes: astrea::astro::FrameReference
Public Functions¶
| Type | Name |
|---|---|
| Vehicle () Default constructor for Vehicle . |
|
| Vehicle (T && x) Constructs a Vehicle with a user-defined type. |
|
| Vehicle (const Vehicle & other) Copy constructor for Vehicle . |
|
| Vehicle (Vehicle && other) noexcept Move constructor for Vehicle . |
|
| const T * | extract () noexcept const Extracts the user-defined vehicle from the Vehicle instance. |
| Unitless | get_coefficient_of_drag () const Gets the coefficient of drag. |
| Unitless | get_coefficient_of_lift () const Gets the coefficient of lift. |
| Unitless | get_coefficient_of_reflectivity () const Gets the coefficient of reflectivity. |
| virtual AccelerationVector< frames::earth::icrf > | get_inertial_acceleration (const Date & date) override const Get the acceleration of the frame in Earth-Centered Inertial coordinates. |
| virtual RadiusVector< frames::earth::icrf > | get_inertial_position (const Date & date) override const Get the position of the frame in Earth-Centered Inertial coordinates. |
| virtual VelocityVector< frames::earth::icrf > | get_inertial_velocity (const Date & date) override const Get the velocity of the frame in Earth-Centered Inertial coordinates. |
| SurfaceArea | get_lift_area () const Get the lift area of the vehicle. |
| Mass | get_mass () const Gets the mass of the vehicle. |
| virtual std::string | get_name () override const Gets the name of the vehicle. |
| const void * | get_ptr () const Gets a pointer to the internal vehicle instance. |
| void * | get_ptr () Gets a pointer to the internal vehicle instance. |
| SurfaceArea | get_ram_area () const Get the ram area of the vehicle. |
| SurfaceArea | get_solar_area () const Get the solar area of the vehicle. |
| Vehicle & | operator= (Vehicle && other) noexcept Copy assignment operator for Vehicle . |
| Vehicle & | operator= (const Vehicle & other) Move assignment operator for Vehicle . |
| Vehicle & | operator= (T && x) Generic assignment operator for Vehicle . |
Public Functions inherited from astrea::astro::FrameReference¶
See astrea::astro::FrameReference
| Type | Name |
|---|---|
| FrameReference () = default Default constructor for FrameReference . |
|
| virtual CartesianVector< Acceleration, frames::earth::icrf > | get_inertial_acceleration (const Date & date) const Get the acceleration of the frame in Earth-Centered Inertial coordinates. |
| virtual CartesianVector< Distance, frames::earth::icrf > | get_inertial_position (const Date & date) const = 0 Get the position of the frame in Earth-Centered Inertial coordinates. |
| virtual CartesianVector< Velocity, frames::earth::icrf > | get_inertial_velocity (const Date & date) const = 0 Get the velocity of the frame in Earth-Centered Inertial coordinates. |
| virtual std::string | get_name () const = 0 Get the name of the frame reference. |
| virtual | ~FrameReference () = default Default destructor for FrameReference . |
Public Functions Documentation¶
function Vehicle [1/4]¶
Default constructor for Vehicle .
function Vehicle [2/4]¶
Constructs a Vehicle with a user-defined type.
template<IsGenericallyConstructableVehicle T>
inline explicit astrea::astro::Vehicle::Vehicle (
T && x
)
Template parameters:
TThe type of the user-defined vehicle.
Parameters:
xThe user-defined vehicle instance to initialize the Vehicle.
function Vehicle [3/4]¶
Copy constructor for Vehicle .
Parameters:
otherThe Vehicle instance to copy from.
function Vehicle [4/4]¶
Move constructor for Vehicle .
Parameters:
otherThe Vehicle instance to move from.
function extract¶
Extracts the user-defined vehicle from the Vehicle instance.
template<IsGenericallyConstructableVehicle T>
inline const T * astrea::astro::Vehicle::extract () noexcept const
Template parameters:
TThe type of the user-defined vehicle to extract.
Returns:
const T* A pointer to the user-defined vehicle if it matches the type, otherwise nullptr.
function get_coefficient_of_drag¶
Gets the coefficient of drag.
Returns:
Unitless The coefficient of drag.
function get_coefficient_of_lift¶
Gets the coefficient of lift.
Returns:
Unitless The coefficient of lift.
function get_coefficient_of_reflectivity¶
Gets the coefficient of reflectivity.
Returns:
Unitless The coefficient of reflectivity.
function get_inertial_acceleration¶
Get the acceleration of the frame in Earth-Centered Inertial coordinates.
inline virtual AccelerationVector < frames::earth::icrf > astrea::astro::Vehicle::get_inertial_acceleration (
const Date & date
) override const
Parameters:
dateThe date for which to get the acceleration.
Returns:
AccelerationVector<frames::earth::icrf>
Implements astrea::astro::FrameReference::get_inertial_acceleration
function get_inertial_position¶
Get the position of the frame in Earth-Centered Inertial coordinates.
inline virtual RadiusVector < frames::earth::icrf > astrea::astro::Vehicle::get_inertial_position (
const Date & date
) override const
Parameters:
dateThe date for which to get the position.
Returns:
RadiusVector<frames::earth::icrf>
Implements astrea::astro::FrameReference::get_inertial_position
function get_inertial_velocity¶
Get the velocity of the frame in Earth-Centered Inertial coordinates.
inline virtual VelocityVector < frames::earth::icrf > astrea::astro::Vehicle::get_inertial_velocity (
const Date & date
) override const
Parameters:
dateThe date for which to get the velocity.
Returns:
VelocityVector<frames::earth::icrf>
Implements astrea::astro::FrameReference::get_inertial_velocity
function get_lift_area¶
Get the lift area of the vehicle.
Returns:
SurfaceArea The lift area of the vehicle.
function get_mass¶
Gets the mass of the vehicle.
Returns:
Mass The mass of the vehicle.
function get_name¶
Gets the name of the vehicle.
Returns:
std::string The name of the vehicle.
Implements astrea::astro::FrameReference::get_name
function get_ptr [1/2]¶
Gets a pointer to the internal vehicle instance.
Returns:
const void* A pointer to the internal vehicle instance.
function get_ptr [2/2]¶
Gets a pointer to the internal vehicle instance.
Returns:
void* A pointer to the internal vehicle instance.
function get_ram_area¶
Get the ram area of the vehicle.
Returns:
SurfaceArea The ram area of the vehicle.
function get_solar_area¶
Get the solar area of the vehicle.
Returns:
SurfaceArea The solar area of the vehicle.
function operator=¶
Copy assignment operator for Vehicle .
Returns:
Vehicle& A reference to the current Vehicle instance.
function operator=¶
Move assignment operator for Vehicle .
Parameters:
otherThe Vehicle instance to move from.
Returns:
Vehicle& A reference to the current Vehicle instance.
function operator=¶
Generic assignment operator for Vehicle .
template<IsGenericallyConstructableVehicle T>
inline Vehicle & astrea::astro::Vehicle::operator= (
T && x
)
Template parameters:
TThe type of the user-defined vehicle.
Parameters:
xThe user-defined vehicle instance to assign to the Vehicle.
Returns:
Vehicle& A reference to the current Vehicle instance.
The documentation for this class was generated from the following file astrea/astro/astro/platforms/Vehicle.hpp