HOPS
HOPS class reference
Classes | Macros | Typedefs | Functions | Variables
htime.h File Reference
#include "hetetimecode.h"
#include <time.h>
#include <sys/time.h>
#include <math.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include "time_float_type.h"

Go to the source code of this file.

Classes

struct  sc_life
 

Macros

#define EPOCH_IBEX(N)   (0x30|(N))
 
#define HETE_PECULIAR   0
 
#define HOPS_ROOT_BREAK   1519659904
 
#define HOPS_ROOT_EPOCH   283996800
 
#define Ht_DATACALSC   "data/calibration/sc"
 
#define Ht_DS_ADAT   32 /* alternate date */
 
#define Ht_DS_DATE   2 /* DATE datestamp */
 
#define Ht_DS_FILE   22 /* for file names */
 
#define Ht_DS_FILH   25 /* alt file names */
 
#define Ht_DS_GRBS   7 /* GRB seconds UT */
 
#define Ht_DS_HOPS   26 /* HOPS rootcode */
 
#define Ht_DS_HT00   5 /* s/c clock no0x */
 
#define Ht_DS_HT03   8 /* s/c clock 3wds */
 
#define Ht_DS_ISOM   19 /* ISO time w/ ms */
 
#define Ht_DS_ISON   16 /* ISO time no us */
 
#define Ht_DS_ISOT   17 /* ISO time w/ us */
 
#define Ht_DS_JULD   9 /* the julian day */
 
#define Ht_DS_MAES   20 /* for ze MAESTRO */
 
#define Ht_DS_MJUL   10 /* mod julian day */
 
#define Ht_DS_MY4C   24 /* MAESTRO YYYY: */
 
#define Ht_DS_MY4D   23 /* MAESTRO YYYY. */
 
#define Ht_DS_NUMB   33 /* count of these */
 
#define Ht_DS_PASS   1 /* PASS datestamp */
 
#define Ht_DS_PGMI   18 /* pigmi format */
 
#define Ht_DS_PLAN   21 /* planning times */
 
#define Ht_DS_PLOG   31 /* Python logtime */
 
#define Ht_DS_RDBE   30 /* vlbi rdbe time */
 
#define Ht_DS_SECS   3 /* GPS time secs */
 
#define Ht_DS_UNIX   0 /* UNIX time secs */
 
#define Ht_DS_USVN   14 /* SVN datestamp */
 
#define Ht_DS_USVZ   15 /* SVN w/no usecs */
 
#define Ht_DS_UTRL   27 /* relative UTime */
 
#define Ht_DS_UWKS   13 /* GPS weeks/sow */
 
#define Ht_DS_VDIF   29 /* vlbi vdif time */
 
#define Ht_DS_VEXT   28 /* vlbi vex time */
 
#define Ht_DS_Y2DS   11 /* yy/doy/sec.ms */
 
#define Ht_DS_Y2KP   4 /* PASS w/century */
 
#define Ht_DS_Y4DS   12 /*year/doy/sec.ms */
 
#define Ht_DS_YDOY   6 /* YEAR/DOY.f-day */
 
