PHP FFI wrapper for the native JME stack

JPL Moshier Ephemeris PHP FFI

Direct PHP access to the JME native ephemeris library with strict engine selection, JPL kernel support, and generated reference coverage for the full exported API surface.

204 functions 462 constants PHP 8.3+

What this package gives you

  • Direct jme_* function access through PHP FFI.
  • Strict JPL fail-fast behavior instead of silent fallback.
  • Laravel provider, facade, and config support.
  • Generated native reference for the full exported surface.

Native-first API

Function names, status values, output arrays, and buffers stay aligned with the C library contract.

Multiple engine modes

Use JPL, Moshier, VSOP/ELP/Meeus, or automatic selection depending on runtime requirements.

Runtime portability

Install the PHP package once, then ship platform-specific runtime archives and optional JPL kernels.

Installation

Install the package, enable PHP FFI, and confirm your runtime can load the native library before wiring application code.

Audience: This page covers setup for package consumers. Runtime archives and optional JPL kernels are configured separately in the next section.
1

Install from Composer

composer require jayeshmepani/jpl-moshier-ephemeris-php
2

Know the runtime requirements

  • PHP ^8.3
  • PHP extension ext-ffi
  • JME runtime library for the current platform
  • CALCEPH runtime library when using the JPL kernel backend

Enable FFI

Add the following to your php.ini if FFI is not already enabled in your PHP runtime.

extension=ffi
ffi.enable=1

Platform-specific setup

Most PHP builds only need FFI enabled. If your distribution splits FFI into a separate package, install it first.

sudo apt install php8.3-ffi

# Or for PHP 8.4
sudo apt install php8.4-ffi

Verify installation

php -r "echo extension_loaded('ffi') ? 'FFI loaded' : 'FFI not loaded';"
php -r "echo ini_get('ffi.enable') ? 'FFI enabled' : 'FFI not enabled';"

Runtime Files

The wrapper package and the native runtime assets solve different problems. The package gives you the PHP layer; the runtime archive and optional kernels provide the native execution layer.

Two components matter: the shared library powers calculations, while JPL kernel files are only needed when you explicitly choose strict JPL mode.

Prebuilt runtime archives

Each release archive contains the JME shared library and the matching CALCEPH runtime for a single platform.

PlatformArchiveNative library
Linux x64jme-linux-x64.tar.gzlibjme.so
Linux ARM64jme-linux-arm64.tar.gzlibjme.so
macOS x64jme-macos-x64.tar.gzlibjme.dylib
macOS ARM64jme-macos-arm64.tar.gzlibjme.dylib
Windows x64jme-windows-x64.zipjme.dll

JPL kernels (optional)

Moshier and other analytical modes work without external kernel files. Download kernels only when you need strict JPL-backed calculations.

$jme = new JmeEph\FFI\JmeEphFFI();
$jme->jme_set_ephemeris_path(__DIR__ . '/ephe');

Quick Start

Use the wrapper directly when you want native JME calls with explicit buffer ownership and no extra abstraction on top.

<?php
use FFI;
use JmeEph\FFI\JmeEphFFI;

$jme = new JmeEphFFI();
$jd = $jme->jme_julian_day(2000, 1, 1, 12.0, JmeEphFFI::JME_CALENDAR_GREGORIAN);
$xx = $jme->getFFI()->new('double[6]');
$error = $jme->getFFI()->new('char[256]');

$result = $jme->jme_calc_ut($jd, JmeEphFFI::JME_BODY_SUN, JmeEphFFI::JME_CALC_TRUE_POSITION, $xx, $error);

if ($result === JmeEphFFI::JME_OK) {
    echo "Sun longitude: {$xx[0]}\n";
} else {
    echo 'JME error: ' . FFI::string($error) . "\n";
}

Engine Selection

Backend choice belongs to the native layer. The wrapper lets you set it explicitly so your application can choose strict JPL, analytical paths, or automatic selection.

Common engine modes

$jme->jme_set_astro_models('ENGINE=JPL', 0);
$jme->jme_set_astro_models('ENGINE=MOSHIER', 0);
$jme->jme_set_astro_models('ENGINE=VSOP_ELP_MEEUS', 0);
$jme->jme_set_astro_models('ENGINE=ANALYTICAL', 0);
$jme->jme_set_astro_models('ENGINE=AUTO', 0);

Selection guidance

  • JPL: requires readable kernel files and CALCEPH runtime support.
  • Moshier: no external kernel dependency, good default for analytical use.
  • VSOP_ELP_MEEUS / ANALYTICAL: alternate analytical stacks when strict JPL is not required.
  • AUTO: defer final selection to the native library.

Laravel Usage

The package ships with a service provider and facade so framework users can keep runtime configuration in Laravel config and environment files.

Laravel < 11

Add the provider and facade manually in config/app.php when package auto-discovery is not used.

'providers' => [
    JmeEph\Service\JmeEphServiceProvider::class,
],
'aliases' => [
    'JmeEph' => JmeEph\Service\JmeEphFacade::class,
],

Configuration

'library_path' => env('JME_LIBRARY_PATH'),
'engine' => env('JME_ENGINE', 'AUTO'),
'ephemeris_path' => env('JME_EPHEMERIS_PATH'),

Facade usage

$jd = JmeEph::jme_julian_day(
    2000,
    1,
    1,
    12.0,
    JmeEph::JME_CALENDAR_GREGORIAN
);

API Contract

Function surface

204 public jme_* functions

Constant surface

462 tracked JME_* constants
  • Primary function names use jme_*.
  • Primary constants use JME_*.
  • Native status values and error buffers are preserved.
  • Output arrays follow the native C layout.

204 Functions

Complete native function surface generated from the current JME headers.

Angles and Formatting

jme_centiseconds_to_lonlat_string

Normalizes, formats, or compares angular values.

char *jme_centiseconds_to_lonlat_string(int cs, char *buffer);
Parameters:
  • int cs - Input or output value as defined by the native signature.
  • char *buffer - Caller-provided character buffer or string storage.
Expected output:

Returns a string pointer managed by the native layer or the supplied buffer. buffer receives output data from the native call.

jme_decimal_hour

Provides the native decimal hour operation.

double jme_decimal_hour(int hour, int minute, double second);
Parameters:
  • int hour - Calendar or clock component.
  • int minute - Calendar or clock component.
  • double second - Calendar or clock component.
Expected output:

Returns a floating-point value in the native unit documented by the function name/signature.

jme_centiseconds_difference

Normalizes, formats, or compares angular values.

int jme_centiseconds_difference(int p1, int p2);
Parameters:
  • int p1 - Input or output value as defined by the native signature.
  • int p2 - Input or output value as defined by the native signature.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value.

jme_centiseconds_difference_signed

Normalizes, formats, or compares angular values.

int jme_centiseconds_difference_signed(int p1, int p2);
Parameters:
  • int p1 - Input or output value as defined by the native signature.
  • int p2 - Input or output value as defined by the native signature.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value.

jme_centiseconds_normalize

Normalizes, formats, or compares angular values.

int jme_centiseconds_normalize(int p);
Parameters:
  • int p - Input or output value as defined by the native signature.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value.

jme_centiseconds_round_second

Normalizes, formats, or compares angular values.

int jme_centiseconds_round_second(int x);
Parameters:
  • int x - Input or output value as defined by the native signature.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value.

jme_jd_difference_seconds

Normalizes, formats, or compares angular values.

double jme_jd_difference_seconds(double jd_end, double jd_start);
Parameters:
  • double jd_end - Input or output value as defined by the native signature.
  • double jd_start - Julian day in UT or local-time scale as named.
Expected output:

Returns a floating-point value in the native unit documented by the function name/signature.

Configuration and Utilities

jme_close

Provides the native close operation.

void jme_close(void);
Parameters:
  • No parameters.
Expected output:

No direct return value; effects are written to native state or output pointers.

jme_get_orbital_elements

Reads native library configuration, metadata, or derived values.

int jme_get_orbital_elements(double jd_et, int body, int flags, double *elem, char *error);
Parameters:
  • double jd_et - Julian day in ephemeris/dynamical time.
  • int body - Native body identifier such as a JME_BODY_* constant.
  • int flags - Bitmask or selector composed from documented JME_* flags.
  • double *elem - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. elem receives output data from the native call. error receives diagnostic text when available.

jme_set_astro_models

Sets native library configuration used by later calls.

void jme_set_astro_models(const char *models, int flags);
Parameters:
  • const char *models - Caller-provided character buffer or string storage.
  • int flags - Bitmask or selector composed from documented JME_* flags.
Expected output:

No direct return value; effects are written to native state or output pointers.

jme_get_astro_models

Reads native library configuration, metadata, or derived values.

int jme_get_astro_models(char *models, int flags);
Parameters:
  • char *models - Caller-provided character buffer or string storage.
  • int flags - Bitmask or selector composed from documented JME_* flags.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. models receives output data from the native call.

jme_set_lapse_rate

Sets native library configuration used by later calls.

void jme_set_lapse_rate(double lapse_rate);
Parameters:
  • double lapse_rate - Atmospheric/refraction input.
Expected output:

No direct return value; effects are written to native state or output pointers.

jme_set_interpolate_nut

Sets native library configuration used by later calls.

void jme_set_interpolate_nut(int on);
Parameters:
  • int on - Boolean-style integer switch.
Expected output:

No direct return value; effects are written to native state or output pointers.

jme_get_tid_acc

Reads native library configuration, metadata, or derived values.

double jme_get_tid_acc(void);
Parameters:
  • No parameters.
Expected output:

Returns a floating-point value in the native unit documented by the function name/signature.

jme_set_tid_acc

Sets native library configuration used by later calls.

void jme_set_tid_acc(double t_acc);
Parameters:
  • double t_acc - Input or output value as defined by the native signature.
Expected output:

No direct return value; effects are written to native state or output pointers.

jme_days_in_month

Provides the native days in month operation.

int jme_days_in_month(int year, int month, int calendar);
Parameters:
  • int year - Calendar or clock component.
  • int month - Calendar or clock component.
  • int calendar - Selector constant from the matching JME_* group.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value.

jme_refract

Provides the native refract operation.

double jme_refract(double altitude, double pressure, double temperature, int calc_flag);
Parameters:
  • double altitude - Geographic coordinate or observer value in the unit named by the parameter.
  • double pressure - Atmospheric/refraction input.
  • double temperature - Atmospheric/refraction input.
  • int calc_flag - Bitmask or selector composed from documented JME_* flags.
Expected output:

Returns a floating-point value in the native unit documented by the function name/signature.

jme_refract_extended

Provides the native refract extended operation.

double jme_refract_extended( double altitude, double geoalt, double pressure, double temperature, double lapse_rate, int calc_flag, double *out );
Parameters:
  • double altitude - Geographic coordinate or observer value in the unit named by the parameter.
  • double geoalt - Geographic coordinate or observer value in the unit named by the parameter.
  • double pressure - Atmospheric/refraction input.
  • double temperature - Atmospheric/refraction input.
  • double lapse_rate - Atmospheric/refraction input.
  • int calc_flag - Bitmask or selector composed from documented JME_* flags.
  • double *out - Caller-provided numeric input/output array; exact layout follows the native C contract.
Expected output:

Returns a floating-point value in the native unit documented by the function name/signature. out receives output data from the native call.

Coordinates and Vectors

jme_centiseconds_to_degree_string

Normalizes, formats, or compares angular values.

char *jme_centiseconds_to_degree_string(int cs, char *buffer);
Parameters:
  • int cs - Input or output value as defined by the native signature.
  • char *buffer - Caller-provided character buffer or string storage.
Expected output:

Returns a string pointer managed by the native layer or the supplied buffer. buffer receives output data from the native call.

jme_get_obliquity

Transforms coordinates, vectors, or frame/orientation data.

int jme_get_obliquity(double jd_et, int model, double *eps, char *error);
Parameters:
  • double jd_et - Julian day in ephemeris/dynamical time.
  • int model - Selector constant from the matching JME_* group.
  • double *eps - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. eps receives output data from the native call. error receives diagnostic text when available.

jme_get_frame_bias_matrix

Transforms coordinates, vectors, or frame/orientation data.

int jme_get_frame_bias_matrix(int model, double *m);
Parameters:
  • int model - Selector constant from the matching JME_* group.
  • double *m - Caller-provided numeric input/output array; exact layout follows the native C contract.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. m receives output data from the native call.

jme_get_nutation

Transforms coordinates, vectors, or frame/orientation data.

int jme_get_nutation(double jd_et, int model, double *dpsi, double *deps, char *error);
Parameters:
  • double jd_et - Julian day in ephemeris/dynamical time.
  • int model - Selector constant from the matching JME_* group.
  • double *dpsi - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • double *deps - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. dpsi receives output data from the native call. deps receives output data from the native call. error receives diagnostic text when available.

jme_get_precession_matrix

Transforms coordinates, vectors, or frame/orientation data.

int jme_get_precession_matrix(double jd_start, double jd_end, int model, double *m);
Parameters:
  • double jd_start - Julian day in UT or local-time scale as named.
  • double jd_end - Input or output value as defined by the native signature.
  • int model - Selector constant from the matching JME_* group.
  • double *m - Caller-provided numeric input/output array; exact layout follows the native C contract.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. m receives output data from the native call.

jme_get_nutation_matrix

Transforms coordinates, vectors, or frame/orientation data.

void jme_get_nutation_matrix(double dpsi_rad, double deps_rad, double eps_rad, double *m);
Parameters:
  • double dpsi_rad - Input or output value as defined by the native signature.
  • double deps_rad - Input or output value as defined by the native signature.
  • double eps_rad - Input or output value as defined by the native signature.
  • double *m - Caller-provided numeric input/output array; exact layout follows the native C contract.
Expected output:

No direct return value; effects are written to native state or output pointers. m receives output data from the native call.

jme_matrix_identity

Transforms coordinates, vectors, or frame/orientation data.

void jme_matrix_identity(double *m);
Parameters:
  • double *m - Caller-provided numeric input/output array; exact layout follows the native C contract.
Expected output:

No direct return value; effects are written to native state or output pointers. m receives output data from the native call.

jme_matrix_multiply

Transforms coordinates, vectors, or frame/orientation data.

void jme_matrix_multiply(const double *a, const double *b, double *out);
Parameters:
  • const double *a - Input or output value as defined by the native signature.
  • const double *b - Input or output value as defined by the native signature.
  • double *out - Caller-provided numeric input/output array; exact layout follows the native C contract.
Expected output:

No direct return value; effects are written to native state or output pointers. out receives output data from the native call.

jme_matrix_rotate_x

Transforms coordinates, vectors, or frame/orientation data.

void jme_matrix_rotate_x(double angle_rad, double *m);
Parameters:
  • double angle_rad - Input or output value as defined by the native signature.
  • double *m - Caller-provided numeric input/output array; exact layout follows the native C contract.
Expected output:

No direct return value; effects are written to native state or output pointers. m receives output data from the native call.

jme_matrix_rotate_y

Transforms coordinates, vectors, or frame/orientation data.

void jme_matrix_rotate_y(double angle_rad, double *m);
Parameters:
  • double angle_rad - Input or output value as defined by the native signature.
  • double *m - Caller-provided numeric input/output array; exact layout follows the native C contract.
Expected output:

No direct return value; effects are written to native state or output pointers. m receives output data from the native call.

jme_matrix_rotate_z

Transforms coordinates, vectors, or frame/orientation data.

void jme_matrix_rotate_z(double angle_rad, double *m);
Parameters:
  • double angle_rad - Input or output value as defined by the native signature.
  • double *m - Caller-provided numeric input/output array; exact layout follows the native C contract.
Expected output:

No direct return value; effects are written to native state or output pointers. m receives output data from the native call.

jme_degree_midpoint

Normalizes, formats, or compares angular values.

double jme_degree_midpoint(double x1, double x0);
Parameters:
  • double x1 - Input or output value as defined by the native signature.
  • double x0 - Input or output value as defined by the native signature.
Expected output:

Returns a floating-point value in the native unit documented by the function name/signature.

jme_degree_normalize

Normalizes, formats, or compares angular values.

double jme_degree_normalize(double x);
Parameters:
  • double x - Input or output value as defined by the native signature.
Expected output:

