00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef __LNC_ASTRO_OBJECT_H
00020 #define __LNC_ASTRO_OBJECT_H
00021
00022 #include <stdio.h>
00023
00024 #include <libncat/libncat.h>
00025 #include <libncat/object.h>
00026
00027 #define soffset(x,y) (int)(&((x*)0)->y)
00028 #define ssizeof(x,y) sizeof(((x*)0)->y)
00029 #define asize(x) (sizeof(x)/sizeof(x[0]))
00030
00031 typedef struct {
00032 char name[32];
00033 char symbol[8];
00034 int s_offset;
00035 int l_offset;
00036 int s_size;
00037 int l_size;
00038 lnc_ctype type;
00039 char units[16];
00040 int g_offset;
00041 int g_posn;
00042 } lnc_dset_index;
00043
00044 extern lnc_dset_index astro_fields[];
00045
00049 int append_astro_field (lnc_dset_index* base, char* field);
00050
00051 int get_astro_field_offset (char* field);
00052
00053 #endif