/* * * Macintosh Resource structures * */ #ifndef __MAC_RESOURCE__ #define __MAC_RESOURCE__ #define macresPreLoad 0x04 #define macresProtected 0x08 #define macresLocked 0x10 #define macresPurgeable 0x20 #define macresHeap 0x40 struct MacResourceHeader { unsigned long offset_rdata; /* offset to resource data */ unsigned long offset_rmap; /* offset to resource map */ unsigned long length_rdata; /* length of resource data */ unsigned long length_rmap; /* length of resource map */ }; typedef struct MacResourceHeader MacResourceHeader, *MacResourceHeaderPtr; struct MacResourceMap { unsigned char Reserved[16]; /* For system use */ long NextResource; /* For system use */ int fileRef; /* For system use */ unsigned int attr; /* resource fork attributes */ unsigned int offset_typelist; /* offset from map to typelist */ unsigned int offset_namelist; /* offset from map to namelist */ unsigned int count; /* # of resources -1 */ }; typedef struct MacResourceMap MacResourceMap, *MacResourceMapPtr; struct MacResourceTypeList { unsigned char ResourceType[4]; unsigned int count; /* # of resources -1 */ unsigned int offset; /* offset from typelist to ref. list */ }; typedef struct MacResourceTypeList MacResourceTypeList, *MacResourceTypeListPtr; struct MacReferenceList { unsigned int ResourceID; /* ID of resource */ unsigned int offset_namelist; /* offset from reference list to name or -1 for no name */ unsigned char attr; /* attributes */ unsigned char offset_data[3]; /* offset from resource data to this data */ long Handle; /* for system use */ }; typedef struct MacReferenceList MacReferenceList, *MacReferenceListPtr; #endif