#define Ht_IBEX_TIME_HELP   "\n\ Parse-able IBEX time formats:\n\\n\ relative: +|- integer [us|ms|s|m|h|d|y]\n\ +|- float [us|ms|s|m|h|d|y]\n\ +|- integer [(s)i(dereal)|(sy)n(odic)] (lunar months)\n\\n\ UNIX clock: secs\n\ GPS seconds: secs.[usecs]\n\ GPS time: weeks#secs[.usecs]\n\ (# == any non-space)\n\ PASS time: [19]990613_054700[.000000]\n\ DATE string: [Thu] Jun 13 05:47:00[.000000] UTC 1996\n\ (GMT may replace UTC) or the variant\n\ [Thu] 13 Jun 1996 05:47:00 AM UTC\n\ GRB time: YYMMDD+SOD (UTC)\n\ YDS time: YYYY/DOY/SOD (UTC)\n\ YY/DOY/SOD (UTC)\n\ PLAN time: YYYY/DOY.HHMMSS\n\ FILE time: YYYY_DOY_HHMM\n\ or YYYY_DOY_HH_MM\n\ MAESTRO time: YYYY/MM:DD:HH:MM:SS\n\ or [[YY]YY:]DOY:HH:MM:SS\n\ or [[YY]YY.]DOY.HH.MM.SS\n\ SVN time: YYYY-MM-DD HH:MM:SS[.uuuuuu][Z]\n\ ISO time: YYYY-MM-DDTHH:MM:SS[.uuuuuu][Z]\n\ MPS time: YYYY-MM-DDTHH:MM:SS[.mmm][Z]\n\ PIGMI time: YYYYMMDDHHMMSSmmm\n\ VLBI vex: [YY]YYyDOYdHHhMMmSS.ffffs\n\ VLBI s/e: EE@ssssssss.ffff (EE<64)\n\\n\ time_code: (epoch time[2] time[1] time[0]:)\n\ 0x0030 [0xXXXX [0xXXXX [0xXXXX]]] (w/epoch)\n\ 0xXXXX [0xXXXX [0xXXXX]] (no epoch)\n\\n\ Julian day: days.[fday] (both of these are restricted to\n\ Modified JD: days.[fday] the epoch 50000 < MJD < 70000)\n\\n\ HOPS rootcode: unix clock base 26\n\\n\"
 
#define Ht_IBEXTIMES   "%s/%s/gps-sc%1x.dat"
 
#define Ht_JULIAN_EPOCH_IS_UTC   (-666)
 
#define Ht_LIFETIMES   "%s/%s/gps-dw%1x.dat"
 
#define Ht_STR_ADAT   0x10B /* Alt.DateFmt */
 
#define Ht_STR_FILE   0x171 /* yyyy_doy_hm */
 
#define Ht_STR_FILH   0x172 /* _doy_hh_mm */
 
#define Ht_STR_HOPS   0x109 /* UNIX baseX6 */
 
#define Ht_STR_HT00   0x208 /* without 0xX */
 
#define Ht_STR_HT03   0x210 /* 3wds no 0xX */
 
#define Ht_STR_HT0x   0x202 /* sc_clock 0x */
 
#define Ht_STR_HT0X   0x204 /* sc_clock 0X */
 
#define Ht_STR_HTYP   0x200 /* a HT string */
 
#define Ht_STR_ISOM   0x107 /* an ISO (ms) */
 
#define Ht_STR_ISON   0x106 /* an ISO (s) */
 
#define Ht_STR_ISOT   0x105 /* an ISO time */
 
#define Ht_STR_JDAY   0x160 /* Julian Date */
 
#define Ht_STR_MAES   0x139 /* YYYY/MM:DD: */
 
#define Ht_STR_MODJ   0x161 /* Mod JulianD */
 
#define Ht_STR_MY0C   0x13F /* Maestr. HH: */
 
#define Ht_STR_MY0D   0x13C /* Maestr. HH. */
 
#define Ht_STR_MY2C   0x13E /* Mae. YY:HH: */
 
#define Ht_STR_MY2D   0x13B /* Mae. YY.HH. */
 
#define Ht_STR_MY4C   0x13D /* M. YYYY:HH: */
 
#define Ht_STR_MY4D   0x13A /* M. YYYY.HH. */
 
#define Ht_STR_NTYP   0x000 /* unknown typ */
 
#define Ht_STR_NULL   0x300 /* null string */
 
#define Ht_STR_PGMI   0x190 /* pygmi time */
 
#define Ht_STR_PLAN   0x170 /* yyyydoy.hms */
 
#define Ht_STR_PLOG   0x10A /* Python Log */
 
#define Ht_STR_RDBE   0x1A2 /* vlbi (rdbe) */
 
#define Ht_STR_UGPS   0x110 /* GPS in secs */
 
#define Ht_STR_UGRB   0x140 /* GRB secs UT */
 
#define Ht_STR_USVN   0x103 /* a SVN date */
 
#define Ht_STR_UTDT   0x104 /* a DATE date */
 
#define Ht_STR_UTNX   0x101 /* a UNIX time */
 
#define Ht_STR_UTPS   0x102 /* a PASS date */
 
#define Ht_STR_UTRL   0x108 /* relative UT */
 
#define Ht_STR_UTYP   0x100 /* a UT string */
 