Returns a floating-point value in the native unit documented by the function name/signature.

jme_degrees_to_hours

Normalizes, formats, or compares angular values.

double jme_degrees_to_hours(double degrees);
Parameters:
  • double degrees - Input or output value as defined by the native signature.
Expected output:

Returns a floating-point value in the native unit documented by the function name/signature.

jme_degrees_to_radians

Normalizes, formats, or compares angular values.

double jme_degrees_to_radians(double degrees);
Parameters:
  • double degrees - Input or output value as defined by the native signature.
Expected output:

Returns a floating-point value in the native unit documented by the function name/signature.

jme_degrees_difference

Normalizes, formats, or compares angular values.

double jme_degrees_difference(double p1, double p2);
Parameters:
  • double p1 - Input or output value as defined by the native signature.
  • double p2 - Input or output value as defined by the native signature.
Expected output:

Returns a floating-point value in the native unit documented by the function name/signature.

jme_degrees_difference_signed

Normalizes, formats, or compares angular values.

double jme_degrees_difference_signed(double p1, double p2);
Parameters:
  • double p1 - Input or output value as defined by the native signature.
  • double p2 - Input or output value as defined by the native signature.
Expected output:

Returns a floating-point value in the native unit documented by the function name/signature.

jme_ecliptic_to_equatorial

Transforms coordinates, vectors, or frame/orientation data.

void jme_ecliptic_to_equatorial( double lon, double lat, double eps, double *ra, double *dec );
Parameters:
  • double lon - Geographic coordinate or observer value in the unit named by the parameter.
  • double lat - Geographic coordinate or observer value in the unit named by the parameter.
  • double eps - Input or output value as defined by the native signature.
  • double *ra - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • double *dec - Caller-provided numeric input/output array; exact layout follows the native C contract.
Expected output:

No direct return value; effects are written to native state or output pointers. ra receives output data from the native call. dec receives output data from the native call.

jme_equatorial_to_ecliptic

Transforms coordinates, vectors, or frame/orientation data.

void jme_equatorial_to_ecliptic( double ra, double dec, double eps, double *lon, double *lat );
Parameters:
  • double ra - Input or output value as defined by the native signature.
  • double dec - Input or output value as defined by the native signature.
  • double eps - Input or output value as defined by the native signature.
  • double *lon - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • double *lat - Caller-provided numeric input/output array; exact layout follows the native C contract.
Expected output:

No direct return value; effects are written to native state or output pointers. lon receives output data from the native call. lat receives output data from the native call.

jme_spherical_angular_separation

Transforms coordinates, vectors, or frame/orientation data.

double jme_spherical_angular_separation(double lon1, double lat1, double lon2, double lat2);
Parameters:
  • double lon1 - Input or output value as defined by the native signature.
  • double lat1 - Input or output value as defined by the native signature.
  • double lon2 - Input or output value as defined by the native signature.
  • double lat2 - Input or output value as defined by the native signature.
Expected output:

Returns a floating-point value in the native unit documented by the function name/signature.

jme_spherical_position_angle

Transforms coordinates, vectors, or frame/orientation data.

double jme_spherical_position_angle(double lon1, double lat1, double lon2, double lat2);
Parameters:
  • double lon1 - Input or output value as defined by the native signature.
  • double lat1 - Input or output value as defined by the native signature.
  • double lon2 - Input or output value as defined by the native signature.
  • double lat2 - Input or output value as defined by the native signature.
Expected output:

Returns a floating-point value in the native unit documented by the function name/signature.

jme_radian_midpoint

Normalizes, formats, or compares angular values.

double jme_radian_midpoint(double x1, double x0);
Parameters:
  • double x1 - Input or output value as defined by the native signature.
  • double x0 - Input or output value as defined by the native signature.
Expected output:

Returns a floating-point value in the native unit documented by the function name/signature.

jme_radian_normalize

Normalizes, formats, or compares angular values.

double jme_radian_normalize(double x);
Parameters:
  • double x - Input or output value as defined by the native signature.
Expected output:

Returns a floating-point value in the native unit documented by the function name/signature.

jme_radians_to_degrees

Normalizes, formats, or compares angular values.

double jme_radians_to_degrees(double radians);
Parameters:
  • double radians - Input or output value as defined by the native signature.
Expected output:

Returns a floating-point value in the native unit documented by the function name/signature.

jme_radians_difference_signed

Normalizes, formats, or compares angular values.

double jme_radians_difference_signed(double p1, double p2);
Parameters:
  • double p1 - Input or output value as defined by the native signature.
  • double p2 - Input or output value as defined by the native signature.
Expected output:

Returns a floating-point value in the native unit documented by the function name/signature.

jme_hours_normalize

Normalizes, formats, or compares angular values.

double jme_hours_normalize(double hours);
Parameters:
  • double hours - Input or output value as defined by the native signature.
Expected output:

Returns a floating-point value in the native unit documented by the function name/signature.

jme_hours_to_degrees

Normalizes, formats, or compares angular values.

double jme_hours_to_degrees(double hours);
Parameters:
  • double hours - Input or output value as defined by the native signature.
Expected output:

Returns a floating-point value in the native unit documented by the function name/signature.

jme_split_degree

Normalizes, formats, or compares angular values.

void jme_split_degree( double ddeg, int roundflag, int *ideg, int *imin, int *isec, double *dsecfr, int *isgn );
Parameters:
  • double ddeg - Input or output value as defined by the native signature.
  • int roundflag - Bitmask or selector composed from documented JME_* flags.
  • int *ideg - Input or output value as defined by the native signature.
  • int *imin - Input or output value as defined by the native signature.
  • int *isec - Input or output value as defined by the native signature.
  • double *dsecfr - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • int *isgn - Input or output value as defined by the native signature.
Expected output:

No direct return value; effects are written to native state or output pointers. ideg receives output data from the native call. imin receives output data from the native call. isec receives output data from the native call. dsecfr receives output data from the native call. isgn receives output data from the native call.

Eclipses and Occultations

jme_sol_eclipse_where

Computes solar or lunar eclipse circumstances, visibility, contacts, or search results.

int jme_sol_eclipse_where(double jd_ut, int flags, double *geopos, double *attr, char *error);
Parameters:
  • double jd_ut - Julian day in UT or local-time scale as named.
  • int flags - Bitmask or selector composed from documented JME_* flags.
  • double *geopos - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • double *attr - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. geopos receives output data from the native call. attr receives output data from the native call. error receives diagnostic text when available.

jme_sol_eclipse_how

Computes solar or lunar eclipse circumstances, visibility, contacts, or search results.

int jme_sol_eclipse_how(double jd_ut, int flags, double *geopos, double *attr, char *error);
Parameters:
  • double jd_ut - Julian day in UT or local-time scale as named.
  • int flags - Bitmask or selector composed from documented JME_* flags.
  • double *geopos - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • double *attr - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. geopos receives output data from the native call. attr receives output data from the native call. error receives diagnostic text when available.

jme_sol_eclipse_when_loc

Computes solar or lunar eclipse circumstances, visibility, contacts, or search results.

int jme_sol_eclipse_when_loc(double jd_start, int flags, double *geopos, double *tret, double *attr, int backward, char *error);
Parameters:
  • double jd_start - Julian day in UT or local-time scale as named.
  • int flags - Bitmask or selector composed from documented JME_* flags.
  • double *geopos - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • double *tret - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • double *attr - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • int backward - Boolean-style integer switch.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. geopos receives output data from the native call. tret receives output data from the native call. attr receives output data from the native call. error receives diagnostic text when available.

jme_sol_eclipse_when_glob

Computes solar or lunar eclipse circumstances, visibility, contacts, or search results.

int jme_sol_eclipse_when_glob(double jd_start, int flags, int epheflag, double *tret, int backward, char *error);
Parameters:
  • double jd_start - Julian day in UT or local-time scale as named.
  • int flags - Bitmask or selector composed from documented JME_* flags.
  • int epheflag - Bitmask or selector composed from documented JME_* flags.
  • double *tret - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • int backward - Boolean-style integer switch.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. tret receives output data from the native call. error receives diagnostic text when available.

jme_lun_eclipse_how

Computes solar or lunar eclipse circumstances, visibility, contacts, or search results.

int jme_lun_eclipse_how(double jd_ut, int flags, double *geopos, double *attr, char *error);
Parameters:
  • double jd_ut - Julian day in UT or local-time scale as named.
  • int flags - Bitmask or selector composed from documented JME_* flags.
  • double *geopos - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • double *attr - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. geopos receives output data from the native call. attr receives output data from the native call. error receives diagnostic text when available.

jme_lun_eclipse_when_loc

Computes solar or lunar eclipse circumstances, visibility, contacts, or search results.

int jme_lun_eclipse_when_loc(double jd_start, int flags, double *geopos, double *tret, double *attr, int backward, char *error);
Parameters:
  • double jd_start - Julian day in UT or local-time scale as named.
  • int flags - Bitmask or selector composed from documented JME_* flags.
  • double *geopos - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • double *tret - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • double *attr - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • int backward - Boolean-style integer switch.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. geopos receives output data from the native call. tret receives output data from the native call. attr receives output data from the native call. error receives diagnostic text when available.

jme_lun_eclipse_when

Computes solar or lunar eclipse circumstances, visibility, contacts, or search results.

int jme_lun_eclipse_when(double jd_start, int flags, int iflag, double *tret, int backward, char *error);
Parameters:
  • double jd_start - Julian day in UT or local-time scale as named.
  • int flags - Bitmask or selector composed from documented JME_* flags.
  • int iflag - Bitmask or selector composed from documented JME_* flags.
  • double *tret - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • int backward - Boolean-style integer switch.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. tret receives output data from the native call. error receives diagnostic text when available.

jme_lun_occult_where

Computes lunar occultation circumstances or searches for occultation events.

int jme_lun_occult_where(double jd_ut, int body, const char *starname, int flags, double *geopos, double *attr, char *error);
Parameters:
  • double jd_ut - Julian day in UT or local-time scale as named.
  • int body - Native body identifier such as a JME_BODY_* constant.
  • const char *starname - Null-terminated string input.
  • int flags - Bitmask or selector composed from documented JME_* flags.
  • double *geopos - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • double *attr - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. geopos receives output data from the native call. attr receives output data from the native call. error receives diagnostic text when available.

jme_lun_occult_when_loc

Computes lunar occultation circumstances or searches for occultation events.

int jme_lun_occult_when_loc(double jd_start, int body, const char *starname, int flags, double *geopos, double *tret, double *attr, int backward, char *error);
Parameters:
  • double jd_start - Julian day in UT or local-time scale as named.
  • int body - Native body identifier such as a JME_BODY_* constant.
  • const char *starname - Null-terminated string input.
  • int flags - Bitmask or selector composed from documented JME_* flags.
  • double *geopos - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • double *tret - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • double *attr - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • int backward - Boolean-style integer switch.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. geopos receives output data from the native call. tret receives output data from the native call. attr receives output data from the native call. error receives diagnostic text when available.

jme_lun_occult_when_glob

Computes lunar occultation circumstances or searches for occultation events.

int jme_lun_occult_when_glob(double jd_start, int body, const char *starname, int flags, int iflag, double *tret, int backward, char *error);
Parameters:
  • double jd_start - Julian day in UT or local-time scale as named.
  • int body - Native body identifier such as a JME_BODY_* constant.
  • const char *starname - Null-terminated string input.
  • int flags - Bitmask or selector composed from documented JME_* flags.
  • int iflag - Bitmask or selector composed from documented JME_* flags.
  • double *tret - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • int backward - Boolean-style integer switch.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. tret receives output data from the native call. error receives diagnostic text when available.

Fixed Stars and Metadata

jme_version

Returns metadata, names, or configured paths.

const char *jme_version(char *buffer, size_t buffer_size);
Parameters:
  • char *buffer - Caller-provided character buffer or string storage.
  • size_t buffer_size - Caller-provided character buffer or string storage.
Expected output:

Returns a string pointer managed by the native layer or the supplied buffer. buffer receives output data from the native call.

jme_ephemeris_path

Returns metadata, names, or configured paths.

const char *jme_ephemeris_path(void);
Parameters:
  • No parameters.
Expected output:

Returns a string pointer managed by the native layer or the supplied buffer.

jme_set_ephemeris_path

Sets native library configuration used by later calls.

void jme_set_ephemeris_path(const char *path);
Parameters:
  • const char *path - Null-terminated string input.
Expected output:

No direct return value; effects are written to native state or output pointers.

jme_fixstar

Computes fixed-star positions or magnitude metadata.

int jme_fixstar(const char *star, double jd_et, int flags, double *results, char *error);
Parameters:
  • const char *star - Null-terminated string input.
  • double jd_et - Julian day in ephemeris/dynamical time.
  • int flags - Bitmask or selector composed from documented JME_* flags.
  • double *results - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. results receives output data from the native call. error receives diagnostic text when available.

jme_fixstar_ut

Computes fixed-star positions or magnitude metadata.

int jme_fixstar_ut(const char *star, double jd_ut, int flags, double *results, char *error);
Parameters:
  • const char *star - Null-terminated string input.
  • double jd_ut - Julian day in UT or local-time scale as named.
  • int flags - Bitmask or selector composed from documented JME_* flags.
  • double *results - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. results receives output data from the native call. error receives diagnostic text when available.

jme_fixstar_mag

Computes fixed-star positions or magnitude metadata.

int jme_fixstar_mag(const char *star, double *mag, char *error);
Parameters:
  • const char *star - Null-terminated string input.
  • double *mag - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. mag receives output data from the native call. error receives diagnostic text when available.

jme_fixstar2

Computes fixed-star positions or magnitude metadata.

int jme_fixstar2(const char *star, double jd_et, int flags, double *results, char *error);
Parameters:
  • const char *star - Null-terminated string input.
  • double jd_et - Julian day in ephemeris/dynamical time.
  • int flags - Bitmask or selector composed from documented JME_* flags.
  • double *results - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. results receives output data from the native call. error receives diagnostic text when available.

jme_fixstar2_ut

Computes fixed-star positions or magnitude metadata.

int jme_fixstar2_ut(const char *star, double jd_ut, int flags, double *results, char *error);
Parameters:
  • const char *star - Null-terminated string input.
  • double jd_ut - Julian day in UT or local-time scale as named.
  • int flags - Bitmask or selector composed from documented JME_* flags.
  • double *results - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. results receives output data from the native call. error receives diagnostic text when available.

jme_fixstar2_mag

Computes fixed-star positions or magnitude metadata.

int jme_fixstar2_mag(const char *star, double *mag, char *error);
Parameters:
  • const char *star - Null-terminated string input.
  • double *mag - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. mag receives output data from the native call. error receives diagnostic text when available.

jme_library_path

Returns metadata, names, or configured paths.

const char *jme_library_path(void);
Parameters:
  • No parameters.
Expected output:

Returns a string pointer managed by the native layer or the supplied buffer.

General Utilities

jme_nod_aps

Provides the native nod aps operation.

int jme_nod_aps(double jd_et, int body, int flags, int method, double *tret, char *error);
Parameters:
  • double jd_et - Julian day in ephemeris/dynamical time.
  • int body - Native body identifier such as a JME_BODY_* constant.
  • int flags - Bitmask or selector composed from documented JME_* flags.
  • int method - Selector constant from the matching JME_* group.
  • double *tret - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. tret receives output data from the native call. error receives diagnostic text when available.

jme_nod_aps_ut

Provides the native nod aps ut operation.

int jme_nod_aps_ut(double jd_ut, int body, int flags, int method, double *tret, char *error);
Parameters:
  • double jd_ut - Julian day in UT or local-time scale as named.
  • int body - Native body identifier such as a JME_BODY_* constant.
  • int flags - Bitmask or selector composed from documented JME_* flags.
  • int method - Selector constant from the matching JME_* group.
  • double *tret - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. tret receives output data from the native call. error receives diagnostic text when available.

jme_orbit_max_min_true_distance

Provides the native orbit max min true distance operation.

