typedef struct { word CAH_count; /* # of elements in chunk array */ word CAH_elementSize; /* Size of each element (in bytes) */ word CAH_curOffset; /* For internal use only */ word CAH_offset; /* Offset from start of chunk to first element */ } ChunkArrayHeader;
Every chunk array begins with a
ChunkArrayHeader
. This structure contains information about the chunk array. Applications should never change the contents of the
ChunkArrayHeader
; only the chunk array routines should do this. However, applications can examine the header if they wish.
Contents: There are four word-length fields in the
ChunkArrayHeader
:
_count
_elementSize
CAH_elementSize
will be zero.
_curOffset
ChunkArrayEnum()
for bookkeeping.
_offset
typedef word ChunkHandle;
location of a chunk in an LMem heap, combine the segment address of the heap with the chunk handle. From this location you can read the current offset of the chunk itself.
See Also: optr
,LMemDeref()
.
typedef ByteFlags ClassFlags; #define CLASSF_HAS_DEFAULT 0x80 #define CLASSF_MASTER_CLASS 0x40 #define CLASSF_VARIANT_CLASS 0x20 #define CLASSF_DISCARD_ON_SAVE 0x10 #define CLASSF_NEVER_SAVED 0x08 #define CLASSF_HAS_RELOC 0x04 #define CLASSF_C_HANDLERS 0x02
This record is stored in the
ClassStruct
structure's
Class_flags
field. These flags are internal and may not be set or retrieved directly. See the entry on
@class
for more information about these flags.
typedef struct _ClassStruct { struct _ClassStruct *Class_superClass; /* superclass pointer */ word Class_masterOffset; /* offset to master offset in chunk */ word Class_methodCount; /* number of methods in this class */ word Class_instanceSize; /* size of entire master group */ word Class_vdRelocTable; /* offset to vardata relocation table */ word Class_relocTable; /* offset to relocation table */ ClassFlags Class_flags; /* a record of ClassFlags */ byte Class_masterMessages; /* internal flags for optimization */ } ClassStruct;
This is the structure that defines a class. It is internal and used only very rarely by anything other than the kernel and the UI.
typedef WordFlags ClipboardItemFlags; #define CIF_QUICK 0x4000 #define TIF_NORMAL 0x0000
typedef enum /* word */ { CIF_TEXT, CIF_GRAPHICS_STRING, CIF_FILES, CIF_SPREADSHEET, CIF_INK, CIF_GROBJ, CIF_GEODEX, CIF_BITMAP, CIF_SOUND_SYNTH, CIF_SOUND_SAMPLE } ClipboardItemFormat;
typedef struct { ClipboardItemFormatID CIFI_format; word CIFI_extra1; word CIFI_extra2; VMChain CIFI_vmChain; GeodeToken CIFI_renderer; } ClipboardItemFormatInfo;