#define Ht_STR_UWKS   0x120 /* GPS wks+sec */
 
#define Ht_STR_VDIF   0x1A1 /* vlbi (vdif) */
 
#define Ht_STR_VEXT   0x1A0 /* vlbi (vex) */
 
#define Ht_STR_Y2DS   0x180 /* yy/doy/sod */
 
#define Ht_STR_Y4DS   0x181 /*yyyy/doy/sod */
 
#define Ht_STR_YDOY   0x182 /*yyyy/doy.frd */
 
#define J2000_EPOCH   630763200.000000
 
#define JD_GPS_EPOCH   (2444239.5 + 5.0)/*days*/
 
#define JD_UNIX_EPOCH   (2440587.5)/*days*/
 
#define MAX_WEEKS   8192
 
#define SPICE_ET_ORIGIN   630763148.816000
 
#define SPICE_ET_TYPE_GPS   0
 
#define SPICE_ET_TYPE_TAI   1
 
#define SPICE_ET_TYPE_TDB   3
 
#define SPICE_ET_TYPE_TDT   2
 
#define SPICE_ET_TYPE_UTC   4
 
#define TAI_GPS_DELTA   19/*seconds*/
 
#define TAI_UTC_DATA   "%s/%s/tai-utc.dat"
 
#define TDT_GPS_DELTA   51.184/*seconds*/
 
#define TDT_TAI_DELTA   32.184/*seconds*/
 
#define THIS_IS_IBEX   ((Ht_hete_epoch & 0x30) == 0x30)
 

Typedefs

typedef HTLdbl GTime
 
typedef struct sc_life HLife
 
typedef HTLdbl HtErr
 
typedef time_code HTime
 
typedef struct timeval UTime
 

Functions

char * Ht_convert_et_to_gps (char *arg, int eph_type)
 
int Ht_delta_setup (char *type, char *base)
 
HTLdbl Ht_delta_value (char *s, HTLdbl *pterror)
 
void Ht_dump_lives (char *file)
 
int Ht_ephem_type (char *)
 
void Ht_format_help (void)
 
HTime Ht_GPS_to_HTC (GTime gt, HtErr *err)
 
HTLdbl Ht_GPS_to_julian (GTime gps)
 
HTLdbl Ht_GPS_to_modjul (GTime gps)
 
char * Ht_GPS_to_string (GTime gt, int style)
 
HTLdbl Ht_GPS_to_TAI (HTLdbl gps)
 
HTLdbl Ht_GPS_to_TDT (HTLdbl gps)
 
UTime Ht_GPS_to_UTC (GTime gt, HtErr *err)
 
GTime Ht_HTC_to_GPS (HTime ht, HtErr *err)
 
HTLdbl Ht_HTC_to_secs (HTime ht)
 
char * Ht_HTC_to_string (HTime ht, int style)
 
UTime Ht_HTC_to_UTC (HTime ht, HtErr *err)
 
void Ht_initialize (void)
 
int Ht_julday (int mm, int id, int iyyy)
 
GTime Ht_julday_to_GPS (HTLdbl julian)
 
int Ht_julian_epoch (void)
 
GTime Ht_julian_to_GPS (HTLdbl julian)
 
HTLdbl Ht_leapsecs_from_year_start_to_gps (int year, GTime gps)
 
GTime Ht_leapsecs_since_J2000 (GTime gt)
 
GTime Ht_modjul_to_GPS (HTLdbl modjul)
 
GTime Ht_now_GPS (HtErr *err)
 
HTime Ht_now_HTC (HtErr *err)
 
UTime Ht_now_UTC (HtErr *err)
 
int Ht_qtype_to_style (char *rtype)
 
void Ht_reset (void)
 
int Ht_rtype_to_style (char *rtype)
 
HTime Ht_secs_to_HTC (HTLdbl s)
 
void Ht_spice_sprintf (char *b, char *tla, HTLdbl t)
 
GTime Ht_string_to_GPS (char *s, HtErr *err)
 
HTime Ht_string_to_HTC (char *s, HtErr *err)
 
UTime Ht_string_to_UTC (char *s, HtErr *err)
 
int Ht_string_type (char *s)
 
HTLdbl Ht_TAI_to_GPS (HTLdbl tai)
 
HTLdbl Ht_TDB_to_TDT (HTLdbl tdb)
 
HTLdbl Ht_TDT_to_GPS (HTLdbl tdt)
 
HTLdbl Ht_TDT_to_TDB (HTLdbl tdt)
 
GTime Ht_UTC_to_GPS (UTime ut, HtErr *err)
 
HTime Ht_UTC_to_HTC (UTime ut, HtErr *err)
 
char * Ht_UTC_to_string (UTime ut, int style)
 
int Ht_vdif_epoch (void)
 
UTime pass_str2ut (char *s)
 

Variables

int Ht_asserted_string_type
 
HTLdbl Ht_d_mult
 
HTLdbl Ht_d_orig
 
HTLdbl Ht_default_error
 
HTLdbl Ht_dwab_dw_mult
 
int Ht_dwab_dwdelta
 
GTime Ht_gps_origin
 
IPP_word Ht_hete_epoch
 
HLifeHt_last_life
 
char * Ht_life_file
 
HLifeHt_lifetimes
 
int Ht_string_min_len
 
int Ht_suppress_Z
 
int Ht_tz_unset
 
int Ht_update_interval
 

Class Documentation

◆ sc_life

struct sc_life
Class Members
HTime birth
char comment[40]
HTLdbl dsc_dt
HTLdbl error
HTLdbl esc_dt
HLife * last
HLife * next
HLife * old
HTLdbl span
GTime start

Macro Definition Documentation

◆ EPOCH_IBEX

#define EPOCH_IBEX (   N)    (0x30|(N))

◆ HETE_PECULIAR

#define HETE_PECULIAR   0

◆ HOPS_ROOT_BREAK

#define HOPS_ROOT_BREAK   1519659904

◆ HOPS_ROOT_EPOCH

#define HOPS_ROOT_EPOCH   283996800

◆ Ht_DATACALSC

#define Ht_DATACALSC   "data/calibration/sc"

◆ Ht_DS_ADAT

#define Ht_DS_ADAT   32 /* alternate date */

◆ Ht_DS_DATE

#define Ht_DS_DATE   2 /* DATE datestamp */

◆ Ht_DS_FILE

#define Ht_DS_FILE   22 /* for file names */

◆ Ht_DS_FILH

#define Ht_DS_FILH   25 /* alt file names */

◆ Ht_DS_GRBS

#define Ht_DS_GRBS   7 /* GRB seconds UT */

◆ Ht_DS_HOPS

#define Ht_DS_HOPS   26 /* HOPS rootcode */

◆ Ht_DS_HT00

#define Ht_DS_HT00   5 /* s/c clock no0x */

◆ Ht_DS_HT03

#define Ht_DS_HT03   8 /* s/c clock 3wds */

◆ Ht_DS_ISOM

#define Ht_DS_ISOM   19 /* ISO time w/ ms */

◆ Ht_DS_ISON

#define Ht_DS_ISON   16 /* ISO time no us */

◆ Ht_DS_ISOT

#define Ht_DS_ISOT   17 /* ISO time w/ us */

◆ Ht_DS_JULD

#define Ht_DS_JULD   9 /* the julian day */

◆ Ht_DS_MAES

#define Ht_DS_MAES   20 /* for ze MAESTRO */

◆ Ht_DS_MJUL

#define Ht_DS_MJUL   10 /* mod julian day */

◆ Ht_DS_MY4C

#define Ht_DS_MY4C   24 /* MAESTRO YYYY: */

◆ Ht_DS_MY4D

#define Ht_DS_MY4D   23 /* MAESTRO YYYY. */

◆ Ht_DS_NUMB

#define Ht_DS_NUMB   33 /* count of these */

◆ Ht_DS_PASS

#define Ht_DS_PASS   1 /* PASS datestamp */

◆ Ht_DS_PGMI

#define Ht_DS_PGMI   18 /* pigmi format */

◆ Ht_DS_PLAN

#define Ht_DS_PLAN   21 /* planning times */

◆ Ht_DS_PLOG

#define Ht_DS_PLOG   31 /* Python logtime */

◆ Ht_DS_RDBE

