SDS_SETKEY_TIME(3)
in the keylist (libast.d) and vds (libvds.d) libraries.
Routines are provided with forms of:
sds_getkey_xxx
sds_setkey_xxx
where the set of functions, xxx are:
int
double
time
time_interval
str
In the case of _str, an additional function is provided
which has upper-case first words, i.e.:
SDS_getkey_str
which is like the lower case version BUT return a pointer
to a static string. the return string must be used before
subsequent calls to the same function or the value will
be overwritten. Also, the returned string must not be
"freed" or otherwise treated as a malloced string.
These functions are designed so they can be used without
explicit testing for failures if the values for missing
responses are acceptable in the use. The returned missing
values are:
int I_MISSING ( 1 << 31 )
double D_MISSING (a quiet d NaN)
time T_MISSING (-4712.01.01_12:00:00.000_UT)
time_interval TINT_MISSING (0.0)
if the missing value is the result of a void input pointer
or other such probably unexpected error,
soi_errno will be set as appropriate and an errstk message
will be generated. If the keyword is present but has
no value present, the missing value will be returned without
comment.
Most of the functionality in these routines exists by different
names. In those cases, the code is simple. Macros have not
been used even in those cases to allow different error handling
if needed.
Contents:
char *sds_getkey_str(SDS *sds, char *key);
char *SDS_getkey_str(SDS *sds, char *key);
int sds_getkey_int(SDS *sds, char *key);
Planned updates: