base_class_module Module

A base class for defining other classes.


Used by

  • module~~base_class_module~~UsedByGraph module~base_class_module base_class_module module~celestial_body_module celestial_body_module module~celestial_body_module->module~base_class_module module~fortran_astrodynamics_toolkit fortran_astrodynamics_toolkit module~fortran_astrodynamics_toolkit->module~base_class_module module~fortran_astrodynamics_toolkit->module~celestial_body_module module~standish_module standish_module module~fortran_astrodynamics_toolkit->module~standish_module module~ephemeris_module ephemeris_module module~fortran_astrodynamics_toolkit->module~ephemeris_module module~transformation_module transformation_module module~fortran_astrodynamics_toolkit->module~transformation_module module~jpl_ephemeris_module jpl_ephemeris_module module~fortran_astrodynamics_toolkit->module~jpl_ephemeris_module module~standish_module->module~base_class_module module~standish_module->module~celestial_body_module module~standish_module->module~ephemeris_module module~ephemeris_module->module~celestial_body_module module~transformation_module->module~celestial_body_module module~transformation_module->module~ephemeris_module proc~crtbp_test crtbp_module::crtbp_test proc~crtbp_test->module~celestial_body_module proc~get_rv_from_jpl_ephemeris jpl_ephemeris_module::jpl_ephemeris%get_rv_from_jpl_ephemeris proc~get_rv_from_jpl_ephemeris->module~celestial_body_module proc~get_rv_from_spice_ephemeris spice_ephemeris_module::spice_ephemeris%get_rv_from_spice_ephemeris proc~get_rv_from_spice_ephemeris->module~celestial_body_module proc~halo_orbit_test halo_orbit_module::halo_orbit_test proc~halo_orbit_test->module~celestial_body_module module~jpl_ephemeris_module->module~ephemeris_module module~spice_ephemeris_module spice_ephemeris_module module~spice_ephemeris_module->module~ephemeris_module proc~transformation_module_test transformation_module::transformation_module_test proc~transformation_module_test->module~jpl_ephemeris_module

Variables

Type Visibility Attributes Name Initial
integer, public, parameter :: name_len = 100

length of name strings


Derived Types

type, public ::  base_class

A base class for defining other classes.

Components

Type Visibility Attributes Name Initial
integer, public :: id = 0

a unique ID code that distinguishes a variable from other variables of the same type.

character(len=name_len), public :: name = ''

the variable name

Type-Bound Procedures

generic, public :: operator(==) => base_class_equal
generic, public :: operator(/=) => base_class_not_equal
procedure, private :: base_class_equal
procedure, private :: base_class_not_equal

Functions

public pure elemental function base_class_equal(b1, b2) result(is_equal)

== operator for base_class variables. To be equal, they must be the same type and have the same ID.

Arguments

Type IntentOptional Attributes Name
class(base_class), intent(in) :: b1
class(base_class), intent(in) :: b2

Return Value logical

public pure elemental function base_class_not_equal(b1, b2) result(not_equal)

/= operator for base_class variables. To be equal, they must be the same type and have the same ID.

Arguments

Type IntentOptional Attributes Name
class(base_class), intent(in) :: b1
class(base_class), intent(in) :: b2

Return Value logical