#define Ht_DS_RDBE   30 /* vlbi rdbe time */

◆ Ht_DS_SECS

#define Ht_DS_SECS   3 /* GPS time secs */

◆ Ht_DS_UNIX

#define Ht_DS_UNIX   0 /* UNIX time secs */

◆ Ht_DS_USVN

#define Ht_DS_USVN   14 /* SVN datestamp */

◆ Ht_DS_USVZ

#define Ht_DS_USVZ   15 /* SVN w/no usecs */

◆ Ht_DS_UTRL

#define Ht_DS_UTRL   27 /* relative UTime */

◆ Ht_DS_UWKS

#define Ht_DS_UWKS   13 /* GPS weeks/sow */

◆ Ht_DS_VDIF

#define Ht_DS_VDIF   29 /* vlbi vdif time */

◆ Ht_DS_VEXT

#define Ht_DS_VEXT   28 /* vlbi vex time */

◆ Ht_DS_Y2DS

#define Ht_DS_Y2DS   11 /* yy/doy/sec.ms */

◆ Ht_DS_Y2KP

#define Ht_DS_Y2KP   4 /* PASS w/century */

◆ Ht_DS_Y4DS

#define Ht_DS_Y4DS   12 /*year/doy/sec.ms */

◆ Ht_DS_YDOY

#define Ht_DS_YDOY   6 /* YEAR/DOY.f-day */

◆ Ht_IBEX_TIME_HELP

#define Ht_IBEX_TIME_HELP   "\n\ Parse-able IBEX time formats:\n\\n\ relative: +|- integer [us|ms|s|m|h|d|y]\n\ +|- float [us|ms|s|m|h|d|y]\n\ +|- integer [(s)i(dereal)|(sy)n(odic)] (lunar months)\n\\n\ UNIX clock: secs\n\ GPS seconds: secs.[usecs]\n\ GPS time: weeks#secs[.usecs]\n\ (# == any non-space)\n\ PASS time: [19]990613_054700[.000000]\n\ DATE string: [Thu] Jun 13 05:47:00[.000000] UTC 1996\n\ (GMT may replace UTC) or the variant\n\ [Thu] 13 Jun 1996 05:47:00 AM UTC\n\ GRB time: YYMMDD+SOD (UTC)\n\ YDS time: YYYY/DOY/SOD (UTC)\n\ YY/DOY/SOD (UTC)\n\ PLAN time: YYYY/DOY.HHMMSS\n\ FILE time: YYYY_DOY_HHMM\n\ or YYYY_DOY_HH_MM\n\ MAESTRO time: YYYY/MM:DD:HH:MM:SS\n\ or [[YY]YY:]DOY:HH:MM:SS\n\ or [[YY]YY.]DOY.HH.MM.SS\n\ SVN time: YYYY-MM-DD HH:MM:SS[.uuuuuu][Z]\n\ ISO time: YYYY-MM-DDTHH:MM:SS[.uuuuuu][Z]\n\ MPS time: YYYY-MM-DDTHH:MM:SS[.mmm][Z]\n\ PIGMI time: YYYYMMDDHHMMSSmmm\n\ VLBI vex: [YY]YYyDOYdHHhMMmSS.ffffs\n\ VLBI s/e: EE@ssssssss.ffff (EE<64)\n\\n\ time_code: (epoch time[2] time[1] time[0]:)\n\ 0x0030 [0xXXXX [0xXXXX [0xXXXX]]] (w/epoch)\n\ 0xXXXX [0xXXXX [0xXXXX]] (no epoch)\n\\n\ Julian day: days.[fday] (both of these are restricted to\n\ Modified JD: days.[fday] the epoch 50000 < MJD < 70000)\n\\n\ HOPS rootcode: unix clock base 26\n\\n\"

◆ Ht_IBEXTIMES

#define Ht_IBEXTIMES   "%s/%s/gps-sc%1x.dat"

◆ Ht_JULIAN_EPOCH_IS_UTC

#define Ht_JULIAN_EPOCH_IS_UTC   (-666)

◆ Ht_LIFETIMES

#define Ht_LIFETIMES   "%s/%s/gps-dw%1x.dat"

◆ Ht_STR_ADAT

#define Ht_STR_ADAT   0x10B /* Alt.DateFmt */

◆ Ht_STR_FILE

#define Ht_STR_FILE   0x171 /* yyyy_doy_hm */

◆ Ht_STR_FILH

#define Ht_STR_FILH   0x172 /* _doy_hh_mm */

◆ Ht_STR_HOPS

#define Ht_STR_HOPS   0x109 /* UNIX baseX6 */

◆ Ht_STR_HT00

#define Ht_STR_HT00   0x208 /* without 0xX */

◆ Ht_STR_HT03

#define Ht_STR_HT03   0x210 /* 3wds no 0xX */

◆ Ht_STR_HT0x

#define Ht_STR_HT0x   0x202 /* sc_clock 0x */

◆ Ht_STR_HT0X

#define Ht_STR_HT0X   0x204 /* sc_clock 0X */

◆ Ht_STR_HTYP

#define Ht_STR_HTYP   0x200 /* a HT string */

◆ Ht_STR_ISOM

#define Ht_STR_ISOM   0x107 /* an ISO (ms) */

◆ Ht_STR_ISON

#define Ht_STR_ISON   0x106 /* an ISO (s) */

◆ Ht_STR_ISOT

#define Ht_STR_ISOT   0x105 /* an ISO time */

◆ Ht_STR_JDAY

#define Ht_STR_JDAY   0x160 /* Julian Date */

◆ Ht_STR_MAES

#define Ht_STR_MAES   0x139 /* YYYY/MM:DD: */

◆ Ht_STR_MODJ

#define Ht_STR_MODJ   0x161 /* Mod JulianD */

◆ Ht_STR_MY0C

#define Ht_STR_MY0C   0x13F /* Maestr. HH: */

◆ Ht_STR_MY0D

#define Ht_STR_MY0D   0x13C /* Maestr. HH. */

◆ Ht_STR_MY2C

#define Ht_STR_MY2C   0x13E /* Mae. YY:HH: */

◆ Ht_STR_MY2D

#define Ht_STR_MY2D   0x13B /* Mae. YY.HH. */

◆ Ht_STR_MY4C

#define Ht_STR_MY4C   0x13D /* M. YYYY:HH: */

◆ Ht_STR_MY4D

#define Ht_STR_MY4D   0x13A /* M. YYYY.HH. */

◆ Ht_STR_NTYP

#define Ht_STR_NTYP   0x000 /* unknown typ */

◆ Ht_STR_NULL

#define Ht_STR_NULL   0x300 /* null string */

◆ Ht_STR_PGMI

#define Ht_STR_PGMI   0x190 /* pygmi time */

◆ Ht_STR_PLAN

#define Ht_STR_PLAN   0x170 /* yyyydoy.hms */

◆ Ht_STR_PLOG

#define Ht_STR_PLOG   0x10A /* Python Log */

◆ Ht_STR_RDBE

#define Ht_STR_RDBE   0x1A2 /* vlbi (rdbe) */

◆ Ht_STR_UGPS

#define Ht_STR_UGPS   0x110 /* GPS in secs */

◆ Ht_STR_UGRB

#define Ht_STR_UGRB   0x140 /* GRB secs UT */

◆ Ht_STR_USVN

#define Ht_STR_USVN   0x103 /* a SVN date */

◆ Ht_STR_UTDT

#define Ht_STR_UTDT   0x104 /* a DATE date */

◆ Ht_STR_UTNX

#define Ht_STR_UTNX   0x101 /* a UNIX time */

◆ Ht_STR_UTPS

#define Ht_STR_UTPS   0x102 /* a PASS date */

◆ Ht_STR_UTRL

#define Ht_STR_UTRL   0x108 /* relative UT */

◆ Ht_STR_UTYP

#define Ht_STR_UTYP   0x100 /* a UT string */

◆ Ht_STR_UWKS

#define Ht_STR_UWKS   0x120 /* GPS wks+sec */

◆ Ht_STR_VDIF

#define Ht_STR_VDIF   0x1A1 /* vlbi (vdif) */

◆ Ht_STR_VEXT

#define Ht_STR_VEXT   0x1A0 /* vlbi (vex) */

◆ Ht_STR_Y2DS

