Skip to content

Class astrea::astro::PayloadPlatform

template <class Payload_T>

ClassList > astrea > astro > PayloadPlatform

The PayloadPlatform class represents a platform that can have payloads attached to it. It provides methods to attach payloads and retrieve the list of attached payloads.

  • #include <PayloadPlatform.hpp>

Inherits the following classes: astrea::astro::FrameReference

Inherited by the following classes: astrea::astro::Spacecraft

Public Functions

Type Name
void attach_payload (const PayloadParameters_T & parameters)
Attaches a single payload to the platform.
void attach_payloads (const std::vector< PayloadParameters_T > & parameterPack)
Attaches multiple payloads to the platform.
virtual std::size_t get_id () const = 0
Get the ID of the payload.
virtual Mass get_mass () const
Get the mass of the platform.
std::vector< Payload_T > & get_payloads ()
Retrieves the list of payloads attached to the platform.
const std::vector< Payload_T > & get_payloads () const
Retrieves the list of payloads attached to the platform (const version).

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 .

Protected Attributes

Type Name
std::vector< Payload_T > _payloads

Protected Functions

Type Name
PayloadPlatform () = default
Default constructor for PayloadPlatform .
PayloadPlatform (const PayloadPlatform & other)
Copy constructor for PayloadPlatform .
PayloadPlatform (PayloadPlatform && other) noexcept
Move constructor for PayloadPlatform .
PayloadPlatform & operator= (const PayloadPlatform & other)
Copy assignment operator for PayloadPlatform .
PayloadPlatform & operator= (PayloadPlatform && other) noexcept
Move assignment operator for PayloadPlatform .
void reset_payload_parentage ()
Resets the parentage of all payloads attached to the platform to this.
virtual ~PayloadPlatform () = default
Default destructor for PayloadPlatform .

Public Functions Documentation

function attach_payload

Attaches a single payload to the platform.

inline void astrea::astro::PayloadPlatform::attach_payload (
    const PayloadParameters_T & parameters
) 

Parameters:

  • parameters The payload parameters to attach.

function attach_payloads

Attaches multiple payloads to the platform.

inline void astrea::astro::PayloadPlatform::attach_payloads (
    const std::vector< PayloadParameters_T > & parameterPack
) 

Parameters:

  • parameterPack Vector of payload parameters to attach.

function get_id

Get the ID of the payload.

virtual std::size_t astrea::astro::PayloadPlatform::get_id () const = 0

Returns:

std::size_t ID of the payload.


function get_mass

Get the mass of the platform.

inline virtual Mass astrea::astro::PayloadPlatform::get_mass () const

Returns:

Mass The mass of the platform.


function get_payloads [1/2]

Retrieves the list of payloads attached to the platform.

inline std::vector< Payload_T > & astrea::astro::PayloadPlatform::get_payloads () 

Returns:

A vector of payloads attached to the platform.


function get_payloads [2/2]

Retrieves the list of payloads attached to the platform (const version).

inline const std::vector< Payload_T > & astrea::astro::PayloadPlatform::get_payloads () const

Returns:

A const vector of payloads attached to the platform.


Protected Attributes Documentation

variable _payloads

std::vector<Payload_T> astrea::astro::PayloadPlatform< Payload_T >::_payloads;

Protected Functions Documentation

function PayloadPlatform [1/3]

Default constructor for PayloadPlatform .

astrea::astro::PayloadPlatform::PayloadPlatform () = default


function PayloadPlatform [2/3]

Copy constructor for PayloadPlatform .

inline astrea::astro::PayloadPlatform::PayloadPlatform (
    const PayloadPlatform & other
) 

Parameters:


function PayloadPlatform [3/3]

Move constructor for PayloadPlatform .

inline astrea::astro::PayloadPlatform::PayloadPlatform (
    PayloadPlatform && other
) noexcept

Parameters:


function operator=

Copy assignment operator for PayloadPlatform .

inline PayloadPlatform & astrea::astro::PayloadPlatform::operator= (
    const PayloadPlatform & other
) 

Parameters:

Returns:

PayloadPlatform& Reference to this PayloadPlatform.


function operator=

Move assignment operator for PayloadPlatform .

inline PayloadPlatform & astrea::astro::PayloadPlatform::operator= (
    PayloadPlatform && other
) noexcept

Parameters:

Returns:

PayloadPlatform& Reference to this PayloadPlatform.


function reset_payload_parentage

Resets the parentage of all payloads attached to the platform to this.

inline void astrea::astro::PayloadPlatform::reset_payload_parentage () 


function ~PayloadPlatform

Default destructor for PayloadPlatform .

virtual astrea::astro::PayloadPlatform::~PayloadPlatform () = default



The documentation for this class was generated from the following file astrea/astro/astro/platforms/PayloadPlatform.hpp