/********************************************************************
* lindner
* 3.5
* 1994/07/21 22:26:37
* /home/arcwelder/GopherSrc/CVS/gopher+/object/GDgopherdir.h,v
* Exp
*
* Paul Lindner, University of Minnesota CIS.
*
* Copyright 1991, 1992 by the Regents of the University of Minnesota
* see the file "Copyright" in the distribution for conditions of use.
*********************************************************************
* MODULE: GDgopherdir.h
* Header file/abstraction of a gopher directory
*********************************************************************
* Revision History:
* GDgopherdir.h,v
* Revision 3.5 1994/07/21 22:26:37 lindner
* Alan's GDlocation stuff
*
* Revision 3.4 1994/01/21 04:47:20 lindner
* Add function prototypes
*
* Revision 3.3 1994/01/10 03:29:07 lindner
* New Method GDsetNumitems()
*
* Revision 3.2 1993/04/15 21:35:59 lindner
* Changed protos
*
* Revision 3.1.1.1 1993/02/11 18:03:03 lindner
* Gopher+1.2beta release
*
* Revision 1.1 1992/12/10 23:27:52 lindner
* gopher 1.1 release
*
*
*********************************************************************/
#ifndef GDGOPHERDIR_H
#define GDGOPHERDIR_H
#include "GSgopherobj.h"
#include "DAarray.h"
/****************************************************************
** A Gopher directory structure...
** Features dynamic growth among other things...
**
*****************************************************************/
struct g_dir_struct {
String *Title;
GopherObj *Location;
DynArray *Gophers;
int currentitem;
};
typedef struct g_dir_struct GopherDirObj;
typedef struct g_dir_struct *GopherDirObjp;
#define GDgetEntry(a,b) ((GopherObj *)(DAgetEntry((a)->Gophers,(b))))
#define GDgetTitle(a) (STRget((a)->Title))
#define GDsetTitle(a,b) (STRset((a)->Title,b))
#define GDgetLocation(a) ((a)->Location)
#define GDgetNumitems(a) (DAgetNumitems((a)->Gophers))
#define GDsetNumitems(a,b) (DAsetTop((a)->Gophers,(b)))
#define GDsetCurrentItem(a,b) ((a)->currentitem=b)
#define GDgetCurrentItem(a) ((a)->currentitem)
/*** Real live functions declared in GDgopherdir.c ***/
GopherDirObj *GDnew();
void GDdestroy();
void GDinit();
void GDsetLocation();
void GDaddGS();
void GDaddGSmerge();
void GDsort();
void GDtoNet();
void GDplustoNet();
void GDfromNet();
int GDplusfromNet();
void GDgrow();
void GDfromLink();
void GDtoLink();
GopherDirObj *GDdeleteGS();
#endif /* GDGOPHERDIR_H */
.
Response:
text/plain