mac-rom/Interfaces/RIncludes/ImageCodec.r
Elliot Nunn 4325cdcc78 Bring in CubeE sources
Resource forks are included only for .rsrc files. These are DeRezzed into their data fork. 'ckid' resources, from the Projector VCS, are not included.

The Tools directory, containing mostly junk, is also excluded.
2017-12-26 09:52:23 +08:00

104 lines
4.2 KiB
R

/************************************************************
Created: Friday, September 27, 1991 10:04:39 AM
ImageCodec.r
Rez Interface to the Macintosh Libraries
Copyright Apple Computer, Inc. 1991
All rights reserved
************************************************************/
/*
type 'thng' {
hex longint type;
hex longint subType;
hex longint manufacturere;
hex longint flags;
hex longint flagsMask;
hex longint thingResType;
int thingResID;
hex longint thingNameResType;
int thingNameResID;
hex longint thingInfoResType;
int thingInfoResID;
hex longint thingIconResType;
int thingIconResID;
};
*/
#define codecInfoDoes1 1 /* codec can work with 1-bit pixels */
#define codecInfoDoes2 2 /* codec can work with 2-bit pixels */
#define codecInfoDoes4 4 /* codec can work with 4-bit pixels */
#define codecInfoDoes8 8 /* codec can work with 8-bit pixels */
#define codecInfoDoes16 0x10 /* codec can work with 16-bit pixels */
#define codecInfoDoes32 0x20 /* codec can work with 32-bit pixels */
#define codecInfoDoesDither 0x40 /* codec can do ditherMode */
#define codecInfoDoesStretch 0x80 /* codec can stretch to arbitrary sizes */
#define codecInfoDoesShrink 0x100 /* codec can shrink to arbitrary sizes */
#define codecInfoDoesMask 0x200 /* codec can mask to clipping regions */
#define codecInfoDoesTemporal 0x400 /* codec can handle temporal redundancy */
#define codecInfoDoesDouble 0x800 /* codec can stretch to double size exactly */
#define codecInfoDoesQuad 0x1000 /* codec can stretch to quadruple size exactly */
#define codecInfoDoesHalf 0x2000 /* codec can shrink to half size */
#define codecInfoDoesQuarter 0x4000 /* codec can shrink to quarter size */
#define codecInfoDoesRotate 0x8000 /* codec can rotate on decompress */
#define codecInfoDoesHorizFlip 0x10000 /* codec can flip horizontally on decompress */
#define codecInfoDoesVertFlip 0x20000 /* codec can flip vertically on decompress */
#define codecInfoDoesSkew 0x40000 /* codec can skew on decompress */
#define codecInfoDoesBlend 0x80000 /* codec can blend on decompress */
#define codecInfoDoesWarp 0x100000 /* codec can warp arbitrarily on decompress */
#define codecInfoDoesRecompress 0x200000 /* codec can recompress image without accumulating errors */
#define codecInfoDoesSpool 0x400000 /* codec can spool image data */
#define codecInfoDoesRateConstrain 0x800000 /* codec can data rate constrain */
#define codecInfoDepth1 1 /* compressed data at 1 bpp depth available */
#define codecInfoDepth2 2 /* compressed data at 2 bpp depth available */
#define codecInfoDepth4 4 /* compressed data at 4 bpp depth available */
#define codecInfoDepth8 8 /* compressed data at 8 bpp depth available */
#define codecInfoDepth16 0x10 /* compressed data at 16 bpp depth available */
#define codecInfoDepth32 0x20 /* compressed data at 32 bpp depth available */
#define codecInfoDepth24 0x40 /* compressed data at 24 bpp depth available */
#define codecInfoDepth33 0x80 /* compressed data at 1 bpp monochrome depth available */
#define codecInfoDepth34 0x100 /* compressed data at 2 bpp grayscale depth available */
#define codecInfoDepth36 0x200 /* compressed data at 4 bpp grayscale depth available */
#define codecInfoDepth40 0x400 /* compressed data at 8 bpp grayscale depth available */
#define codecInfoStoresClut 0x800 /* compressed data can have custom cluts */
#define codecInfoDoesLossless 0x1000 /* compressed data can be stored in lossless format */
#define codecInfoSequenceSensitive 0x2000 /* compressed data is sensitive to out of sequence decoding */
type 'cdci' {
pstring[31];
hex integer version;
hex integer revlevel;
hex longint vendor;
hex longint decompressFlags;
hex longint compressFlags;
hex longint formatFlags;
byte compressionAccuracy;
byte decompressionAccuracy;
integer compressionSpeed;
integer decompressionSpeed;
byte compressionLevel;
byte resvd;
integer minimumHeight;
integer minimumWidth;
integer decompressPipelineLatency;
integer compressPipelineLatency;
longint privateData;
};
#define compressorComponentType 'imco'
#define decompressorComponentType 'imdc'