Annotation of mstools/samples/sdktools/aniedit/anicur.h, revision 1.1.1.1

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 */

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.