#define Ht_STR_Y2DS   0x180 /* yy/doy/sod */

◆ Ht_STR_Y4DS

#define Ht_STR_Y4DS   0x181 /*yyyy/doy/sod */

◆ Ht_STR_YDOY

#define Ht_STR_YDOY   0x182 /*yyyy/doy.frd */

◆ J2000_EPOCH

#define J2000_EPOCH   630763200.000000

◆ JD_GPS_EPOCH

#define JD_GPS_EPOCH   (2444239.5 + 5.0)/*days*/

◆ JD_UNIX_EPOCH

#define JD_UNIX_EPOCH   (2440587.5)/*days*/

◆ MAX_WEEKS

#define MAX_WEEKS   8192

◆ SPICE_ET_ORIGIN

#define SPICE_ET_ORIGIN   630763148.816000

◆ SPICE_ET_TYPE_GPS

#define SPICE_ET_TYPE_GPS   0

◆ SPICE_ET_TYPE_TAI

#define SPICE_ET_TYPE_TAI   1

◆ SPICE_ET_TYPE_TDB

#define SPICE_ET_TYPE_TDB   3

◆ SPICE_ET_TYPE_TDT

#define SPICE_ET_TYPE_TDT   2

◆ SPICE_ET_TYPE_UTC

#define SPICE_ET_TYPE_UTC   4

◆ TAI_GPS_DELTA

#define TAI_GPS_DELTA   19/*seconds*/

◆ TAI_UTC_DATA

#define TAI_UTC_DATA   "%s/%s/tai-utc.dat"

◆ TDT_GPS_DELTA

#define TDT_GPS_DELTA   51.184/*seconds*/

◆ TDT_TAI_DELTA

#define TDT_TAI_DELTA   32.184/*seconds*/

◆ THIS_IS_IBEX

#define THIS_IS_IBEX   ((Ht_hete_epoch & 0x30) == 0x30)

Typedef Documentation

◆ GTime

typedef HTLdbl GTime

◆ HLife

typedef struct sc_life HLife

◆ HtErr

typedef HTLdbl HtErr

◆ HTime

typedef time_code HTime

◆ UTime

typedef struct timeval UTime

Function Documentation

◆ Ht_convert_et_to_gps()

char* Ht_convert_et_to_gps ( char *  arg,
int  eph_type 
)

◆ Ht_delta_setup()

int Ht_delta_setup ( char *  type,
char *  base 
)

◆ Ht_delta_value()

HTLdbl Ht_delta_value ( char *  s,
HTLdbl pterror 
)

◆ Ht_dump_lives()

void Ht_dump_lives ( char *  file)

◆ Ht_ephem_type()

int Ht_ephem_type ( char *  arg)

◆ Ht_format_help()

void Ht_format_help ( void  )

◆ Ht_GPS_to_HTC()

HTime Ht_GPS_to_HTC ( GTime  gt,
HtErr err 
)

◆ Ht_GPS_to_julian()

HTLdbl Ht_GPS_to_julian ( GTime  gps)

◆ Ht_GPS_to_modjul()

HTLdbl Ht_GPS_to_modjul ( GTime  gps)

◆ Ht_GPS_to_string()

char* Ht_GPS_to_string ( GTime  gt,
int  style 
)

◆ Ht_GPS_to_TAI()

HTLdbl Ht_GPS_to_TAI ( HTLdbl  gps)

◆ Ht_GPS_to_TDT()

HTLdbl Ht_GPS_to_TDT ( HTLdbl  gps)

◆ Ht_GPS_to_UTC()

UTime Ht_GPS_to_UTC ( GTime  gt,
HtErr err 
)

◆ Ht_HTC_to_GPS()

GTime Ht_HTC_to_GPS ( HTime  ht,
HtErr err 
)

◆ Ht_HTC_to_secs()

HTLdbl Ht_HTC_to_secs ( HTime  ht)

◆ Ht_HTC_to_string()

char* Ht_HTC_to_string ( HTime  ht,
int  style 
)

◆ Ht_HTC_to_UTC()

UTime Ht_HTC_to_UTC ( HTime  ht,
HtErr err 
)

◆ Ht_initialize()

void Ht_initialize ( void  )

