⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 components.h

📁 Mplayer源码
💻 H
📖 第 1 页 / 共 3 页
字号:
// Basic types:typedef char *                          Ptr;typedef Ptr *                           Handle;typedef int32_t                         Size;typedef unsigned char                   Boolean;typedef unsigned char                   Str31[32];typedef int32_t                         Fixed;typedef int32_t OSErr;typedef int OSType;typedef int32_t ComponentResult;typedef unsigned char                   UInt8;typedef signed char                     SInt8;typedef unsigned short                  UInt16;typedef signed short                    SInt16;typedef uint32_t                        UInt32;typedef int32_t                         SInt32;#define FOUR_CHAR_CODE(a,b,c,d)       ((uint32_t)(a)<<24 | (uint32_t)(b)<<16 | (uint32_t)(c)<<8 | (uint32_t)(d)) /* otherwise compiler will complain about values with high bit set */// codec private shit:typedef void *GlobalsPtr;typedef void **Globals;//==================== COMPONENTS ===========================struct __attribute__((__packed__)) ComponentParameters {    UInt8                           flags;                      /* call modifiers: sync/async, deferred, immed, etc */    UInt8                           paramSize;                  /* size in bytes of actual parameters passed to this call */    short                           what;                       /* routine selector, negative for Component management calls */    int32_t                         params[1];                  /* actual parameters for the indicated routine */};typedef struct ComponentParameters      ComponentParameters;struct __attribute__((__packed__)) ComponentDescription {    OSType                          componentType;              /* A unique 4-byte code indentifying the command set */    OSType                          componentSubType;           /* Particular flavor of this instance */    OSType                          componentManufacturer;      /* Vendor indentification */    uint32_t                        componentFlags;             /* 8 each for Component,Type,SubType,Manuf/revision */    uint32_t                        componentFlagsMask;         /* Mask for specifying which flags to consider in search, zero during registration */};typedef struct ComponentDescription     ComponentDescription;struct __attribute__((__packed__)) ResourceSpec {    OSType                          resType;                    /* 4-byte code    */    short                           resID;                      /*         */};typedef struct ResourceSpec             ResourceSpec;struct __attribute__((__packed__)) ComponentResource {    ComponentDescription            cd;                         /* Registration parameters */    ResourceSpec                    component;                  /* resource where Component code is found */    ResourceSpec                    componentName;              /* name string resource */    ResourceSpec                    componentInfo;              /* info string resource */    ResourceSpec                    componentIcon;              /* icon resource */};typedef struct ComponentResource        ComponentResource;typedef ComponentResource *             ComponentResourcePtr;typedef ComponentResourcePtr *          ComponentResourceHandle;struct __attribute__((__packed__)) ComponentRecord {    int32_t                            data[1];};typedef struct ComponentRecord          ComponentRecord;typedef ComponentRecord *               Component;struct __attribute__((__packed__)) ComponentInstanceRecord {    int32_t                            data[1];};typedef struct ComponentInstanceRecord  ComponentInstanceRecord;typedef ComponentInstanceRecord *       ComponentInstance;// ========================= QUICKDRAW =========================struct __attribute__((__packed__)) Rect {    short                           top;    short                           left;    short                           bottom;    short                           right;};typedef struct Rect                     Rect;typedef Rect *                          RectPtr;struct __attribute__((__packed__)) RGBColor {    unsigned short                  red;                        /*magnitude of red component*/    unsigned short                  green;                      /*magnitude of green component*/    unsigned short                  blue;                       /*magnitude of blue component*/};typedef struct RGBColor                 RGBColor;typedef RGBColor *                      RGBColorPtr;typedef RGBColorPtr *                   RGBColorHdl;struct __attribute__((__packed__)) ColorSpec {    short                           value;                      /*index or other value*/    RGBColor                        rgb;                        /*true color*/};typedef struct ColorSpec                ColorSpec;typedef ColorSpec *                     ColorSpecPtr;typedef ColorSpec                       CSpecArray[1];struct __attribute__((__packed__)) ColorTable {    int32_t                         ctSeed;                     /*unique identifier for table*/    short                           ctFlags;                    /*high bit: 0 = PixMap; 1 = device*/    short                           ctSize;                     /*number of entries in CTTable*/    CSpecArray                      ctTable;                    /*array [0..0] of ColorSpec*/};typedef struct ColorTable               ColorTable;typedef ColorTable *                    CTabPtr;typedef CTabPtr *                       CTabHandle;struct __attribute__((__packed__)) MatrixRecord {    Fixed                           matrix[3][3];};typedef struct MatrixRecord             MatrixRecord;typedef MatrixRecord *                  MatrixRecordPtr;typedef int32_t                         ImageSequence;typedef OSType                          CodecType;typedef unsigned short                  CodecFlags;typedef uint32_t                        CodecQ;struct __attribute__((__packed__)) ImageDescription {    int32_t                         idSize;                     /* total size of ImageDescription including extra data ( CLUTs and other per sequence data ) */    CodecType                       cType;                      /* what kind of codec compressed this data */    int32_t                         resvd1;                     /* reserved for Apple use */    short                           resvd2;                     /* reserved for Apple use */    short                           dataRefIndex;               /* set to zero  */    short                           version;                    /* which version is this data */    short                           revisionLevel;              /* what version of that codec did this */    int32_t                         vendor;                     /* whose  codec compressed this data */    CodecQ                          temporalQuality;            /* what was the temporal quality factor  */    CodecQ                          spatialQuality;             /* what was the spatial quality factor */    short                           width;                      /* how many pixels wide is this data */    short                           height;                     /* how many pixels high is this data */    Fixed                           hRes;                       /* horizontal resolution */    Fixed                           vRes;                       /* vertical resolution */    int32_t                         dataSize;                   /* if known, the size of data for this image descriptor */    short                           frameCount;                 /* number of frames this description applies to */    Str31                           name;                       /* name of codec ( in case not installed )  */    short                           depth;                      /* what depth is this data (1-32) or ( 33-40 grayscale ) */    short                           clutID;                     /* clut id or if 0 clut follows  or -1 if no clut */};typedef struct ImageDescription         ImageDescription;typedef ImageDescription *              ImageDescriptionPtr;typedef ImageDescriptionPtr *           ImageDescriptionHandle;/* values for PixMap.pixelFormat*/enum {    k16LE555PixelFormat         = FOUR_CHAR_CODE('L','5','5','5'),       /* 16 bit LE rgb 555 (PC)*/    k16LE5551PixelFormat        = FOUR_CHAR_CODE('5','5','5','1'),       /* 16 bit LE rgb 5551*/    k16BE565PixelFormat         = FOUR_CHAR_CODE('B','5','6','5'),       /* 16 bit BE rgb 565*/    k16LE565PixelFormat         = FOUR_CHAR_CODE('L','5','6','5'),       /* 16 bit LE rgb 565*/    k24BGRPixelFormat           = FOUR_CHAR_CODE('2','4','B','G'),       /* 24 bit bgr */    k32BGRAPixelFormat          = FOUR_CHAR_CODE('B','G','R','A'),       /* 32 bit bgra    (Matrox)*/    k32ABGRPixelFormat          = FOUR_CHAR_CODE('A','B','G','R'),       /* 32 bit abgr    */    k32RGBAPixelFormat          = FOUR_CHAR_CODE('R','G','B','A'),       /* 32 bit rgba    */    kYUVSPixelFormat            = FOUR_CHAR_CODE('y','u','v','s'),       /* YUV 4:2:2 byte ordering 16-unsigned = 'YUY2'*/    kYUVUPixelFormat            = FOUR_CHAR_CODE('y','u','v','u'),       /* YUV 4:2:2 byte ordering 16-signed*/    kYVU9PixelFormat            = FOUR_CHAR_CODE('Y','V','U','9'),       /* YVU9 Planar    9*/    kYUV411PixelFormat          = FOUR_CHAR_CODE('Y','4','1','1'),       /* YUV 4:1:1 Interleaved  16*/    kYVYU422PixelFormat         = FOUR_CHAR_CODE('Y','V','Y','U'),       /* YVYU 4:2:2 byte ordering   16*/    kUYVY422PixelFormat         = FOUR_CHAR_CODE('U','Y','V','Y'),       /* UYVY 4:2:2 byte ordering   16*/    kYUV211PixelFormat          = FOUR_CHAR_CODE('Y','2','1','1'),       /* YUV 2:1:1 Packed   8*/    k2vuyPixelFormat            = FOUR_CHAR_CODE('2','v','u','y')        /* UYVY 4:2:2 byte ordering   16*/};struct __attribute__((__packed__)) PixMapExtension {    int32_t                         extSize;                    /*size of struct, duh!*/    uint32_t                        pmBits;                     /*pixmap attributes bitfield*/    void *                          pmGD;                       /*this is a GDHandle*/    int32_t                         pmSeed;    Fixed                           gammaLevel;                 /*pixmap gammalevel*/    Fixed                           requestedGammaLevel;    uint32_t                        reserved2;    int32_t                         longRowBytes;               /*used when rowBytes > 16382*/    uint32_t                        signature;    Handle                          baseAddrHandle;};typedef struct PixMapExtension          PixMapExtension;typedef PixMapExtension *               PixMapExtPtr;typedef PixMapExtPtr *                  PixMapExtHandle;struct __attribute__((__packed__)) PixMap {    Ptr                             baseAddr;                   /*pointer to pixels*/    short                           rowBytes;                   /*offset to next line*/    Rect                            bounds;                     /*encloses bitmap*/    short                           pmVersion;                  /*pixMap version number*/    short                           packType;                   /*defines packing format*/    int32_t                         packSize;                   /*length of pixel data*/    Fixed                           hRes;                       /*horiz. resolution (ppi)*/    Fixed                           vRes;                       /*vert. resolution (ppi)*/    short                           pixelType;                  /*defines pixel type*/    short                           pixelSize;                  /*# bits in pixel*/    short                           cmpCount;                   /*# components in pixel*/    short                           cmpSize;                    /*# bits per component*/    OSType                          pixelFormat;                /*fourCharCode representation*/    CTabHandle                      pmTable;                    /*color map for this pixMap*/    PixMapExtHandle                 pmExt;                      /*Handle to pixMap extension*/};typedef struct PixMap                   PixMap;typedef PixMap *                        PixMapPtr;typedef PixMapPtr *                     PixMapHandle;struct __attribute__((__packed__)) BitMap {    Ptr                             baseAddr;    short                           rowBytes;    Rect                            bounds;};typedef struct BitMap                   BitMap;typedef BitMap *                        BitMapPtr;typedef BitMapPtr *                     BitMapHandle;typedef struct OpaqueRgnHandle*         RgnHandle;struct Pattern {    UInt8                           pat[8];};typedef struct Pattern                  Pattern;typedef unsigned char                   Style;typedef Style                           StyleField;struct __attribute__((__packed__)) Point {    short                           v;    short                           h;};typedef struct Point                    Point;struct __attribute__((__packed__)) GrafPort {    short                           device;    BitMap                          portBits;    Rect                            portRect;    RgnHandle                       visRgn;    RgnHandle                       clipRgn;    Pattern                         bkPat;    Pattern                         fillPat;    Point                           pnLoc;    Point                           pnSize;    short                           pnMode;    Pattern                         pnPat;    short                           pnVis;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -