home *** CD-ROM | disk | FTP | other *** search
-
- /*
- * Internal Resource Header Files
- */
-
- #define TML struct _TML
- #define TREN struct _TREN
- #define SVS struct _SVS
- #define RFILE struct _RFILE
- #define FTABLE struct _FTABLE
- #define HTABLE struct _HTABLE
-
- /*
- * Task Mem-List Resource structure
- */
-
- TML {
- long XLock[2];
- MLIST RENList; /* List of resources */
- MLIST RFList; /* List of private resource Files */
- };
-
- /*
- * Task Resource Entry
- */
-
- TREN {
- MNODE Node;
- APTR Ptr;
- long (*Func)();
- };
-
- /*
- * Swap Volume Structure
- */
-
- SVS {
- MNODE Node;
- long XLock[2];
- long Fh; /* associated fh or lock */
- uword Flags; /* HAVHANDLE, HAVLOCK */
- long Swapped; /* bytes swapped */
- long FileSize; /* current file size */
- long Free; /* bytes free */
- long Link[32]; /* swap area free lists */
- char *Name; /* swap volume name */
- };
-
- /*
- * Resource File Structure
- */
-
- RFILE {
- MNODE Node;
- long XLock[2];
- long Fh; /* associated fh or lock */
- long HTsize; /* hash table size in file */
- long Loaded; /* bytes loaded */
- long Swapped; /* bytes swapped */
- uword Flags; /* HAVHANDLE, HAVLOCK */
- uword HTSize; /* pwr of 2, # of entries */
- FTABLE **HTab; /* [n]&3:0-mem 1-seek. file access dict. */
- HTABLE **LTab; /* active resource access table (by name) */
- char *Name; /* resource file name */
- };
-
- /*
- * Hash table entry for dictionary
- */
-
- FTABLE {
- long Next; /* Next entry 0-end, &3:0-mem 1-seek */
- uword Flags; /* all applicable flags, inc load state */
- ubyte NLen; /* name length */
- ubyte TLen; /* type length */
- long Seek; /* seek position in file */
- long Len; /* size of resource in file / htable ptr */
- ubyte Name[2]; /* extend structure to [n] */
- };
-
- /*
- * Hash table entry for active resource
- */
-
- HTABLE {
- long Next; /* Next entry 0-end, &3:0-mem 1-swapped */
- uword Flags; /* all applicable flags, inc load state */
- uword Refs;
- long Ptr; /* data ptr, swap ptr */
- long Func; /* control function */
- };
-
-