◆ Ht_julday()

int Ht_julday ( int  mm,
int  id,
int  iyyy 
)

◆ Ht_julday_to_GPS()

GTime Ht_julday_to_GPS ( HTLdbl  julian)

◆ Ht_julian_epoch()

int Ht_julian_epoch ( void  )

◆ Ht_julian_to_GPS()

GTime Ht_julian_to_GPS ( HTLdbl  julian)

◆ Ht_leapsecs_from_year_start_to_gps()

HTLdbl Ht_leapsecs_from_year_start_to_gps ( int  year,
GTime  gps 
)

◆ Ht_leapsecs_since_J2000()

GTime Ht_leapsecs_since_J2000 ( GTime  gt)

◆ Ht_modjul_to_GPS()

GTime Ht_modjul_to_GPS ( HTLdbl  modjul)

◆ Ht_now_GPS()

GTime Ht_now_GPS ( HtErr err)

◆ Ht_now_HTC()

HTime Ht_now_HTC ( HtErr err)

◆ Ht_now_UTC()

UTime Ht_now_UTC ( HtErr err)

◆ Ht_qtype_to_style()

int Ht_qtype_to_style ( char *  rtype)

◆ Ht_reset()

void Ht_reset ( void  )

◆ Ht_rtype_to_style()

int Ht_rtype_to_style ( char *  rtype)

◆ Ht_secs_to_HTC()

HTime Ht_secs_to_HTC ( HTLdbl  s)

◆ Ht_spice_sprintf()

void Ht_spice_sprintf ( char *  b,
char *  tla,
HTLdbl  t 
)

◆ Ht_string_to_GPS()

GTime Ht_string_to_GPS ( char *  s,
HtErr err 
)

◆ Ht_string_to_HTC()

HTime Ht_string_to_HTC ( char *  s,
HtErr err 
)

◆ Ht_string_to_UTC()

UTime Ht_string_to_UTC ( char *  s,
HtErr err 
)

◆ Ht_string_type()

int Ht_string_type ( char *  s)

◆ Ht_TAI_to_GPS()

HTLdbl Ht_TAI_to_GPS ( HTLdbl  tai)

◆ Ht_TDB_to_TDT()

HTLdbl Ht_TDB_to_TDT ( HTLdbl  tdb)

◆ Ht_TDT_to_GPS()

HTLdbl Ht_TDT_to_GPS ( HTLdbl  tdt)

◆ Ht_TDT_to_TDB()

HTLdbl Ht_TDT_to_TDB ( HTLdbl  tdt)

◆ Ht_UTC_to_GPS()

GTime Ht_UTC_to_GPS ( UTime  ut,
HtErr err 
)

◆ Ht_UTC_to_HTC()

HTime Ht_UTC_to_HTC ( UTime  ut,
HtErr err 
)

◆ Ht_UTC_to_string()

char* Ht_UTC_to_string ( UTime  ut,
int  style 
)

◆ Ht_vdif_epoch()

int Ht_vdif_epoch ( void  )

◆ pass_str2ut()

UTime pass_str2ut ( char *  s)

Variable Documentation

◆ Ht_asserted_string_type

int Ht_asserted_string_type
extern

◆ Ht_d_mult

HTLdbl Ht_d_mult
extern

◆ Ht_d_orig

HTLdbl Ht_d_orig

◆ Ht_default_error

HTLdbl Ht_default_error
extern

◆ Ht_dwab_dw_mult

HTLdbl Ht_dwab_dw_mult
extern

◆ Ht_dwab_dwdelta

int Ht_dwab_dwdelta
extern

◆ Ht_gps_origin

GTime Ht_gps_origin
extern

◆ Ht_hete_epoch

IPP_word Ht_hete_epoch
extern

◆ Ht_last_life

HLife* Ht_last_life
extern

◆ Ht_life_file

char* Ht_life_file
extern

◆ Ht_lifetimes

HLife* Ht_lifetimes
extern

◆ Ht_string_min_len

int Ht_string_min_len
extern

◆ Ht_suppress_Z

int Ht_suppress_Z
extern

◆ Ht_tz_unset

int Ht_tz_unset
extern

◆ Ht_update_interval

int Ht_update_interval
extern