/* interface for citation routines */ #define REF_AUTHOR 'A' #define REF_TITLE 'T' #define REF_DATE 'D' #define REF_REPORT 'R' #define REF_URL 'U' #define REF_ABSTRACT 'X' #define REF_CATEGORY 'Y' #define REF_KEYWORDS 'K' #define REF_INST 'I' #define REF_LASTMOD 'Z' #define ABS_SIZE 16384 typedef struct { char *author; char *trId; char *poster; char *title; char *date; char *modified; char *keywords; char *categories; char *abstract; char *url; char *org; char *filepath; } Citation, *CitationPtr; void freeCitation (CitationPtr C); CitationPtr initCitation (); CitationPtr read_one_citation (FILE *fp); int write_one_citation (FILE *fp, CitationPtr C); int readEntry (FILE *fp, char *buffer); char *getAuthor (CitationPtr C); char *getTrId (CitationPtr C); char *getPoster (CitationPtr C); char *getTitle (CitationPtr C); char *getDate (CitationPtr C); char *getModDate (CitationPtr C); char *getKeywords (CitationPtr C); char *getCategories (CitationPtr C); char *getAbstract (CitationPtr C); char *getUrl (CitationPtr C); char *getOrg (CitationPtr C); char *getFilepath (CitationPtr C);