int jme_orbit_max_min_true_distance(double jd_et, int body, int flags, double *tmax, double *tmin, double *dmax, double *dmin, char *error);
Parameters:
  • double jd_et - Julian day in ephemeris/dynamical time.
  • int body - Native body identifier such as a JME_BODY_* constant.
  • int flags - Bitmask or selector composed from documented JME_* flags.
  • double *tmax - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • double *tmin - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • double *dmax - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • double *dmin - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. tmax receives output data from the native call. tmin receives output data from the native call. dmax receives output data from the native call. dmin receives output data from the native call. error receives diagnostic text when available.

jme_double_to_long

Provides the native double to long operation.

int jme_double_to_long(double x);
Parameters:
  • double x - Input or output value as defined by the native signature.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value.

jme_jd_add_seconds

Provides the native jd add seconds operation.

double jme_jd_add_seconds(double jd, double seconds);
Parameters:
  • double jd - Input or output value as defined by the native signature.
  • double seconds - Input or output value as defined by the native signature.
Expected output:

Returns a floating-point value in the native unit documented by the function name/signature.

Houses and Topocentric Geometry

jme_set_topo

Sets native library configuration used by later calls.

void jme_set_topo(double lon, double lat, double altitude);
Parameters:
  • double lon - Geographic coordinate or observer value in the unit named by the parameter.
  • double lat - Geographic coordinate or observer value in the unit named by the parameter.
  • double altitude - Geographic coordinate or observer value in the unit named by the parameter.
Expected output:

No direct return value; effects are written to native state or output pointers.

jme_houses

Computes astrological house geometry or sector positions for an observer.

int jme_houses(double jd_ut, double geo_lat, double geo_lon, int house_system, double *cusps, double *ascmc);
Parameters:
  • double jd_ut - Julian day in UT or local-time scale as named.
  • double geo_lat - Geographic coordinate or observer value in the unit named by the parameter.
  • double geo_lon - Geographic coordinate or observer value in the unit named by the parameter.
  • int house_system - Selector constant from the matching JME_* group.
  • double *cusps - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • double *ascmc - Caller-provided numeric input/output array; exact layout follows the native C contract.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. cusps receives output data from the native call. ascmc receives output data from the native call.

jme_houses_ex

Computes astrological house geometry or sector positions for an observer.

int jme_houses_ex(double jd_ut, int flags, double geo_lat, double geo_lon, int house_system, double *cusps, double *ascmc);
Parameters:
  • double jd_ut - Julian day in UT or local-time scale as named.
  • int flags - Bitmask or selector composed from documented JME_* flags.
  • double geo_lat - Geographic coordinate or observer value in the unit named by the parameter.
  • double geo_lon - Geographic coordinate or observer value in the unit named by the parameter.
  • int house_system - Selector constant from the matching JME_* group.
  • double *cusps - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • double *ascmc - Caller-provided numeric input/output array; exact layout follows the native C contract.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. cusps receives output data from the native call. ascmc receives output data from the native call.

jme_houses_ex2

Computes astrological house geometry or sector positions for an observer.

int jme_houses_ex2(double jd_ut, int flags, double geo_lat, double geo_lon, int house_system, double *cusps, double *ascmc, double *cusps_speed, double *ascmc_speed);
Parameters:
  • double jd_ut - Julian day in UT or local-time scale as named.
  • int flags - Bitmask or selector composed from documented JME_* flags.
  • double geo_lat - Geographic coordinate or observer value in the unit named by the parameter.
  • double geo_lon - Geographic coordinate or observer value in the unit named by the parameter.
  • int house_system - Selector constant from the matching JME_* group.
  • double *cusps - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • double *ascmc - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • double *cusps_speed - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • double *ascmc_speed - Caller-provided numeric input/output array; exact layout follows the native C contract.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. cusps receives output data from the native call. ascmc receives output data from the native call. cusps_speed receives output data from the native call. ascmc_speed receives output data from the native call.

jme_houses_armc

Computes astrological house geometry or sector positions for an observer.

int jme_houses_armc(double armc, double geo_lat, double eps, int house_system, double *cusps, double *ascmc);
Parameters:
  • double armc - Input or output value as defined by the native signature.
  • double geo_lat - Geographic coordinate or observer value in the unit named by the parameter.
  • double eps - Input or output value as defined by the native signature.
  • int house_system - Selector constant from the matching JME_* group.
  • double *cusps - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • double *ascmc - Caller-provided numeric input/output array; exact layout follows the native C contract.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. cusps receives output data from the native call. ascmc receives output data from the native call.

jme_houses_armc_ex2

Computes astrological house geometry or sector positions for an observer.

int jme_houses_armc_ex2(double armc, double geo_lat, double eps, int house_system, double *cusps, double *ascmc, double *cusps_speed, double *ascmc_speed);
Parameters:
  • double armc - Input or output value as defined by the native signature.
  • double geo_lat - Geographic coordinate or observer value in the unit named by the parameter.
  • double eps - Input or output value as defined by the native signature.
  • int house_system - Selector constant from the matching JME_* group.
  • double *cusps - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • double *ascmc - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • double *cusps_speed - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • double *ascmc_speed - Caller-provided numeric input/output array; exact layout follows the native C contract.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. cusps receives output data from the native call. ascmc receives output data from the native call. cusps_speed receives output data from the native call. ascmc_speed receives output data from the native call.

jme_house_pos

Computes astrological house geometry or sector positions for an observer.

double jme_house_pos(double armc, double geo_lat, double eps, int house_system, double *xpin, char *error);
Parameters:
  • double armc - Input or output value as defined by the native signature.
  • double geo_lat - Geographic coordinate or observer value in the unit named by the parameter.
  • double eps - Input or output value as defined by the native signature.
  • int house_system - Selector constant from the matching JME_* group.
  • double *xpin - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns a floating-point value in the native unit documented by the function name/signature. xpin receives output data from the native call. error receives diagnostic text when available.

jme_gauquelin_sector

Computes astrological house geometry or sector positions for an observer.

int jme_gauquelin_sector(double jd_ut, int body, const char *starname, int flags, int imeth, double *geopos, double atpress, double attemp, double *dgsect, char *error);
Parameters:
  • double jd_ut - Julian day in UT or local-time scale as named.
  • int body - Native body identifier such as a JME_BODY_* constant.
  • const char *starname - Null-terminated string input.
  • int flags - Bitmask or selector composed from documented JME_* flags.
  • int imeth - Selector constant from the matching JME_* group.
  • double *geopos - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • double atpress - Atmospheric/refraction input.
  • double attemp - Atmospheric/refraction input.
  • double *dgsect - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. geopos receives output data from the native call. dgsect receives output data from the native call. error receives diagnostic text when available.

jme_get_topo_pos

Reads native library configuration, metadata, or derived values.

int jme_get_topo_pos(double jd_et, double *pos_au, char *error);
Parameters:
  • double jd_et - Julian day in ephemeris/dynamical time.
  • double *pos_au - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. pos_au receives output data from the native call. error receives diagnostic text when available.

jme_equatorial_to_horizontal

Transforms coordinates, vectors, or frame/orientation data.

void jme_equatorial_to_horizontal( double hour_angle, double dec, double geo_lat, double *azimuth, double *altitude );
Parameters:
  • double hour_angle - Input or output value as defined by the native signature.
  • double dec - Input or output value as defined by the native signature.
  • double geo_lat - Geographic coordinate or observer value in the unit named by the parameter.
  • double *azimuth - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • double *altitude - Caller-provided numeric input/output array; exact layout follows the native C contract.
Expected output:

No direct return value; effects are written to native state or output pointers. azimuth receives output data from the native call. altitude receives output data from the native call.

jme_horizontal_to_equatorial

Transforms coordinates, vectors, or frame/orientation data.

void jme_horizontal_to_equatorial( double azimuth, double altitude, double geo_lat, double *hour_angle, double *dec );
Parameters:
  • double azimuth - Input or output value as defined by the native signature.
  • double altitude - Geographic coordinate or observer value in the unit named by the parameter.
  • double geo_lat - Geographic coordinate or observer value in the unit named by the parameter.
  • double *hour_angle - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • double *dec - Caller-provided numeric input/output array; exact layout follows the native C contract.
Expected output:

No direct return value; effects are written to native state or output pointers. hour_angle receives output data from the native call. dec receives output data from the native call.

jme_house_system_name

Computes astrological house geometry or sector positions for an observer.

const char *jme_house_system_name(int house_system);
Parameters:
  • int house_system - Selector constant from the matching JME_* group.
Expected output:

Returns a string pointer managed by the native layer or the supplied buffer.

JPL and CALCEPH Kernels

jme_jpl_file

Works with JPL/CALCEPH kernels, metadata, state vectors, constants, or kernel lifecycle.

const char *jme_jpl_file(void);
Parameters:
  • No parameters.
Expected output:

Returns a string pointer managed by the native layer or the supplied buffer.

jme_set_jpl_file

Works with JPL/CALCEPH kernels, metadata, state vectors, constants, or kernel lifecycle.

void jme_set_jpl_file(const char *path);
Parameters:
  • const char *path - Null-terminated string input.
Expected output:

No direct return value; effects are written to native state or output pointers.

jme_jpl_body_state

Works with JPL/CALCEPH kernels, metadata, state vectors, constants, or kernel lifecycle.

int jme_jpl_body_state( double jd_time, int target_body, int center_body, int unit, double *state, char *error );
Parameters:
  • double jd_time - Input or output value as defined by the native signature.
  • int target_body - Input or output value as defined by the native signature.
  • int center_body - Input or output value as defined by the native signature.
  • int unit - Selector constant from the matching JME_* group.
  • double *state - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. state receives output data from the native call. error receives diagnostic text when available.

jme_jpl_body_state_split

Works with JPL/CALCEPH kernels, metadata, state vectors, constants, or kernel lifecycle.

int jme_jpl_body_state_split( double jd0, double time_offset, int target_body, int center_body, int unit, double *state, char *error );
Parameters:
  • double jd0 - Input or output value as defined by the native signature.
  • double time_offset - Input or output value as defined by the native signature.
  • int target_body - Input or output value as defined by the native signature.
  • int center_body - Input or output value as defined by the native signature.
  • int unit - Selector constant from the matching JME_* group.
  • double *state - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. state receives output data from the native call. error receives diagnostic text when available.

jme_jpl_ecliptic_state

Works with JPL/CALCEPH kernels, metadata, state vectors, constants, or kernel lifecycle.

int jme_jpl_ecliptic_state( double jd_time, int target_body, int center_body, int unit, double *state, char *error );
Parameters:
  • double jd_time - Input or output value as defined by the native signature.
  • int target_body - Input or output value as defined by the native signature.
  • int center_body - Input or output value as defined by the native signature.
  • int unit - Selector constant from the matching JME_* group.
  • double *state - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. state receives output data from the native call. error receives diagnostic text when available.

jme_jpl_body_state_naif

Works with JPL/CALCEPH kernels, metadata, state vectors, constants, or kernel lifecycle.

int jme_jpl_body_state_naif( double jd_time, int target_naif, int center_naif, int unit, double *state, char *error );
Parameters:
  • double jd_time - Input or output value as defined by the native signature.
  • int target_naif - Input or output value as defined by the native signature.
  • int center_naif - Input or output value as defined by the native signature.
  • int unit - Selector constant from the matching JME_* group.
  • double *state - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. state receives output data from the native call. error receives diagnostic text when available.

jme_jpl_body_state_split_naif

Works with JPL/CALCEPH kernels, metadata, state vectors, constants, or kernel lifecycle.

int jme_jpl_body_state_split_naif( double jd0, double time_offset, int target_naif, int center_naif, int unit, double *state, char *error );
Parameters:
  • double jd0 - Input or output value as defined by the native signature.
  • double time_offset - Input or output value as defined by the native signature.
  • int target_naif - Input or output value as defined by the native signature.
  • int center_naif - Input or output value as defined by the native signature.
  • int unit - Selector constant from the matching JME_* group.
  • double *state - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. state receives output data from the native call. error receives diagnostic text when available.

jme_jpl_body_state_native_naif

Works with JPL/CALCEPH kernels, metadata, state vectors, constants, or kernel lifecycle.

int jme_jpl_body_state_native_naif( double jd_time, int target_naif, int center_naif, double *state, char *error );
Parameters:
  • double jd_time - Input or output value as defined by the native signature.
  • int target_naif - Input or output value as defined by the native signature.
  • int center_naif - Input or output value as defined by the native signature.
  • double *state - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. state receives output data from the native call. error receives diagnostic text when available.

jme_jpl_body_state_native

Works with JPL/CALCEPH kernels, metadata, state vectors, constants, or kernel lifecycle.

int jme_jpl_body_state_native( double jd_time, int target_body, int center_body, double *state, char *error );
Parameters:
  • double jd_time - Input or output value as defined by the native signature.
  • int target_body - Input or output value as defined by the native signature.
  • int center_body - Input or output value as defined by the native signature.
  • double *state - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. state receives output data from the native call. error receives diagnostic text when available.

jme_jpl_body_state_native_split_naif

Works with JPL/CALCEPH kernels, metadata, state vectors, constants, or kernel lifecycle.

int jme_jpl_body_state_native_split_naif( double jd0, double time_offset, int target_naif, int center_naif, double *state, char *error );
Parameters:
  • double jd0 - Input or output value as defined by the native signature.
  • double time_offset - Input or output value as defined by the native signature.
  • int target_naif - Input or output value as defined by the native signature.
  • int center_naif - Input or output value as defined by the native signature.
  • double *state - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. state receives output data from the native call. error receives diagnostic text when available.

jme_jpl_body_state_native_split

Works with JPL/CALCEPH kernels, metadata, state vectors, constants, or kernel lifecycle.

int jme_jpl_body_state_native_split( double jd0, double time_offset, int target_body, int center_body, double *state, char *error );
Parameters:
  • double jd0 - Input or output value as defined by the native signature.
  • double time_offset - Input or output value as defined by the native signature.
  • int target_body - Input or output value as defined by the native signature.
  • int center_body - Input or output value as defined by the native signature.
  • double *state - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. state receives output data from the native call. error receives diagnostic text when available.

jme_jpl_body_state_order_naif

Works with JPL/CALCEPH kernels, metadata, state vectors, constants, or kernel lifecycle.

int jme_jpl_body_state_order_naif( double jd0, double time_offset, int target_naif, int center_naif, int unit, int order, double *state, char *error );
Parameters:
  • double jd0 - Input or output value as defined by the native signature.
  • double time_offset - Input or output value as defined by the native signature.
  • int target_naif - Input or output value as defined by the native signature.
  • int center_naif - Input or output value as defined by the native signature.
  • int unit - Selector constant from the matching JME_* group.
  • int order - Input or output value as defined by the native signature.
  • double *state - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. state receives output data from the native call. error receives diagnostic text when available.

jme_jpl_body_state_order

Works with JPL/CALCEPH kernels, metadata, state vectors, constants, or kernel lifecycle.

int jme_jpl_body_state_order( double jd0, double time_offset, int target_body, int center_body, int unit, int order, double *state, char *error );
Parameters:
  • double jd0 - Input or output value as defined by the native signature.
  • double time_offset - Input or output value as defined by the native signature.
  • int target_body - Input or output value as defined by the native signature.
  • int center_body - Input or output value as defined by the native signature.
  • int unit - Selector constant from the matching JME_* group.
  • int order - Input or output value as defined by the native signature.
  • double *state - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. state receives output data from the native call. error receives diagnostic text when available.

jme_jpl_body_state_utc_naif

Works with JPL/CALCEPH kernels, metadata, state vectors, constants, or kernel lifecycle.

int jme_jpl_body_state_utc_naif( int year, int month, int day, int hour, int minute, double second, int calendar, int target_naif, int center_naif, int unit, double *state, char *error );
Parameters:
  • int year - Calendar or clock component.
  • int month - Calendar or clock component.
  • int day - Calendar or clock component.
  • int hour - Calendar or clock component.
  • int minute - Calendar or clock component.
  • double second - Calendar or clock component.
  • int calendar - Selector constant from the matching JME_* group.
  • int target_naif - Input or output value as defined by the native signature.
  • int center_naif - Input or output value as defined by the native signature.
  • int unit - Selector constant from the matching JME_* group.
  • double *state - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. state receives output data from the native call. error receives diagnostic text when available.

jme_jpl_body_state_utc

Works with JPL/CALCEPH kernels, metadata, state vectors, constants, or kernel lifecycle.

int jme_jpl_body_state_utc( int year, int month, int day, int hour, int minute, double second, int calendar, int target_body, int center_body, int unit, double *state, char *error );
Parameters:
  • int year - Calendar or clock component.
  • int month - Calendar or clock component.
  • int day - Calendar or clock component.
  • int hour - Calendar or clock component.
  • int minute - Calendar or clock component.
  • double second - Calendar or clock component.
  • int calendar - Selector constant from the matching JME_* group.
  • int target_body - Input or output value as defined by the native signature.
  • int center_body - Input or output value as defined by the native signature.
  • int unit - Selector constant from the matching JME_* group.
  • double *state - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. state receives output data from the native call. error receives diagnostic text when available.

jme_jpl_ecliptic_state_naif

Works with JPL/CALCEPH kernels, metadata, state vectors, constants, or kernel lifecycle.

int jme_jpl_ecliptic_state_naif( double jd_time, int target_naif, int center_naif, int unit, double *state, char *error );
Parameters:
  • double jd_time - Input or output value as defined by the native signature.
  • int target_naif - Input or output value as defined by the native signature.
  • int center_naif - Input or output value as defined by the native signature.
  • int unit - Selector constant from the matching JME_* group.
  • double *state - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. state receives output data from the native call. error receives diagnostic text when available.

jme_jpl_ecliptic_state_split

Works with JPL/CALCEPH kernels, metadata, state vectors, constants, or kernel lifecycle.

int jme_jpl_ecliptic_state_split( double jd0, double time_offset, int target_body, int center_body, int unit, double *state, char *error );
Parameters:
  • double jd0 - Input or output value as defined by the native signature.
  • double time_offset - Input or output value as defined by the native signature.
  • int target_body - Input or output value as defined by the native signature.
  • int center_body - Input or output value as defined by the native signature.
  • int unit - Selector constant from the matching JME_* group.
  • double *state - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. state receives output data from the native call. error receives diagnostic text when available.

jme_jpl_ecliptic_state_split_naif

Works with JPL/CALCEPH kernels, metadata, state vectors, constants, or kernel lifecycle.

int jme_jpl_ecliptic_state_split_naif( double jd0, double time_offset, int target_naif, int center_naif, int unit, double *state, char *error );
Parameters:
  • double jd0 - Input or output value as defined by the native signature.
  • double time_offset - Input or output value as defined by the native signature.
  • int target_naif - Input or output value as defined by the native signature.
  • int center_naif - Input or output value as defined by the native signature.
  • int unit - Selector constant from the matching JME_* group.
  • double *state - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. state receives output data from the native call. error receives diagnostic text when available.

jme_jpl_ecliptic_state_utc_naif

Works with JPL/CALCEPH kernels, metadata, state vectors, constants, or kernel lifecycle.

int jme_jpl_ecliptic_state_utc_naif( int year, int month, int day, int hour, int minute, double second, int calendar, int target_naif, int center_naif, int unit, double *state, char *error );
Parameters:
  • int year - Calendar or clock component.
  • int month - Calendar or clock component.
  • int day - Calendar or clock component.
  • int hour - Calendar or clock component.
  • int minute - Calendar or clock component.
  • double second - Calendar or clock component.
  • int calendar - Selector constant from the matching JME_* group.
  • int target_naif - Input or output value as defined by the native signature.
  • int center_naif - Input or output value as defined by the native signature.
  • int unit - Selector constant from the matching JME_* group.
  • double *state - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. state receives output data from the native call. error receives diagnostic text when available.

jme_jpl_ecliptic_state_utc

Works with JPL/CALCEPH kernels, metadata, state vectors, constants, or kernel lifecycle.

int jme_jpl_ecliptic_state_utc( int year, int month, int day, int hour, int minute, double second, int calendar, int target_body, int center_body, int unit, double *state, char *error );
Parameters:
  • int year - Calendar or clock component.
  • int month - Calendar or clock component.
  • int day - Calendar or clock component.
  • int hour - Calendar or clock component.
  • int minute - Calendar or clock component.
  • double second - Calendar or clock component.
  • int calendar - Selector constant from the matching JME_* group.
  • int target_body - Input or output value as defined by the native signature.
  • int center_body - Input or output value as defined by the native signature.
  • int unit - Selector constant from the matching JME_* group.
  • double *state - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. state receives output data from the native call. error receives diagnostic text when available.

jme_jpl_close

Works with JPL/CALCEPH kernels, metadata, state vectors, constants, or kernel lifecycle.

void jme_jpl_close(void);
Parameters:
  • No parameters.
Expected output:

No direct return value; effects are written to native state or output pointers.

jme_jpl_coverage

Works with JPL/CALCEPH kernels, metadata, state vectors, constants, or kernel lifecycle.

int jme_jpl_coverage(double *first_time, double *last_time, int *continuous, char *error);
Parameters:
  • double *first_time - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • double *last_time - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • int *continuous - Input or output value as defined by the native signature.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. first_time receives output data from the native call. last_time receives output data from the native call. continuous receives output data from the native call. error receives diagnostic text when available.

jme_jpl_constant

Works with JPL/CALCEPH kernels, metadata, state vectors, constants, or kernel lifecycle.

int jme_jpl_constant(const char *name, double *value, char *error);
Parameters:
  • const char *name - Caller-provided character buffer or string storage.
  • double *value - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. value receives output data from the native call. error receives diagnostic text when available.

jme_jpl_constant_count

Works with JPL/CALCEPH kernels, metadata, state vectors, constants, or kernel lifecycle.

int jme_jpl_constant_count(char *error);
Parameters:
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. error receives diagnostic text when available.

jme_jpl_constant_index

Works with JPL/CALCEPH kernels, metadata, state vectors, constants, or kernel lifecycle.

int jme_jpl_constant_index(int index, char *name, unsigned int name_size, double *value, char *error);
Parameters:
  • int index - Input or output value as defined by the native signature.
  • char *name - Caller-provided character buffer or string storage.
  • unsigned int name_size - Capacity of the related output buffer.
  • double *value - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. name receives output data from the native call. value receives output data from the native call. error receives diagnostic text when available.

jme_jpl_constant_vector

Works with JPL/CALCEPH kernels, metadata, state vectors, constants, or kernel lifecycle.

int jme_jpl_constant_vector(const char *name, double *values, int value_count, char *error);
Parameters:
  • const char *name - Caller-provided character buffer or string storage.
  • double *values - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • int value_count - Input or output value as defined by the native signature.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. values receives output data from the native call. error receives diagnostic text when available.

jme_jpl_constant_string

Works with JPL/CALCEPH kernels, metadata, state vectors, constants, or kernel lifecycle.

int jme_jpl_constant_string(const char *name, char *value, unsigned int value_size, char *error);
Parameters:
  • const char *name - Caller-provided character buffer or string storage.
  • char *value - Input or output value as defined by the native signature.
  • unsigned int value_size - Capacity of the related output buffer.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. value receives output data from the native call. error receives diagnostic text when available.

jme_jpl_constant_string_vector

Works with JPL/CALCEPH kernels, metadata, state vectors, constants, or kernel lifecycle.

int jme_jpl_constant_string_vector( const char *name, char *values, unsigned int single_value_size, int value_count, char *error );
Parameters:
  • const char *name - Caller-provided character buffer or string storage.
  • char *values - Input or output value as defined by the native signature.
  • unsigned int single_value_size - Capacity of the related output buffer.
  • int value_count - Input or output value as defined by the native signature.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. values receives output data from the native call. error receives diagnostic text when available.

jme_jpl_engine_version

Works with JPL/CALCEPH kernels, metadata, state vectors, constants, or kernel lifecycle.

const char *jme_jpl_engine_version(char *buffer, size_t buffer_size);
Parameters:
  • char *buffer - Caller-provided character buffer or string storage.
  • size_t buffer_size - Caller-provided character buffer or string storage.
Expected output:

Returns a string pointer managed by the native layer or the supplied buffer. buffer receives output data from the native call.

jme_jpl_file_version

Works with JPL/CALCEPH kernels, metadata, state vectors, constants, or kernel lifecycle.

int jme_jpl_file_version(char *buffer, unsigned int buffer_size, char *error);
Parameters:
  • char *buffer - Caller-provided character buffer or string storage.
  • unsigned int buffer_size - Caller-provided character buffer or string storage.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. buffer receives output data from the native call. error receives diagnostic text when available.

jme_jpl_current_file_data

Works with JPL/CALCEPH kernels, metadata, state vectors, constants, or kernel lifecycle.

int jme_jpl_current_file_data( char *path, unsigned int path_size, double *first_time, double *last_time, int *continuous, char *error );
Parameters:
  • char *path - Null-terminated string input.
  • unsigned int path_size - Capacity of the related output buffer.
  • double *first_time - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • double *last_time - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • int *continuous - Input or output value as defined by the native signature.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. path receives output data from the native call. first_time receives output data from the native call. last_time receives output data from the native call. continuous receives output data from the native call. error receives diagnostic text when available.

jme_jpl_is_available

Works with JPL/CALCEPH kernels, metadata, state vectors, constants, or kernel lifecycle.

int jme_jpl_is_available(void);
Parameters:
  • No parameters.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value.

jme_jpl_is_open

Works with JPL/CALCEPH kernels, metadata, state vectors, constants, or kernel lifecycle.

int jme_jpl_is_open(void);
Parameters:
  • No parameters.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value.

jme_jpl_open

Works with JPL/CALCEPH kernels, metadata, state vectors, constants, or kernel lifecycle.

int jme_jpl_open(const char *path, char *error);
Parameters:
  • const char *path - Null-terminated string input.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. error receives diagnostic text when available.

jme_jpl_open_array

Works with JPL/CALCEPH kernels, metadata, state vectors, constants, or kernel lifecycle.

int jme_jpl_open_array(int path_count, const char *const *paths, char *error);
Parameters:
  • int path_count - Input or output value as defined by the native signature.
  • const char *const *paths - Input or output value as defined by the native signature.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. error receives diagnostic text when available.

jme_jpl_prefetch

Works with JPL/CALCEPH kernels, metadata, state vectors, constants, or kernel lifecycle.

int jme_jpl_prefetch(char *error);
Parameters:
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. error receives diagnostic text when available.

jme_jpl_is_thread_safe

Works with JPL/CALCEPH kernels, metadata, state vectors, constants, or kernel lifecycle.

int jme_jpl_is_thread_safe(char *error);
Parameters:
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. error receives diagnostic text when available.

jme_jpl_id_by_name

Works with JPL/CALCEPH kernels, metadata, state vectors, constants, or kernel lifecycle.

int jme_jpl_id_by_name(const char *name, int *id, char *error);
Parameters:
  • const char *name - Caller-provided character buffer or string storage.
  • int *id - Input or output value as defined by the native signature.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. id receives output data from the native call. error receives diagnostic text when available.

jme_jpl_name_by_id

Works with JPL/CALCEPH kernels, metadata, state vectors, constants, or kernel lifecycle.

int jme_jpl_name_by_id(int id, char *name, unsigned int name_size, char *error);
Parameters:
  • int id - Input or output value as defined by the native signature.
  • char *name - Caller-provided character buffer or string storage.
  • unsigned int name_size - Capacity of the related output buffer.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. name receives output data from the native call. error receives diagnostic text when available.

jme_jpl_max_supported_order

Works with JPL/CALCEPH kernels, metadata, state vectors, constants, or kernel lifecycle.

int jme_jpl_max_supported_order(int segment_type);
Parameters:
  • int segment_type - Input or output value as defined by the native signature.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value.

jme_jpl_position_record_count

Works with JPL/CALCEPH kernels, metadata, state vectors, constants, or kernel lifecycle.

int jme_jpl_position_record_count(char *error);
Parameters:
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. error receives diagnostic text when available.

jme_jpl_position_record_index

Works with JPL/CALCEPH kernels, metadata, state vectors, constants, or kernel lifecycle.

int jme_jpl_position_record_index( int index, int *target, int *center, double *first_time, double *last_time, int *frame, int *segment_type, char *error );
Parameters:
  • int index - Input or output value as defined by the native signature.
  • int *target - Input or output value as defined by the native signature.
  • int *center - Native body identifier such as a JME_BODY_* constant.
  • double *first_time - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • double *last_time - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • int *frame - Input or output value as defined by the native signature.
  • int *segment_type - Input or output value as defined by the native signature.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. target receives output data from the native call. center receives output data from the native call. first_time receives output data from the native call. last_time receives output data from the native call. frame receives output data from the native call. segment_type receives output data from the native call. error receives diagnostic text when available.

jme_jpl_orientation_state_naif

Works with JPL/CALCEPH kernels, metadata, state vectors, constants, or kernel lifecycle.

int jme_jpl_orientation_state_naif( double jd_time, int target_naif, int unit, double *state, char *error );
Parameters:
  • double jd_time - Input or output value as defined by the native signature.
  • int target_naif - Input or output value as defined by the native signature.
  • int unit - Selector constant from the matching JME_* group.
  • double *state - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. state receives output data from the native call. error receives diagnostic text when available.

jme_jpl_orientation_state_split_naif

Works with JPL/CALCEPH kernels, metadata, state vectors, constants, or kernel lifecycle.

int jme_jpl_orientation_state_split_naif( double jd0, double time_offset, int target_naif, int unit, double *state, char *error );
Parameters:
  • double jd0 - Input or output value as defined by the native signature.
  • double time_offset - Input or output value as defined by the native signature.
  • int target_naif - Input or output value as defined by the native signature.
  • int unit - Selector constant from the matching JME_* group.
  • double *state - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. state receives output data from the native call. error receives diagnostic text when available.

jme_jpl_orientation_state_order_naif

Works with JPL/CALCEPH kernels, metadata, state vectors, constants, or kernel lifecycle.

int jme_jpl_orientation_state_order_naif( double jd0, double time_offset, int target_naif, int unit, int order, double *state, char *error );
Parameters:
  • double jd0 - Input or output value as defined by the native signature.
  • double time_offset - Input or output value as defined by the native signature.
  • int target_naif - Input or output value as defined by the native signature.
  • int unit - Selector constant from the matching JME_* group.
  • int order - Input or output value as defined by the native signature.
  • double *state - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. state receives output data from the native call. error receives diagnostic text when available.

jme_jpl_orientation_state_utc_naif

Works with JPL/CALCEPH kernels, metadata, state vectors, constants, or kernel lifecycle.

int jme_jpl_orientation_state_utc_naif( int year, int month, int day, int hour, int minute, double second, int calendar, int target_naif, int unit, double *state, char *error );
Parameters:
  • int year - Calendar or clock component.
  • int month - Calendar or clock component.
  • int day - Calendar or clock component.
  • int hour - Calendar or clock component.
  • int minute - Calendar or clock component.
  • double second - Calendar or clock component.
  • int calendar - Selector constant from the matching JME_* group.
  • int target_naif - Input or output value as defined by the native signature.
  • int unit - Selector constant from the matching JME_* group.
  • double *state - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. state receives output data from the native call. error receives diagnostic text when available.

jme_jpl_rotational_angular_momentum_state_naif

Works with JPL/CALCEPH kernels, metadata, state vectors, constants, or kernel lifecycle.

int jme_jpl_rotational_angular_momentum_state_naif( double jd_time, int target_naif, int unit, double *state, char *error );
Parameters:
  • double jd_time - Input or output value as defined by the native signature.
  • int target_naif - Input or output value as defined by the native signature.
  • int unit - Selector constant from the matching JME_* group.
  • double *state - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. state receives output data from the native call. error receives diagnostic text when available.

jme_jpl_rotational_angular_momentum_state_utc_naif

Works with JPL/CALCEPH kernels, metadata, state vectors, constants, or kernel lifecycle.

int jme_jpl_rotational_angular_momentum_state_utc_naif( int year, int month, int day, int hour, int minute, double second, int calendar, int target_naif, int unit, double *state, char *error );
Parameters:
  • int year - Calendar or clock component.
  • int month - Calendar or clock component.
  • int day - Calendar or clock component.
  • int hour - Calendar or clock component.
  • int minute - Calendar or clock component.
  • double second - Calendar or clock component.
  • int calendar - Selector constant from the matching JME_* group.
  • int target_naif - Input or output value as defined by the native signature.
  • int unit - Selector constant from the matching JME_* group.
  • double *state - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. state receives output data from the native call. error receives diagnostic text when available.

jme_jpl_rotational_angular_momentum_state_split_naif

Works with JPL/CALCEPH kernels, metadata, state vectors, constants, or kernel lifecycle.

int jme_jpl_rotational_angular_momentum_state_split_naif( double jd0, double time_offset, int target_naif, int unit, double *state, char *error );
Parameters:
  • double jd0 - Input or output value as defined by the native signature.
  • double time_offset - Input or output value as defined by the native signature.
  • int target_naif - Input or output value as defined by the native signature.
  • int unit - Selector constant from the matching JME_* group.
  • double *state - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. state receives output data from the native call. error receives diagnostic text when available.

jme_jpl_rotational_angular_momentum_state_order_naif

Works with JPL/CALCEPH kernels, metadata, state vectors, constants, or kernel lifecycle.

int jme_jpl_rotational_angular_momentum_state_order_naif( double jd0, double time_offset, int target_naif, int unit, int order, double *state, char *error );
Parameters:
  • double jd0 - Input or output value as defined by the native signature.
  • double time_offset - Input or output value as defined by the native signature.
  • int target_naif - Input or output value as defined by the native signature.
  • int unit - Selector constant from the matching JME_* group.
  • int order - Input or output value as defined by the native signature.
  • double *state - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. state receives output data from the native call. error receives diagnostic text when available.

jme_jpl_orientation_record_count

Works with JPL/CALCEPH kernels, metadata, state vectors, constants, or kernel lifecycle.

int jme_jpl_orientation_record_count(char *error);
Parameters:
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. error receives diagnostic text when available.

jme_jpl_orientation_record_index

Works with JPL/CALCEPH kernels, metadata, state vectors, constants, or kernel lifecycle.

int jme_jpl_orientation_record_index( int index, int *target, double *first_time, double *last_time, int *frame, int *segment_type, char *error );
Parameters:
  • int index - Input or output value as defined by the native signature.
  • int *target - Input or output value as defined by the native signature.
  • double *first_time - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • double *last_time - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • int *frame - Input or output value as defined by the native signature.
  • int *segment_type - Input or output value as defined by the native signature.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. target receives output data from the native call. first_time receives output data from the native call. last_time receives output data from the native call. frame receives output data from the native call. segment_type receives output data from the native call. error receives diagnostic text when available.

jme_jpl_timescale

Works with JPL/CALCEPH kernels, metadata, state vectors, constants, or kernel lifecycle.

int jme_jpl_timescale(void);
Parameters:
  • No parameters.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value.

Main Body Calculations

jme_calc

Computes body positions through the selected native ephemeris engine.

int jme_calc(double jd_et, int body, int flags, double *results, char *error);
Parameters:
  • double jd_et - Julian day in ephemeris/dynamical time.
  • int body - Native body identifier such as a JME_BODY_* constant.
  • int flags - Bitmask or selector composed from documented JME_* flags.
  • double *results - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. results receives output data from the native call. error receives diagnostic text when available.

jme_calc_ut

Computes body positions through the selected native ephemeris engine.

int jme_calc_ut(double jd_ut, int body, int flags, double *results, char *error);
Parameters:
  • double jd_ut - Julian day in UT or local-time scale as named.
  • int body - Native body identifier such as a JME_BODY_* constant.
  • int flags - Bitmask or selector composed from documented JME_* flags.
  • double *results - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. results receives output data from the native call. error receives diagnostic text when available.

jme_calc_pctr

Computes body positions through the selected native ephemeris engine.

int jme_calc_pctr(double jd_et, int body, int center, int flags, double *results, char *error);
Parameters:
  • double jd_et - Julian day in ephemeris/dynamical time.
  • int body - Native body identifier such as a JME_BODY_* constant.
  • int center - Native body identifier such as a JME_BODY_* constant.
  • int flags - Bitmask or selector composed from documented JME_* flags.
  • double *results - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. results receives output data from the native call. error receives diagnostic text when available.

jme_pheno

Computes physical phenomena attributes for a solar-system body.

int jme_pheno(double jd_et, int body, int flags, double *attr, char *error);
Parameters:
  • double jd_et - Julian day in ephemeris/dynamical time.
  • int body - Native body identifier such as a JME_BODY_* constant.
  • int flags - Bitmask or selector composed from documented JME_* flags.
  • double *attr - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. attr receives output data from the native call. error receives diagnostic text when available.

jme_pheno_ut

Computes physical phenomena attributes for a solar-system body.

int jme_pheno_ut(double jd_ut, int body, int flags, double *attr, char *error);
Parameters:
  • double jd_ut - Julian day in UT or local-time scale as named.
  • int body - Native body identifier such as a JME_BODY_* constant.
  • int flags - Bitmask or selector composed from documented JME_* flags.
  • double *attr - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. attr receives output data from the native call. error receives diagnostic text when available.

jme_heliacal_pheno_ut

Computes physical phenomena attributes for a solar-system body.

int jme_heliacal_pheno_ut(double jd_ut, double *geopos, double *dat_hel, char *error);
Parameters:
  • double jd_ut - Julian day in UT or local-time scale as named.
  • double *geopos - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • double *dat_hel - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. geopos receives output data from the native call. dat_hel receives output data from the native call. error receives diagnostic text when available.

jme_matrix_transform_state

Transforms coordinates, vectors, or frame/orientation data.

void jme_matrix_transform_state(const double *m, const double *input, double *output);
Parameters:
  • const double *m - Input or output value as defined by the native signature.
  • const double *input - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • double *output - Caller-provided numeric input/output array; exact layout follows the native C contract.
Expected output:

No direct return value; effects are written to native state or output pointers. output receives output data from the native call.

jme_body_id_from_name

Returns metadata, names, or configured paths.

int jme_body_id_from_name(const char *name);
Parameters:
  • const char *name - Caller-provided character buffer or string storage.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value.

jme_body_name

Returns metadata, names, or configured paths.

const char *jme_body_name(int body);
Parameters:
  • int body - Native body identifier such as a JME_BODY_* constant.
Expected output:

Returns a string pointer managed by the native layer or the supplied buffer.

jme_copy_body_name

Returns metadata, names, or configured paths.

char *jme_copy_body_name(int body, char *buffer);
Parameters:
  • int body - Native body identifier such as a JME_BODY_* constant.
  • char *buffer - Caller-provided character buffer or string storage.
Expected output:

Returns a string pointer managed by the native layer or the supplied buffer. buffer receives output data from the native call.

jme_body_naif_id

Provides the native body naif id operation.

int jme_body_naif_id(int body);
Parameters:
  • int body - Native body identifier such as a JME_BODY_* constant.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value.

jme_ecliptic_to_equatorial_rectangular_state

Transforms coordinates, vectors, or frame/orientation data.

int jme_ecliptic_to_equatorial_rectangular_state( const double *ecliptic, double eps, double *equatorial );
Parameters:
  • const double *ecliptic - Input or output value as defined by the native signature.
  • double eps - Input or output value as defined by the native signature.
  • double *equatorial - Caller-provided numeric input/output array; exact layout follows the native C contract.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. equatorial receives output data from the native call.

jme_equatorial_to_ecliptic_rectangular_state

Transforms coordinates, vectors, or frame/orientation data.

int jme_equatorial_to_ecliptic_rectangular_state( const double *equatorial, double eps, double *ecliptic );
Parameters:
  • const double *equatorial - Input or output value as defined by the native signature.
  • double eps - Input or output value as defined by the native signature.
  • double *ecliptic - Caller-provided numeric input/output array; exact layout follows the native C contract.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. ecliptic receives output data from the native call.

jme_spherical_to_rectangular_state

Transforms coordinates, vectors, or frame/orientation data.

int jme_spherical_to_rectangular_state(const double *spherical, double *rectangular);
Parameters:
  • const double *spherical - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • double *rectangular - Caller-provided numeric input/output array; exact layout follows the native C contract.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. rectangular receives output data from the native call.

jme_rectangular_to_spherical_state

Transforms coordinates, vectors, or frame/orientation data.

int jme_rectangular_to_spherical_state(const double *rectangular, double *spherical);
Parameters:
  • const double *rectangular - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • double *spherical - Caller-provided numeric input/output array; exact layout follows the native C contract.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. spherical receives output data from the native call.

jme_state_distance

Provides the native state distance operation.

double jme_state_distance(const double *state);
Parameters:
  • const double *state - Caller-provided numeric input/output array; exact layout follows the native C contract.
Expected output:

Returns a floating-point value in the native unit documented by the function name/signature.

jme_state_convert_units

Provides the native state convert units operation.

int jme_state_convert_units(const double *input, int input_unit, int output_unit, double *output);
Parameters:
  • const double *input - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • int input_unit - Input or output value as defined by the native signature.
  • int output_unit - Input or output value as defined by the native signature.
  • double *output - Caller-provided numeric input/output array; exact layout follows the native C contract.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. output receives output data from the native call.

jme_state_light_time_days

Provides the native state light time days operation.

double jme_state_light_time_days(const double *state, int unit);
Parameters:
  • const double *state - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • int unit - Selector constant from the matching JME_* group.
Expected output:

Returns a floating-point value in the native unit documented by the function name/signature.

jme_state_position_velocity_dot

Provides the native state position velocity dot operation.

double jme_state_position_velocity_dot(const double *state);
Parameters:
  • const double *state - Caller-provided numeric input/output array; exact layout follows the native C contract.
Expected output:

Returns a floating-point value in the native unit documented by the function name/signature.

jme_state_speed

Provides the native state speed operation.

double jme_state_speed(const double *state);
Parameters:
  • const double *state - Caller-provided numeric input/output array; exact layout follows the native C contract.
Expected output:

Returns a floating-point value in the native unit documented by the function name/signature.

jme_state_add

Provides the native state add operation.

int jme_state_add(const double *left, const double *right, double *output);
Parameters:
  • const double *left - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • const double *right - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • double *output - Caller-provided numeric input/output array; exact layout follows the native C contract.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. output receives output data from the native call.

jme_state_scale

Provides the native state scale operation.

int jme_state_scale(const double *input, double factor, double *output);
Parameters:
  • const double *input - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • double factor - Input or output value as defined by the native signature.
  • double *output - Caller-provided numeric input/output array; exact layout follows the native C contract.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. output receives output data from the native call.

jme_state_subtract

Provides the native state subtract operation.

int jme_state_subtract(const double *left, const double *right, double *output);
Parameters:
  • const double *left - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • const double *right - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • double *output - Caller-provided numeric input/output array; exact layout follows the native C contract.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. output receives output data from the native call.

jme_vsop87_planet_state

Provides the native vsop87 planet state operation.

int jme_vsop87_planet_state(double jd_et, int body, double *results);
Parameters:
  • double jd_et - Julian day in ephemeris/dynamical time.
  • int body - Native body identifier such as a JME_BODY_* constant.
  • double *results - Caller-provided numeric input/output array; exact layout follows the native C contract.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. results receives output data from the native call.

jme_meeus_sun_state

Provides the native meeus sun state operation.

int jme_meeus_sun_state(double jd_et, double *results);
Parameters:
  • double jd_et - Julian day in ephemeris/dynamical time.
  • double *results - Caller-provided numeric input/output array; exact layout follows the native C contract.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. results receives output data from the native call.

jme_meeus_moon_state

Provides the native meeus moon state operation.

int jme_meeus_moon_state(double jd_et, double *results);
Parameters:
  • double jd_et - Julian day in ephemeris/dynamical time.
  • double *results - Caller-provided numeric input/output array; exact layout follows the native C contract.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. results receives output data from the native call.

jme_elp2000_moon_state

Provides the native elp2000 moon state operation.

int jme_elp2000_moon_state(double jd_et, double *results);
Parameters:
  • double jd_et - Julian day in ephemeris/dynamical time.
  • double *results - Caller-provided numeric input/output array; exact layout follows the native C contract.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. results receives output data from the native call.

jme_meeus_planet_state

Provides the native meeus planet state operation.

int jme_meeus_planet_state(double jd_et, int body, double *results);
Parameters:
  • double jd_et - Julian day in ephemeris/dynamical time.
  • int body - Native body identifier such as a JME_BODY_* constant.
  • double *results - Caller-provided numeric input/output array; exact layout follows the native C contract.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. results receives output data from the native call.

jme_moshier_planet_state

Provides the native moshier planet state operation.

int jme_moshier_planet_state(double jd_et, int body, double *results);
Parameters:
  • double jd_et - Julian day in ephemeris/dynamical time.
  • int body - Native body identifier such as a JME_BODY_* constant.
  • double *results - Caller-provided numeric input/output array; exact layout follows the native C contract.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. results receives output data from the native call.

Rise, Set, and Crossings

jme_rise_trans

Finds rise, set, transit, or longitude-crossing times.

int jme_rise_trans(double jd_ut, int body, const char *starname, int flags, int rsmi, double *geopos, double atpress, double attemp, double *tret, char *error);
Parameters:
  • double jd_ut - Julian day in UT or local-time scale as named.
  • int body - Native body identifier such as a JME_BODY_* constant.
  • const char *starname - Null-terminated string input.
  • int flags - Bitmask or selector composed from documented JME_* flags.
  • int rsmi - Bitmask or selector composed from documented JME_* flags.
  • double *geopos - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • double atpress - Atmospheric/refraction input.
  • double attemp - Atmospheric/refraction input.
  • double *tret - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. geopos receives output data from the native call. tret receives output data from the native call. error receives diagnostic text when available.

jme_rise_trans_true_hor

Finds rise, set, transit, or longitude-crossing times.

int jme_rise_trans_true_hor(double jd_ut, int body, const char *starname, int flags, int rsmi, double *geopos, double atpress, double attemp, double horhgt, double *tret, char *error);
Parameters:
  • double jd_ut - Julian day in UT or local-time scale as named.
  • int body - Native body identifier such as a JME_BODY_* constant.
  • const char *starname - Null-terminated string input.
  • int flags - Bitmask or selector composed from documented JME_* flags.
  • int rsmi - Bitmask or selector composed from documented JME_* flags.
  • double *geopos - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • double atpress - Atmospheric/refraction input.
  • double attemp - Atmospheric/refraction input.
  • double horhgt - Input or output value as defined by the native signature.
  • double *tret - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. geopos receives output data from the native call. tret receives output data from the native call. error receives diagnostic text when available.

jme_solcross

Finds rise, set, transit, or longitude-crossing times.

int jme_solcross(double x2cross, double jd_ut, int flags, double *tret, char *error);
Parameters:
  • double x2cross - Input or output value as defined by the native signature.
  • double jd_ut - Julian day in UT or local-time scale as named.
  • int flags - Bitmask or selector composed from documented JME_* flags.
  • double *tret - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. tret receives output data from the native call. error receives diagnostic text when available.

jme_solcross_ut

Finds rise, set, transit, or longitude-crossing times.

int jme_solcross_ut(double x2cross, double jd_ut, int flags, double *tret, char *error);
Parameters:
  • double x2cross - Input or output value as defined by the native signature.
  • double jd_ut - Julian day in UT or local-time scale as named.
  • int flags - Bitmask or selector composed from documented JME_* flags.
  • double *tret - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. tret receives output data from the native call. error receives diagnostic text when available.

jme_mooncross

Finds rise, set, transit, or longitude-crossing times.

int jme_mooncross(double x2cross, double jd_ut, int flags, double *tret, char *error);
Parameters:
  • double x2cross - Input or output value as defined by the native signature.
  • double jd_ut - Julian day in UT or local-time scale as named.
  • int flags - Bitmask or selector composed from documented JME_* flags.
  • double *tret - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. tret receives output data from the native call. error receives diagnostic text when available.

jme_mooncross_ut

Finds rise, set, transit, or longitude-crossing times.

int jme_mooncross_ut(double x2cross, double jd_ut, int flags, double *tret, char *error);
Parameters:
  • double x2cross - Input or output value as defined by the native signature.
  • double jd_ut - Julian day in UT or local-time scale as named.
  • int flags - Bitmask or selector composed from documented JME_* flags.
  • double *tret - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. tret receives output data from the native call. error receives diagnostic text when available.

jme_mooncross_node

Finds rise, set, transit, or longitude-crossing times.

