Skip to content

Struct astrea::astro::detail::EventInnerBase

ClassList > astrea > astro > detail > EventInnerBase

Pure virtual base class for Event inner implementations.

  • #include <Event.hpp>

Inherited by the following classes: astrea::astro::detail::EventInner

Public Functions

Type Name
virtual std::unique_ptr< EventInnerBase > clone () const = 0
Clones the Event inner implementation.
virtual std::string get_name () const = 0
Gets the name of the Event .
virtual const void * get_ptr () const = 0
Gets a pointer to the internal Event instance.
virtual void * get_ptr () = 0
Gets a pointer to the internal Event instance.
virtual bool is_terminal () const = 0
Checks if the Event is a terminalEvent .
virtual Unitless measure_event (const Time & time, const State & state, const Vehicle & vehicle) const = 0
Detects if the Event is triggered by aVehicle .
virtual void trigger_action (const Time & time, State & state, Vehicle & vehicle) const = 0
Triggers the Event for aVehicle .
virtual ~EventInnerBase ()
Destructor for EventInnerBase .

Public Functions Documentation

function clone

Clones the Event inner implementation.

virtual std::unique_ptr< EventInnerBase > astrea::astro::detail::EventInnerBase::clone () const = 0

Returns:

std::unique_ptr<EventInnerBase> A unique pointer to the cloned Event inner implementation.


function get_name

Gets the name of the Event .

virtual std::string astrea::astro::detail::EventInnerBase::get_name () const = 0

Returns:

std::string The name of the Event.


function get_ptr [1/2]

Gets a pointer to the internal Event instance.

virtual const void * astrea::astro::detail::EventInnerBase::get_ptr () const = 0

Returns:

const void* A pointer to the internal Event instance.


function get_ptr [2/2]

Gets a pointer to the internal Event instance.

virtual void * astrea::astro::detail::EventInnerBase::get_ptr () = 0

Returns:

void* A pointer to the internal Event instance.


function is_terminal

Checks if the Event is a terminalEvent .

virtual bool astrea::astro::detail::EventInnerBase::is_terminal () const = 0

Returns:

true If the Event is a terminal Event.

Returns:

false If the Event is not a terminal Event.


function measure_event

Detects if the Event is triggered by aVehicle .

virtual Unitless astrea::astro::detail::EventInnerBase::measure_event (
    const Time & time,
    const State & state,
    const Vehicle & vehicle
) const = 0

Parameters:

  • time The current time in the integration.
  • state The current state of the vehicle.
  • vehicle The Vehicle to check.

Returns:

true If the Event is triggered by the Vehicle.

Returns:

false If the Event is not triggered by the Vehicle.


function trigger_action

Triggers the Event for aVehicle .

virtual void astrea::astro::detail::EventInnerBase::trigger_action (
    const Time & time,
    State & state,
    Vehicle & vehicle
) const = 0

Parameters:

  • time The current time in the integration.
  • state The current state of the vehicle.
  • vehicle The Vehicle to trigger the Event for.

Returns:

Vehicle The Vehicle after the Event has been triggered.


function ~EventInnerBase

Destructor for EventInnerBase .

inline virtual astrea::astro::detail::EventInnerBase::~EventInnerBase () 



The documentation for this class was generated from the following file astrea/astro/astro/propagation/event_detection/Event.hpp