|
|
1.1 ! root 1: /****************************** Module Header ******************************\ ! 2: * Module Name: ANICUR.H ! 3: * ! 4: * This header contains all structures and constants needed for manipulating ! 5: * Animated cursor files. ! 6: * ! 7: * History: ! 8: * 28-Apr-1993 JonPa Copied from Windows NT ! 9: * ! 10: \***************************************************************************/ ! 11: ! 12: #include <mmsystem.h> ! 13: ! 14: // RIFF chunk header. ! 15: ! 16: typedef struct _RTAG { ! 17: FOURCC ckID; ! 18: DWORD ckSize; ! 19: } RTAG, *PRTAG; ! 20: ! 21: ! 22: // Valid TAG types. ! 23: ! 24: // 'ANI ' - simple ANImation file ! 25: ! 26: #define FOURCC_ACON mmioFOURCC('A', 'C', 'O', 'N') ! 27: ! 28: ! 29: // 'anih' - ANImation Header ! 30: // Contains an ANIHEADER structure. ! 31: ! 32: #define FOURCC_anih mmioFOURCC('a', 'n', 'i', 'h') ! 33: ! 34: ! 35: // 'rate' - RATE table (array of jiffies) ! 36: // Contains an array of JIFs. Each JIF specifies how long the corresponding ! 37: // animation frame is to be displayed before advancing to the next frame. ! 38: // If the AF_SEQUENCE flag is set then the count of JIFs == anih.cSteps, ! 39: // otherwise the count == anih.cFrames. ! 40: ! 41: #define FOURCC_rate mmioFOURCC('r', 'a', 't', 'e') ! 42: ! 43: ! 44: // 'seq ' - SEQuence table (array of frame index values) ! 45: // Countains an array of DWORD frame indices. anih.cSteps specifies how ! 46: // many. ! 47: ! 48: #define FOURCC_seq mmioFOURCC('s', 'e', 'q', ' ') ! 49: ! 50: ! 51: // 'fram' - list type for the icon list that follows ! 52: ! 53: #define FOURCC_fram mmioFOURCC('f', 'r', 'a', 'm') ! 54: ! 55: // 'icon' - Windows ICON format image (replaces MPTR) ! 56: ! 57: #define FOURCC_icon mmioFOURCC('i', 'c', 'o', 'n') ! 58: ! 59: ! 60: // Standard tags (but for some reason not defined in MMSYSTEM.H) ! 61: ! 62: #define FOURCC_INFO mmioFOURCC('I', 'N', 'F', 'O') // INFO list ! 63: #define FOURCC_IART mmioFOURCC('I', 'A', 'R', 'T') // Artist ! 64: #define FOURCC_INAM mmioFOURCC('I', 'N', 'A', 'M') // Name/Title ! 65: ! 66: typedef DWORD JIF, *PJIF; ! 67: ! 68: typedef struct _ANIHEADER { /* anih */ ! 69: DWORD cbSizeof; ! 70: DWORD cFrames; ! 71: DWORD cSteps; ! 72: DWORD cx, cy; ! 73: DWORD cBitCount, cPlanes; ! 74: JIF jifRate; ! 75: DWORD fl; ! 76: } ANIHEADER, *PANIHEADER; ! 77: ! 78: /* If the AF_ICON flag is specified the fields cx, cy, cBitCount, and ! 79: * cPlanes are all unused. Each frame will be of type ICON and will ! 80: * contain its own dimensional information. ! 81: */ ! 82: ! 83: #define AF_ICON 0x0001L /* Windows format icon/cursor animation */ ! 84: #define AF_SEQUENCE 0x0002L /* Animation is sequenced */
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.