home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 October / usenetsourcesnewsgroupsinfomagicoctober1994disk2.iso / unix / volume18 / geneal / part01 / famntree.h < prev    next >
Text File  |  1989-03-08  |  3KB  |  64 lines

  1. /* famntree.h - header file for famntree.c
  2.  *
  3.  * 12.Aug.87  jimmc  Initial definition
  4.  * 31.Aug.87  jimmc  Add bd2, marr, headerlines
  5.  *  8.Sep.87  jimmc  Add tnote
  6.  * 18.Sep.87  jimmc  Moved XALLOC into xalloc.h; add addr in Famninfo
  7.  * 21.Sep.87  jimmc  Use info[] instead of separate char* fields
  8.  */
  9.  
  10. typedef struct _Fammemspouse {    /* one spouse for an individual */
  11.     int id;        /* spouse id */
  12.     int mid;    /* marriage (family) id */
  13. #define FS_MD 0        /* marriage date/place */
  14. #define FS_MTNOTE 1    /* a tnote on the marriage */
  15. #define FS_NAME 2    /* spouse name */
  16. #define FS_BD 3        /* birthdate */
  17. #define FS_BD2 4    /* more bd stuff */
  18. #define FS_BUR 5    /* buried */
  19. #define FS_TNOTE 6    /* a tnote on the spouse */
  20. #define FSSIZE 7    /* number of info items for a spouse record */
  21.     char *info[FSSIZE];    /* info per above defines */
  22.     int lines;    /* number of lines of text for this spouse */
  23.     int cols;        /* number of cols in this fs */
  24.     int connx;    /* position of connector for this spouse */
  25. } Fammemspouse;
  26.  
  27. typedef struct _Fammember {    /* one individual */
  28.     int id;        /* member id */
  29. #define FM_NAME 0    /* member name */
  30. #define FM_BD 1        /* birthdate/place */
  31. #define FM_BD2 2    /* more bd stuff */
  32. #define FM_BUR 3    /* buried */
  33. #define FM_TNOTE 4    /* a tnote on the member */
  34. #define FMSIZE 5
  35.     char *info[FMSIZE];    /* info per above defines */
  36.     int headerlines;    /* number of lines in the header part */
  37.     int lines;    /* total number of lines of text for this member */
  38.     int cols;        /* number of cols in this fm */
  39.     int connx;    /* x position of connector for this member */
  40.     int scount;    /* number of spouse entries */
  41.     Fammemspouse *slist;    /* pointer to array of spouse entries */
  42. } Fammember;
  43.  
  44. typedef struct _Famninfo {    /* a family or individual in a box */
  45.     char *boxname;        /* for labeling and for connectors */
  46.     int famid;        /* family id, even if box for individual */
  47.     int fatherid;        /* id for father of that family */
  48.     int motherid;        /* id for mother of that family */
  49. #define FI_NAME 0    /* family name */
  50. #define FI_MARR 1    /* marriage info */
  51. #define FI_TNOTE 2    /* a tnote on the family */
  52. #define FI_ADDR 3    /* address/phone for the family */
  53. #define FISIZE 4    /* number of info items for a family info record */
  54.     char *info[FISIZE];    /* info per above defines */
  55.     int namelen;        /* length of name */
  56.     int headerlines;    /* number of lines in the header part */
  57.     int lines;        /* number of lines in this square */
  58.     int cols;        /* number of cols in this square */
  59.     int mcount;        /* number of members in this box */
  60.     Fammember *mlist;    /* pointer to array of members */
  61. } Famninfo;
  62.  
  63. /* end */
  64.