int jme_mooncross_node(double jd_ut, int flags, double *tret, char *error);
Parameters:
  • double jd_ut - Julian day in UT or local-time scale as named.
  • int flags - Bitmask or selector composed from documented JME_* flags.
  • double *tret - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. tret receives output data from the native call. error receives diagnostic text when available.

jme_mooncross_node_ut

Finds rise, set, transit, or longitude-crossing times.

int jme_mooncross_node_ut(double jd_ut, int flags, double *tret, char *error);
Parameters:
  • double jd_ut - Julian day in UT or local-time scale as named.
  • int flags - Bitmask or selector composed from documented JME_* flags.
  • double *tret - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. tret receives output data from the native call. error receives diagnostic text when available.

jme_helio_cross

Finds rise, set, transit, or longitude-crossing times.

int jme_helio_cross(int body, double x2cross, double jd_ut, int flags, double *tret, char *error);
Parameters:
  • int body - Native body identifier such as a JME_BODY_* constant.
  • double x2cross - Input or output value as defined by the native signature.
  • double jd_ut - Julian day in UT or local-time scale as named.
  • int flags - Bitmask or selector composed from documented JME_* flags.
  • double *tret - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. tret receives output data from the native call. error receives diagnostic text when available.

jme_helio_cross_ut

Finds rise, set, transit, or longitude-crossing times.

int jme_helio_cross_ut(int body, double x2cross, double jd_ut, int flags, double *tret, char *error);
Parameters:
  • int body - Native body identifier such as a JME_BODY_* constant.
  • double x2cross - Input or output value as defined by the native signature.
  • double jd_ut - Julian day in UT or local-time scale as named.
  • int flags - Bitmask or selector composed from documented JME_* flags.
  • double *tret - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. tret receives output data from the native call. error receives diagnostic text when available.

jme_heliacal_ut

Provides the native heliacal ut operation.

int jme_heliacal_ut(double jd_ut, double *geopos, double *dat_hel, char *error);
Parameters:
  • double jd_ut - Julian day in UT or local-time scale as named.
  • double *geopos - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • double *dat_hel - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. geopos receives output data from the native call. dat_hel receives output data from the native call. error receives diagnostic text when available.

jme_vis_limit_mag

Provides the native vis limit mag operation.

int jme_vis_limit_mag(double jd_ut, double *geopos, double *dat_hel, char *error);
Parameters:
  • double jd_ut - Julian day in UT or local-time scale as named.
  • double *geopos - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • double *dat_hel - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. geopos receives output data from the native call. dat_hel receives output data from the native call. error receives diagnostic text when available.

jme_heliacal_angle

Provides the native heliacal angle operation.

double jme_heliacal_angle(double jd_ut, double *geopos, double *dat_hel, char *error);
Parameters:
  • double jd_ut - Julian day in UT or local-time scale as named.
  • double *geopos - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • double *dat_hel - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns a floating-point value in the native unit documented by the function name/signature. geopos receives output data from the native call. dat_hel receives output data from the native call. error receives diagnostic text when available.

jme_topo_arcus_visionis

Provides the native topo arcus visionis operation.

double jme_topo_arcus_visionis(double jd_ut, double *geopos, double *dat_hel, char *error);
Parameters:
  • double jd_ut - Julian day in UT or local-time scale as named.
  • double *geopos - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • double *dat_hel - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns a floating-point value in the native unit documented by the function name/signature. geopos receives output data from the native call. dat_hel receives output data from the native call. error receives diagnostic text when available.

Sidereal, Ayanamsa, and Time

jme_set_sidereal_mode

Handles sidereal mode selection or ayanamsa values.

void jme_set_sidereal_mode(int sidereal_mode, double t0, double ayan_t0);
Parameters:
  • int sidereal_mode - Selector constant from the matching JME_* group.
  • double t0 - Input or output value as defined by the native signature.
  • double ayan_t0 - Input or output value as defined by the native signature.
Expected output:

No direct return value; effects are written to native state or output pointers.

jme_get_sidereal_mode

Handles sidereal mode selection or ayanamsa values.

void jme_get_sidereal_mode(int *sidereal_mode, double *t0, double *ayan_t0);
Parameters:
  • int *sidereal_mode - Selector constant from the matching JME_* group.
  • double *t0 - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • double *ayan_t0 - Caller-provided numeric input/output array; exact layout follows the native C contract.
Expected output:

No direct return value; effects are written to native state or output pointers. sidereal_mode receives output data from the native call. t0 receives output data from the native call. ayan_t0 receives output data from the native call.

jme_set_delta_t_userdef

Sets native library configuration used by later calls.

void jme_set_delta_t_userdef(double dt);
Parameters:
  • double dt - Input or output value as defined by the native signature.
Expected output:

No direct return value; effects are written to native state or output pointers.

jme_get_ayanamsa_name

Handles sidereal mode selection or ayanamsa values.

const char *jme_get_ayanamsa_name(int model);
Parameters:
  • int model - Selector constant from the matching JME_* group.
Expected output:

Returns a string pointer managed by the native layer or the supplied buffer.

jme_lmt_to_lat

Provides the native lmt to lat operation.

int jme_lmt_to_lat(double jd_lmt, double geo_lon, double *jd_lat, char *error);
Parameters:
  • double jd_lmt - Julian day in UT or local-time scale as named.
  • double geo_lon - Geographic coordinate or observer value in the unit named by the parameter.
  • double *jd_lat - Julian day in UT or local-time scale as named.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. jd_lat receives output data from the native call. error receives diagnostic text when available.

jme_lat_to_lmt

Provides the native lat to lmt operation.

int jme_lat_to_lmt(double jd_lat, double geo_lon, double *jd_lmt, char *error);
Parameters:
  • double jd_lat - Julian day in UT or local-time scale as named.
  • double geo_lon - Geographic coordinate or observer value in the unit named by the parameter.
  • double *jd_lmt - Julian day in UT or local-time scale as named.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. jd_lmt receives output data from the native call. error receives diagnostic text when available.

jme_centiseconds_to_time_string

Normalizes, formats, or compares angular values.

char *jme_centiseconds_to_time_string(int cs, char *buffer);
Parameters:
  • int cs - Input or output value as defined by the native signature.
  • char *buffer - Caller-provided character buffer or string storage.
Expected output:

Returns a string pointer managed by the native layer or the supplied buffer. buffer receives output data from the native call.

jme_julian_day

Converts or validates calendar, UTC, and Julian-day values.

double jme_julian_day(int year, int month, int day, double hour, int calendar);
Parameters:
  • int year - Calendar or clock component.
  • int month - Calendar or clock component.
  • int day - Calendar or clock component.
  • double hour - Calendar or clock component.
  • int calendar - Selector constant from the matching JME_* group.
Expected output:

Returns a floating-point value in the native unit documented by the function name/signature.

jme_calendar_is_leap_year

Converts or validates calendar, UTC, and Julian-day values.

int jme_calendar_is_leap_year(int year, int calendar);
Parameters:
  • int year - Calendar or clock component.
  • int calendar - Selector constant from the matching JME_* group.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value.

jme_date_is_valid

Converts or validates calendar, UTC, and Julian-day values.

int jme_date_is_valid(int year, int month, int day, int calendar);
Parameters:
  • int year - Calendar or clock component.
  • int month - Calendar or clock component.
  • int day - Calendar or clock component.
  • int calendar - Selector constant from the matching JME_* group.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value.

jme_day_of_year

Provides the native day of year operation.

int jme_day_of_year(int year, int month, int day, int calendar);
Parameters:
  • int year - Calendar or clock component.
  • int month - Calendar or clock component.
  • int day - Calendar or clock component.
  • int calendar - Selector constant from the matching JME_* group.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value.

jme_day_of_week

Provides the native day of week operation.

int jme_day_of_week(double jd);
Parameters:
  • double jd - Input or output value as defined by the native signature.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value.

jme_reverse_julian_day

Converts or validates calendar, UTC, and Julian-day values.

void jme_reverse_julian_day( double jd, int calendar, int *year, int *month, int *day, double *hour );
Parameters:
  • double jd - Input or output value as defined by the native signature.
  • int calendar - Selector constant from the matching JME_* group.
  • int *year - Calendar or clock component.
  • int *month - Calendar or clock component.
  • int *day - Calendar or clock component.
  • double *hour - Caller-provided numeric input/output array; exact layout follows the native C contract.
Expected output:

No direct return value; effects are written to native state or output pointers. year receives output data from the native call. month receives output data from the native call. day receives output data from the native call. hour receives output data from the native call.

jme_delta_t

Provides the native delta t operation.

double jme_delta_t(double jd_ut);
Parameters:
  • double jd_ut - Julian day in UT or local-time scale as named.
Expected output:

Returns a floating-point value in the native unit documented by the function name/signature.

jme_delta_t_ex

Provides the native delta t ex operation.

double jme_delta_t_ex(double jd_ut, int model, char *error);
Parameters:
  • double jd_ut - Julian day in UT or local-time scale as named.
  • int model - Selector constant from the matching JME_* group.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns a floating-point value in the native unit documented by the function name/signature. error receives diagnostic text when available.

jme_get_ayanamsa

Handles sidereal mode selection or ayanamsa values.

double jme_get_ayanamsa(double jd_et);
Parameters:
  • double jd_et - Julian day in ephemeris/dynamical time.
Expected output:

Returns a floating-point value in the native unit documented by the function name/signature.

jme_get_ayanamsa_ut

Handles sidereal mode selection or ayanamsa values.

double jme_get_ayanamsa_ut(double jd_ut);
Parameters:
  • double jd_ut - Julian day in UT or local-time scale as named.
Expected output:

Returns a floating-point value in the native unit documented by the function name/signature.

jme_get_ayanamsa_ex

Handles sidereal mode selection or ayanamsa values.

int jme_get_ayanamsa_ex(double jd_et, int model, double *ayan, char *error);
Parameters:
  • double jd_et - Julian day in ephemeris/dynamical time.
  • int model - Selector constant from the matching JME_* group.
  • double *ayan - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. ayan receives output data from the native call. error receives diagnostic text when available.

jme_get_ayanamsa_ex_ut

Handles sidereal mode selection or ayanamsa values.

int jme_get_ayanamsa_ex_ut(double jd_ut, int model, double *ayan, char *error);
Parameters:
  • double jd_ut - Julian day in UT or local-time scale as named.
  • int model - Selector constant from the matching JME_* group.
  • double *ayan - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. ayan receives output data from the native call. error receives diagnostic text when available.

jme_time_equ

Provides the native time equ operation.

int jme_time_equ(double jd_ut, double *e, char *error);
Parameters:
  • double jd_ut - Julian day in UT or local-time scale as named.
  • double *e - Caller-provided numeric input/output array; exact layout follows the native C contract.
  • char *error - Caller-provided error buffer for diagnostic text on JME_ERR.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. e receives output data from the native call. error receives diagnostic text when available.

jme_jd_to_utc

Converts or validates calendar, UTC, and Julian-day values.

void jme_jd_to_utc( double jd, int calendar, int *year, int *month, int *day, int *hour, int *minute, double *second );
Parameters:
  • double jd - Input or output value as defined by the native signature.
  • int calendar - Selector constant from the matching JME_* group.
  • int *year - Calendar or clock component.
  • int *month - Calendar or clock component.
  • int *day - Calendar or clock component.
  • int *hour - Calendar or clock component.
  • int *minute - Calendar or clock component.
  • double *second - Caller-provided numeric input/output array; exact layout follows the native C contract.
Expected output:

No direct return value; effects are written to native state or output pointers. year receives output data from the native call. month receives output data from the native call. day receives output data from the native call. hour receives output data from the native call. minute receives output data from the native call. second receives output data from the native call.

jme_sidereal_time

Handles sidereal mode selection or ayanamsa values.

double jme_sidereal_time(double jd_ut);
Parameters:
  • double jd_ut - Julian day in UT or local-time scale as named.
Expected output:

Returns a floating-point value in the native unit documented by the function name/signature.

jme_sidereal_time0

Handles sidereal mode selection or ayanamsa values.

double jme_sidereal_time0(double jd_ut, double eps, double nut);
Parameters:
  • double jd_ut - Julian day in UT or local-time scale as named.
  • double eps - Input or output value as defined by the native signature.
  • double nut - Input or output value as defined by the native signature.
Expected output:

Returns a floating-point value in the native unit documented by the function name/signature.

jme_utc_time_zone

Converts or validates calendar, UTC, and Julian-day values.

void jme_utc_time_zone( int year, int month, int day, int hour, int minute, double second, double timezone, int *out_year, int *out_month, int *out_day, int *out_hour, int *out_minute, double *out_second );
Parameters:
  • int year - Calendar or clock component.
  • int month - Calendar or clock component.
  • int day - Calendar or clock component.
  • int hour - Calendar or clock component.
  • int minute - Calendar or clock component.
  • double second - Calendar or clock component.
  • double timezone - Calendar or clock component.
  • int *out_year - Calendar or clock component.
  • int *out_month - Calendar or clock component.
  • int *out_day - Calendar or clock component.
  • int *out_hour - Calendar or clock component.
  • int *out_minute - Calendar or clock component.
  • double *out_second - Caller-provided numeric input/output array; exact layout follows the native C contract.
Expected output:

No direct return value; effects are written to native state or output pointers. out_year receives output data from the native call. out_month receives output data from the native call. out_day receives output data from the native call. out_hour receives output data from the native call. out_minute receives output data from the native call. out_second receives output data from the native call.

jme_utc_to_jd

Converts or validates calendar, UTC, and Julian-day values.

int jme_utc_to_jd( int year, int month, int day, int hour, int minute, double second, int calendar, double *jd_utc );
Parameters:
  • int year - Calendar or clock component.
  • int month - Calendar or clock component.
  • int day - Calendar or clock component.
  • int hour - Calendar or clock component.
  • int minute - Calendar or clock component.
  • double second - Calendar or clock component.
  • int calendar - Selector constant from the matching JME_* group.
  • double *jd_utc - Caller-provided numeric input/output array; exact layout follows the native C contract.
Expected output:

Returns JME_OK/JME_ERR or another documented native status/flag value. jd_utc receives output data from the native call.

462 Constants

Complete PHP constant surface exposed by JmeEph\FFI\JmeEphFFI.

Additional Constants

ConstantValuePurpose
JME_COORD_APPARENT_TO_TRUE289Native constant exposed for direct FFI use.
JME_COORD_ECLIPTIC_TO_HORIZONTAL290Native constant exposed for direct FFI use.
JME_COORD_EQUATORIAL_TO_HORIZONTAL291Native constant exposed for direct FFI use.
JME_COORD_HORIZONTAL_TO_ECLIPTIC292Native constant exposed for direct FFI use.
JME_COORD_HORIZONTAL_TO_EQUATORIAL293Native constant exposed for direct FFI use.
JME_COORD_TRUE_TO_APPARENT294Native constant exposed for direct FFI use.

Angle and Formatting Constants

ConstantValuePurpose
JME_ANGLE_FORMAT_KEEP_DEG0Native constant exposed for direct FFI use.
JME_ANGLE_FORMAT_KEEP_SIGN1Native constant exposed for direct FFI use.
JME_ANGLE_FORMAT_NAKSHATRA2Native constant exposed for direct FFI use.
JME_ANGLE_FORMAT_ROUND_DEG3Native constant exposed for direct FFI use.
JME_ANGLE_FORMAT_ROUND_MIN4Native constant exposed for direct FFI use.
JME_ANGLE_FORMAT_ROUND_SEC5Native constant exposed for direct FFI use.
JME_ANGLE_FORMAT_ZODIACAL6Native constant exposed for direct FFI use.

Body Identifiers

ConstantValuePurpose
JME_BODY_SUN0Body identifier used by body-position, event, and metadata calls.
JME_BODY_MOON1Body identifier used by body-position, event, and metadata calls.
JME_BODY_MERCURY2Body identifier used by body-position, event, and metadata calls.
JME_BODY_VENUS3Body identifier used by body-position, event, and metadata calls.
JME_BODY_MARS4Body identifier used by body-position, event, and metadata calls.
JME_BODY_JUPITER5Body identifier used by body-position, event, and metadata calls.
JME_BODY_SATURN6Body identifier used by body-position, event, and metadata calls.
JME_BODY_URANUS7Body identifier used by body-position, event, and metadata calls.
JME_BODY_NEPTUNE8Body identifier used by body-position, event, and metadata calls.
JME_BODY_PLUTO9Body identifier used by body-position, event, and metadata calls.
JME_BODY_EARTH10Body identifier used by body-position, event, and metadata calls.
JME_BODY_SOLAR_SYSTEM_BARYCENTER11Body identifier used by body-position, event, and metadata calls.
JME_BODY_MERCURY_BARYCENTER12Body identifier used by body-position, event, and metadata calls.
JME_BODY_VENUS_BARYCENTER13Body identifier used by body-position, event, and metadata calls.
JME_BODY_EARTH_MOON_BARYCENTER14Body identifier used by body-position, event, and metadata calls.
JME_BODY_MARS_BARYCENTER15Body identifier used by body-position, event, and metadata calls.
JME_BODY_JUPITER_BARYCENTER16Body identifier used by body-position, event, and metadata calls.
JME_BODY_SATURN_BARYCENTER17Body identifier used by body-position, event, and metadata calls.
JME_BODY_URANUS_BARYCENTER18Body identifier used by body-position, event, and metadata calls.
JME_BODY_NEPTUNE_BARYCENTER19Body identifier used by body-position, event, and metadata calls.
JME_BODY_PLUTO_BARYCENTER20Body identifier used by body-position, event, and metadata calls.
JME_BODY_MEAN_NODE21Body identifier used by body-position, event, and metadata calls.
JME_BODY_TRUE_NODE22Body identifier used by body-position, event, and metadata calls.
JME_BODY_ALTJIRA7Body identifier used by body-position, event, and metadata calls.
JME_BODY_AMYCUS8Body identifier used by body-position, event, and metadata calls.
JME_BODY_ARROKOTH9Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASBOLUS10Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_00111Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_00212Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_00313Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_00414Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_00515Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_00616Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_00717Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_00818Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_00919Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_01020Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_01121Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_01222Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_01323Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_01424Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_01525Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_01626Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_01727Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_01828Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_01929Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_02030Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_02131Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_02232Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_02333Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_02434Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_02535Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_02636Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_02737Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_02838Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_02939Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_03040Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_03141Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_03242Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_03343Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_03444Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_03545Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_03646Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_03747Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_03848Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_03949Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_04050Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_04151Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_04252Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_04353Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_04454Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_04555Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_04656Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_04757Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_04858Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_04959Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_05060Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_05161Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_05262Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_05363Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_05464Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_05565Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_05666Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_05767Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_05868Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_05969Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_06070Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_06171Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_06272Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_06373Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_06474Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_06575Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_06676Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_06777Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_06878Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_06979Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_07080Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_07181Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_07282Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_07383Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_07484Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_07585Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_07686Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_07787Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_07888Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_07989Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_08090Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_08191Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_08292Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_08393Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_08494Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_08595Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_08696Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_08797Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_08898Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_08999Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_090100Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_091101Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_092102Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_093103Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_094104Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_095105Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_096106Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_097107Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_098108Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_099109Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_100110Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_101111Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_102112Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_103113Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_104114Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_105115Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_106116Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_107117Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_108118Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_109119Body identifier used by body-position, event, and metadata calls.
JME_BODY_ASTEROID_110120Body identifier used by body-position, event, and metadata calls.
JME_BODY_BIENOR121Body identifier used by body-position, event, and metadata calls.
JME_BODY_BORASISI122Body identifier used by body-position, event, and metadata calls.
JME_BODY_CERES123Body identifier used by body-position, event, and metadata calls.
JME_BODY_CHARIKLO124Body identifier used by body-position, event, and metadata calls.
JME_BODY_CHIRON125Body identifier used by body-position, event, and metadata calls.
JME_BODY_COMET_001126Body identifier used by body-position, event, and metadata calls.
JME_BODY_COMET_002127Body identifier used by body-position, event, and metadata calls.
JME_BODY_COMET_003128Body identifier used by body-position, event, and metadata calls.
JME_BODY_COMET_004129Body identifier used by body-position, event, and metadata calls.
JME_BODY_COMET_005130Body identifier used by body-position, event, and metadata calls.
JME_BODY_COMET_006131Body identifier used by body-position, event, and metadata calls.
JME_BODY_COMET_007132Body identifier used by body-position, event, and metadata calls.
JME_BODY_COMET_008133Body identifier used by body-position, event, and metadata calls.
JME_BODY_COMET_009134Body identifier used by body-position, event, and metadata calls.
JME_BODY_COMET_010135Body identifier used by body-position, event, and metadata calls.
JME_BODY_COMET_011136Body identifier used by body-position, event, and metadata calls.
JME_BODY_COMET_012137Body identifier used by body-position, event, and metadata calls.
JME_BODY_COMET_013138Body identifier used by body-position, event, and metadata calls.
JME_BODY_COMET_014139Body identifier used by body-position, event, and metadata calls.
JME_BODY_COMET_015140Body identifier used by body-position, event, and metadata calls.
JME_BODY_COMET_016141Body identifier used by body-position, event, and metadata calls.
JME_BODY_COMET_017142Body identifier used by body-position, event, and metadata calls.
JME_BODY_COMET_018143Body identifier used by body-position, event, and metadata calls.
JME_BODY_COMET_019144Body identifier used by body-position, event, and metadata calls.
JME_BODY_COMET_020145Body identifier used by body-position, event, and metadata calls.
JME_BODY_COMET_021146Body identifier used by body-position, event, and metadata calls.
JME_BODY_COMET_022147Body identifier used by body-position, event, and metadata calls.
JME_BODY_COMET_023148Body identifier used by body-position, event, and metadata calls.
JME_BODY_COMET_024149Body identifier used by body-position, event, and metadata calls.
JME_BODY_COMET_025150Body identifier used by body-position, event, and metadata calls.
JME_BODY_COMET_026151Body identifier used by body-position, event, and metadata calls.
JME_BODY_COMET_027152Body identifier used by body-position, event, and metadata calls.
JME_BODY_COMET_028153Body identifier used by body-position, event, and metadata calls.
JME_BODY_COMET_029154Body identifier used by body-position, event, and metadata calls.
JME_BODY_COMET_030155Body identifier used by body-position, event, and metadata calls.
JME_BODY_COMET_031156Body identifier used by body-position, event, and metadata calls.
JME_BODY_COMET_032157Body identifier used by body-position, event, and metadata calls.
JME_BODY_COMET_033158Body identifier used by body-position, event, and metadata calls.
JME_BODY_COMET_034159Body identifier used by body-position, event, and metadata calls.
JME_BODY_COMET_035160Body identifier used by body-position, event, and metadata calls.
JME_BODY_COMET_036161Body identifier used by body-position, event, and metadata calls.
JME_BODY_COMET_037162Body identifier used by body-position, event, and metadata calls.
JME_BODY_COMET_038163Body identifier used by body-position, event, and metadata calls.
JME_BODY_COMET_039164Body identifier used by body-position, event, and metadata calls.
JME_BODY_COMET_040165Body identifier used by body-position, event, and metadata calls.
JME_BODY_COMET_041166Body identifier used by body-position, event, and metadata calls.
JME_BODY_COMET_042167Body identifier used by body-position, event, and metadata calls.
JME_BODY_COMET_043168Body identifier used by body-position, event, and metadata calls.
JME_BODY_COMET_044169Body identifier used by body-position, event, and metadata calls.
JME_BODY_COMET_045170Body identifier used by body-position, event, and metadata calls.
JME_BODY_COMET_046171Body identifier used by body-position, event, and metadata calls.
JME_BODY_COMET_047172Body identifier used by body-position, event, and metadata calls.
JME_BODY_COMET_048173Body identifier used by body-position, event, and metadata calls.
JME_BODY_COMET_049174Body identifier used by body-position, event, and metadata calls.
JME_BODY_COMET_050175Body identifier used by body-position, event, and metadata calls.
JME_BODY_COMET_051176Body identifier used by body-position, event, and metadata calls.
JME_BODY_COMET_052177Body identifier used by body-position, event, and metadata calls.
JME_BODY_COMET_053178Body identifier used by body-position, event, and metadata calls.
JME_BODY_COMET_054179Body identifier used by body-position, event, and metadata calls.
JME_BODY_COMET_055180Body identifier used by body-position, event, and metadata calls.
JME_BODY_COMET_056181Body identifier used by body-position, event, and metadata calls.
JME_BODY_COMET_057182Body identifier used by body-position, event, and metadata calls.
JME_BODY_COMET_058183Body identifier used by body-position, event, and metadata calls.
JME_BODY_COMET_059184Body identifier used by body-position, event, and metadata calls.
JME_BODY_COMET_060185Body identifier used by body-position, event, and metadata calls.
JME_BODY_CRANTOR186Body identifier used by body-position, event, and metadata calls.
JME_BODY_CYLLARUS187Body identifier used by body-position, event, and metadata calls.
JME_BODY_DEUCALION188Body identifier used by body-position, event, and metadata calls.
JME_BODY_ECHECLUS189Body identifier used by body-position, event, and metadata calls.
JME_BODY_ELATUS190Body identifier used by body-position, event, and metadata calls.
JME_BODY_ERIS191Body identifier used by body-position, event, and metadata calls.
JME_BODY_GONGGONG192Body identifier used by body-position, event, and metadata calls.
JME_BODY_HAUMEA193Body identifier used by body-position, event, and metadata calls.
JME_BODY_HUYA194Body identifier used by body-position, event, and metadata calls.
JME_BODY_HYLONOME195Body identifier used by body-position, event, and metadata calls.
JME_BODY_IXION196Body identifier used by body-position, event, and metadata calls.
JME_BODY_JUNO197Body identifier used by body-position, event, and metadata calls.
JME_BODY_MAKEMAKE198Body identifier used by body-position, event, and metadata calls.
JME_BODY_MINOR_PLANET_001199Body identifier used by body-position, event, and metadata calls.
JME_BODY_MINOR_PLANET_002200Body identifier used by body-position, event, and metadata calls.
JME_BODY_MINOR_PLANET_003201Body identifier used by body-position, event, and metadata calls.
JME_BODY_MINOR_PLANET_004202Body identifier used by body-position, event, and metadata calls.
JME_BODY_MINOR_PLANET_005203Body identifier used by body-position, event, and metadata calls.
JME_BODY_MINOR_PLANET_006204Body identifier used by body-position, event, and metadata calls.
JME_BODY_MINOR_PLANET_007205Body identifier used by body-position, event, and metadata calls.
JME_BODY_MINOR_PLANET_008206Body identifier used by body-position, event, and metadata calls.
JME_BODY_MINOR_PLANET_009207Body identifier used by body-position, event, and metadata calls.
JME_BODY_MINOR_PLANET_010208Body identifier used by body-position, event, and metadata calls.
JME_BODY_MINOR_PLANET_011209Body identifier used by body-position, event, and metadata calls.
JME_BODY_MINOR_PLANET_012210Body identifier used by body-position, event, and metadata calls.
JME_BODY_MINOR_PLANET_013211Body identifier used by body-position, event, and metadata calls.
JME_BODY_MINOR_PLANET_014212Body identifier used by body-position, event, and metadata calls.
JME_BODY_MINOR_PLANET_015213Body identifier used by body-position, event, and metadata calls.
JME_BODY_MINOR_PLANET_016214Body identifier used by body-position, event, and metadata calls.
JME_BODY_MINOR_PLANET_017215Body identifier used by body-position, event, and metadata calls.
JME_BODY_MINOR_PLANET_018216Body identifier used by body-position, event, and metadata calls.
JME_BODY_MINOR_PLANET_019217Body identifier used by body-position, event, and metadata calls.
JME_BODY_MINOR_PLANET_020218Body identifier used by body-position, event, and metadata calls.
JME_BODY_MINOR_PLANET_021219Body identifier used by body-position, event, and metadata calls.
JME_BODY_MINOR_PLANET_022220Body identifier used by body-position, event, and metadata calls.
JME_BODY_MINOR_PLANET_023221Body identifier used by body-position, event, and metadata calls.
JME_BODY_MINOR_PLANET_024222Body identifier used by body-position, event, and metadata calls.
JME_BODY_MINOR_PLANET_025223Body identifier used by body-position, event, and metadata calls.
JME_BODY_MINOR_PLANET_026224Body identifier used by body-position, event, and metadata calls.
JME_BODY_MINOR_PLANET_027225Body identifier used by body-position, event, and metadata calls.
JME_BODY_MINOR_PLANET_028226Body identifier used by body-position, event, and metadata calls.
JME_BODY_MINOR_PLANET_029227Body identifier used by body-position, event, and metadata calls.
JME_BODY_MINOR_PLANET_030228Body identifier used by body-position, event, and metadata calls.
JME_BODY_MINOR_PLANET_031229Body identifier used by body-position, event, and metadata calls.
JME_BODY_MINOR_PLANET_032230Body identifier used by body-position, event, and metadata calls.
JME_BODY_MINOR_PLANET_033231Body identifier used by body-position, event, and metadata calls.
JME_BODY_MINOR_PLANET_034232Body identifier used by body-position, event, and metadata calls.
JME_BODY_MINOR_PLANET_035233Body identifier used by body-position, event, and metadata calls.
JME_BODY_MINOR_PLANET_036234Body identifier used by body-position, event, and metadata calls.
JME_BODY_MINOR_PLANET_037235Body identifier used by body-position, event, and metadata calls.
JME_BODY_MINOR_PLANET_038236Body identifier used by body-position, event, and metadata calls.
JME_BODY_MINOR_PLANET_039237Body identifier used by body-position, event, and metadata calls.
JME_BODY_MINOR_PLANET_040238Body identifier used by body-position, event, and metadata calls.
JME_BODY_MINOR_PLANET_041239Body identifier used by body-position, event, and metadata calls.
JME_BODY_MINOR_PLANET_042240Body identifier used by body-position, event, and metadata calls.
JME_BODY_MINOR_PLANET_043241Body identifier used by body-position, event, and metadata calls.
JME_BODY_MINOR_PLANET_044242Body identifier used by body-position, event, and metadata calls.
JME_BODY_MINOR_PLANET_045243Body identifier used by body-position, event, and metadata calls.
JME_BODY_MINOR_PLANET_046244Body identifier used by body-position, event, and metadata calls.
JME_BODY_MINOR_PLANET_047245Body identifier used by body-position, event, and metadata calls.
JME_BODY_MINOR_PLANET_048246Body identifier used by body-position, event, and metadata calls.
JME_BODY_MINOR_PLANET_049247Body identifier used by body-position, event, and metadata calls.
JME_BODY_MINOR_PLANET_050248Body identifier used by body-position, event, and metadata calls.
JME_BODY_MINOR_PLANET_051249Body identifier used by body-position, event, and metadata calls.
JME_BODY_MINOR_PLANET_052250Body identifier used by body-position, event, and metadata calls.
JME_BODY_MINOR_PLANET_053251Body identifier used by body-position, event, and metadata calls.
JME_BODY_MINOR_PLANET_054252Body identifier used by body-position, event, and metadata calls.
JME_BODY_MINOR_PLANET_055253Body identifier used by body-position, event, and metadata calls.
JME_BODY_MINOR_PLANET_056254Body identifier used by body-position, event, and metadata calls.
JME_BODY_MINOR_PLANET_057255Body identifier used by body-position, event, and metadata calls.
JME_BODY_MINOR_PLANET_058256Body identifier used by body-position, event, and metadata calls.
JME_BODY_MINOR_PLANET_059257Body identifier used by body-position, event, and metadata calls.
JME_BODY_MINOR_PLANET_060258Body identifier used by body-position, event, and metadata calls.
JME_BODY_NESSUS259Body identifier used by body-position, event, and metadata calls.
JME_BODY_OKYRHOE260Body identifier used by body-position, event, and metadata calls.
JME_BODY_ORCUS261Body identifier used by body-position, event, and metadata calls.
JME_BODY_PALLAS262Body identifier used by body-position, event, and metadata calls.
JME_BODY_PELOPS263Body identifier used by body-position, event, and metadata calls.
JME_BODY_PHOLUS264Body identifier used by body-position, event, and metadata calls.
JME_BODY_QUAOAR265Body identifier used by body-position, event, and metadata calls.
JME_BODY_RHADAMANTHUS266Body identifier used by body-position, event, and metadata calls.
JME_BODY_SALACIA267Body identifier used by body-position, event, and metadata calls.
JME_BODY_SEDNA268Body identifier used by body-position, event, and metadata calls.
JME_BODY_THEREUS269Body identifier used by body-position, event, and metadata calls.
JME_BODY_TYTHONUS270Body identifier used by body-position, event, and metadata calls.
JME_BODY_VARUNA271Body identifier used by body-position, event, and metadata calls.
JME_BODY_VESTA272Body identifier used by body-position, event, and metadata calls.

Calculation Flags

ConstantValuePurpose
JME_CALC_NONE0Calculation flag controlling coordinate frame, corrections, speed, or output style.
JME_CALC_SPEED1Calculation flag controlling coordinate frame, corrections, speed, or output style.
JME_CALC_EQUATORIAL2Calculation flag controlling coordinate frame, corrections, speed, or output style.
JME_CALC_XYZ4Calculation flag controlling coordinate frame, corrections, speed, or output style.
JME_CALC_RADIANS8Calculation flag controlling coordinate frame, corrections, speed, or output style.
JME_CALC_BARYCENTRIC16Calculation flag controlling coordinate frame, corrections, speed, or output style.
JME_CALC_HELIOCENTRIC32Calculation flag controlling coordinate frame, corrections, speed, or output style.
JME_CALC_TRUE_POSITION64Calculation flag controlling coordinate frame, corrections, speed, or output style.
JME_CALC_J2000128Calculation flag controlling coordinate frame, corrections, speed, or output style.
JME_CALC_NO_NUTATION256Calculation flag controlling coordinate frame, corrections, speed, or output style.
JME_CALC_SIDEREAL512Calculation flag controlling coordinate frame, corrections, speed, or output style.
JME_CALC_APPARENT_POSITION0Calculation flag controlling coordinate frame, corrections, speed, or output style.
JME_CALC_ASTROMETRIC3072Calculation flag controlling coordinate frame, corrections, speed, or output style.
JME_CALC_CENTER_BODY4096Calculation flag controlling coordinate frame, corrections, speed, or output style.
JME_CALC_DISTANCE_AU0Calculation flag controlling coordinate frame, corrections, speed, or output style.
JME_CALC_DISTANCE_KM8192Calculation flag controlling coordinate frame, corrections, speed, or output style.
JME_CALC_HIGH_PRECISION16384Calculation flag controlling coordinate frame, corrections, speed, or output style.
JME_CALC_ICRS32768Calculation flag controlling coordinate frame, corrections, speed, or output style.
JME_CALC_NO_ABERRATION1024Calculation flag controlling coordinate frame, corrections, speed, or output style.
JME_CALC_NO_LIGHT_DEFLECTION2048Calculation flag controlling coordinate frame, corrections, speed, or output style.
JME_CALC_RAW_VECTOR4Calculation flag controlling coordinate frame, corrections, speed, or output style.
JME_CALC_RECTANGULAR4Calculation flag controlling coordinate frame, corrections, speed, or output style.
JME_CALC_SPHERICAL0Calculation flag controlling coordinate frame, corrections, speed, or output style.
JME_CALC_STRICT65536Calculation flag controlling coordinate frame, corrections, speed, or output style.
JME_CALC_TOPOCENTRIC131072Calculation flag controlling coordinate frame, corrections, speed, or output style.
JME_CALC_VELOCITY_PER_DAY0Calculation flag controlling coordinate frame, corrections, speed, or output style.
JME_CALC_VELOCITY_PER_SECOND262144Calculation flag controlling coordinate frame, corrections, speed, or output style.

Calendar and Time Constants

ConstantValuePurpose
JME_SECONDS_PER_DAY86400.0Library metadata or physical constant.
JME_CALENDAR_JULIAN0Calendar-system selector.
JME_CALENDAR_GREGORIAN1Calendar-system selector.
JME_TIME_DELTAT_AUTOMATIC389Native constant exposed for direct FFI use.
JME_TIME_TIDAL_AUTOMATIC390Native constant exposed for direct FFI use.
JME_TIME_TIDAL_DE200391Native constant exposed for direct FFI use.
JME_TIME_TIDAL_DE403392Native constant exposed for direct FFI use.
JME_TIME_TIDAL_DE404393Native constant exposed for direct FFI use.
JME_TIME_TIDAL_DE405394Native constant exposed for direct FFI use.
JME_TIME_TIDAL_DE406395Native constant exposed for direct FFI use.
JME_TIME_TIDAL_DE421396Native constant exposed for direct FFI use.
JME_TIME_TIDAL_DE430397Native constant exposed for direct FFI use.
JME_TIME_TIDAL_DE431398Native constant exposed for direct FFI use.
JME_TIME_TIDAL_DE441399Native constant exposed for direct FFI use.

Eclipse and Event Flags

ConstantValuePurpose
JME_ECLIPSE_FIRST_CONTACT295Eclipse or occultation type/status flag.
JME_ECLIPSE_FOURTH_CONTACT296Eclipse or occultation type/status flag.
JME_ECLIPSE_LUNAR_PARTIAL297Eclipse or occultation type/status flag.
JME_ECLIPSE_LUNAR_PENUMBRAL298Eclipse or occultation type/status flag.
JME_ECLIPSE_LUNAR_TOTAL299Eclipse or occultation type/status flag.
JME_ECLIPSE_MAX_VISIBLE300Eclipse or occultation type/status flag.
JME_ECLIPSE_PENUMBRAL_BEGIN301Eclipse or occultation type/status flag.
JME_ECLIPSE_PENUMBRAL_END302Eclipse or occultation type/status flag.
JME_ECLIPSE_SECOND_CONTACT303Eclipse or occultation type/status flag.
JME_ECLIPSE_SOLAR_ANNULAR304Eclipse or occultation type/status flag.
JME_ECLIPSE_SOLAR_CENTRAL305Eclipse or occultation type/status flag.
JME_ECLIPSE_SOLAR_HYBRID306Eclipse or occultation type/status flag.
JME_ECLIPSE_SOLAR_NONCENTRAL307Eclipse or occultation type/status flag.
JME_ECLIPSE_SOLAR_PARTIAL308Eclipse or occultation type/status flag.
JME_ECLIPSE_SOLAR_TOTAL309Eclipse or occultation type/status flag.
JME_ECLIPSE_THIRD_CONTACT310Eclipse or occultation type/status flag.
JME_ECLIPSE_VISIBLE311Eclipse or occultation type/status flag.

House Systems

ConstantValuePurpose
JME_HOUSE_ALCABITIUS312House-system selector for house calculation calls.
JME_HOUSE_APC313House-system selector for house calculation calls.
JME_HOUSE_AZIMUTHAL314House-system selector for house calculation calls.
JME_HOUSE_CAMPANUS315House-system selector for house calculation calls.
JME_HOUSE_EQUAL316House-system selector for house calculation calls.
JME_HOUSE_GAUQUELIN317House-system selector for house calculation calls.
JME_HOUSE_HORIZONTAL318House-system selector for house calculation calls.
JME_HOUSE_KOCH319House-system selector for house calculation calls.
JME_HOUSE_KRUSINSKI320House-system selector for house calculation calls.
JME_HOUSE_MERIDIAN321House-system selector for house calculation calls.
JME_HOUSE_MORINUS322House-system selector for house calculation calls.
JME_HOUSE_PLACIDUS323House-system selector for house calculation calls.
JME_HOUSE_POLICH_PAGE324House-system selector for house calculation calls.
JME_HOUSE_PORPHYRIUS325House-system selector for house calculation calls.
JME_HOUSE_REGIOMONTANUS326House-system selector for house calculation calls.
JME_HOUSE_SUNSHINE327House-system selector for house calculation calls.
JME_HOUSE_VEHLOW_EQUAL328House-system selector for house calculation calls.
JME_HOUSE_WHOLE_SIGN329House-system selector for house calculation calls.

JPL and Kernel Constants

ConstantValuePurpose
JME_JPL_TIMESCALE_UNKNOWN0JPL/CALCEPH kernel, target, or metadata selector.
JME_JPL_TIMESCALE_TDB1JPL/CALCEPH kernel, target, or metadata selector.
JME_JPL_TIMESCALE_TCB2JPL/CALCEPH kernel, target, or metadata selector.

Models and Frames

ConstantValuePurpose
JME_VECTOR_AU_PER_DAY0Native constant exposed for direct FFI use.
JME_VECTOR_KM_PER_DAY1Native constant exposed for direct FFI use.
JME_VECTOR_AU_PER_SECOND2Native constant exposed for direct FFI use.
JME_VECTOR_KM_PER_SECOND3Native constant exposed for direct FFI use.
JME_ORIENTATION_RAD_PER_DAY0Native constant exposed for direct FFI use.
JME_ORIENTATION_RAD_PER_SECOND1Native constant exposed for direct FFI use.
JME_MODEL_BIAS_IAU2000330Astronomical model, frame, or correction selector.
JME_MODEL_BIAS_IAU2006331Astronomical model, frame, or correction selector.
JME_MODEL_BIAS_NONE332Astronomical model, frame, or correction selector.
JME_MODEL_NUT_IAU_1980333Astronomical model, frame, or correction selector.
JME_MODEL_NUT_IAU_2000A334Astronomical model, frame, or correction selector.
JME_MODEL_NUT_IAU_2000B335Astronomical model, frame, or correction selector.
JME_MODEL_OBL_IAU_1980336Astronomical model, frame, or correction selector.
JME_MODEL_OBL_IAU_2000337Astronomical model, frame, or correction selector.
JME_MODEL_OBL_IAU_2006338Astronomical model, frame, or correction selector.
JME_MODEL_PREC_IAU_1976339Astronomical model, frame, or correction selector.
JME_MODEL_PREC_IAU_2000340Astronomical model, frame, or correction selector.
JME_MODEL_PREC_IAU_2006341Astronomical model, frame, or correction selector.
JME_MODEL_PREC_LASKAR_1986342Astronomical model, frame, or correction selector.
JME_MODEL_PREC_VONDRAK_2011343Astronomical model, frame, or correction selector.
JME_MODEL_SIDT_IAU_1976344Astronomical model, frame, or correction selector.
JME_MODEL_SIDT_IAU_2006345Astronomical model, frame, or correction selector.
JME_MODEL_DELTAT_STEPHENSON_MORRISON_1984346Astronomical model, frame, or correction selector.
JME_MODEL_DELTAT_STEPHENSON_1997347Astronomical model, frame, or correction selector.
JME_MODEL_DELTAT_STEPHENSON_MORRISON_2004348Astronomical model, frame, or correction selector.
JME_MODEL_DELTAT_ESPENAK_MEEUS_2006349Astronomical model, frame, or correction selector.
JME_MODEL_DELTAT_STEPHENSON_ETC_2016350Astronomical model, frame, or correction selector.
JME_MODEL_REVISED_IAU_2000401Astronomical model, frame, or correction selector.
JME_MODEL_REVISED_IAU_2006402Astronomical model, frame, or correction selector.
JME_MODEL_REVISED_PREC_LASKAR403Astronomical model, frame, or correction selector.
JME_MODEL_REVISED_PREC_VONDRAK404Astronomical model, frame, or correction selector.
JME_MODEL_REVISED_PREC_LIESKE405Astronomical model, frame, or correction selector.

Rise and Transit Flags

ConstantValuePurpose
JME_RISE_ANTI_MERIDIAN_TRANSIT8Rise, set, transit, or twilight option flag.
JME_RISE_ASTRONOMICAL_TWILIGHT512Rise, set, transit, or twilight option flag.
JME_RISE_CIVIL_TWILIGHT128Rise, set, transit, or twilight option flag.
JME_RISE_DISC_BOTTOM2048Rise, set, transit, or twilight option flag.
JME_RISE_DISC_CENTER256Rise, set, transit, or twilight option flag.
JME_RISE_FIXED_DISC_SIZE1024Rise, set, transit, or twilight option flag.
JME_RISE_HINDU_RISING4096Rise, set, transit, or twilight option flag.
JME_RISE_MERIDIAN_TRANSIT4Rise, set, transit, or twilight option flag.
JME_RISE_NAUTICAL_TWILIGHT64Rise, set, transit, or twilight option flag.
JME_RISE_NO_REFRACTION8192Rise, set, transit, or twilight option flag.
JME_RISE_RISE1Rise, set, transit, or twilight option flag.
JME_RISE_SET2Rise, set, transit, or twilight option flag.

Sidereal Modes

ConstantValuePurpose
JME_SIDEREAL_FAGAN_BRADLEY0Sidereal mode selector for ayanamsa and sidereal calculations.
JME_SIDEREAL_LAHIRI1Sidereal mode selector for ayanamsa and sidereal calculations.
JME_SIDEREAL_USER255Sidereal mode selector for ayanamsa and sidereal calculations.
JME_SIDEREAL_ALDEBARAN_15TAU363Sidereal mode selector for ayanamsa and sidereal calculations.
JME_SIDEREAL_ARYABHATA364Sidereal mode selector for ayanamsa and sidereal calculations.
JME_SIDEREAL_B1950365Sidereal mode selector for ayanamsa and sidereal calculations.
JME_SIDEREAL_BABYL_ETPSC366Sidereal mode selector for ayanamsa and sidereal calculations.
JME_SIDEREAL_BABYL_HUBER367Sidereal mode selector for ayanamsa and sidereal calculations.
JME_SIDEREAL_BABYL_KUGLER1368Sidereal mode selector for ayanamsa and sidereal calculations.
JME_SIDEREAL_BABYL_KUGLER2369Sidereal mode selector for ayanamsa and sidereal calculations.
JME_SIDEREAL_BABYL_KUGLER3370Sidereal mode selector for ayanamsa and sidereal calculations.
JME_SIDEREAL_DELUCE371Sidereal mode selector for ayanamsa and sidereal calculations.
JME_SIDEREAL_GALCENT_0SAG372Sidereal mode selector for ayanamsa and sidereal calculations.
JME_SIDEREAL_HIPPARCHOS373Sidereal mode selector for ayanamsa and sidereal calculations.
JME_SIDEREAL_J1900374Sidereal mode selector for ayanamsa and sidereal calculations.
JME_SIDEREAL_J2000375Sidereal mode selector for ayanamsa and sidereal calculations.
JME_SIDEREAL_JN_BHASIN376Sidereal mode selector for ayanamsa and sidereal calculations.
JME_SIDEREAL_KRISHNAMURTI377Sidereal mode selector for ayanamsa and sidereal calculations.
JME_SIDEREAL_RAMAN378Sidereal mode selector for ayanamsa and sidereal calculations.
JME_SIDEREAL_SASSANIAN379Sidereal mode selector for ayanamsa and sidereal calculations.
JME_SIDEREAL_SS_CITRA380Sidereal mode selector for ayanamsa and sidereal calculations.
JME_SIDEREAL_SS_REVATI381Sidereal mode selector for ayanamsa and sidereal calculations.
JME_SIDEREAL_SURYASIDDHANTA382Sidereal mode selector for ayanamsa and sidereal calculations.
JME_SIDEREAL_TRUE_CITRA383Sidereal mode selector for ayanamsa and sidereal calculations.
JME_SIDEREAL_TRUE_MULA384Sidereal mode selector for ayanamsa and sidereal calculations.
JME_SIDEREAL_TRUE_PUSHYA385Sidereal mode selector for ayanamsa and sidereal calculations.
JME_SIDEREAL_TRUE_REVATI386Sidereal mode selector for ayanamsa and sidereal calculations.
JME_SIDEREAL_USHASHASHI387Sidereal mode selector for ayanamsa and sidereal calculations.
JME_SIDEREAL_YUKTESHWAR388Sidereal mode selector for ayanamsa and sidereal calculations.

Status and Metadata

ConstantValuePurpose
JME_JME_H1Native constant exposed for direct FFI use.
JME_VERSION0.1.0Library metadata or physical constant.
JME_AU_KM149597870.7Library metadata or physical constant.
JME_SPEED_OF_LIGHT_KM_PER_SEC299792.458Library metadata or physical constant.
JME_OK0Native success/error status code.
JME_ERR-1Native success/error status code.
JME_EXTENDED_H1Native constant exposed for direct FFI use.
JME_VERSION_ID400Native constant exposed for direct FFI use.

Quality

Run the generated wrapper surface audit and the normal PHP quality gate before release.

composer verify:surface
composer quality