xine-lib: xine-lib-1.2.12/src/libw32dll/qtx/qtxsdk/components.h Source File

xine-lib 1.2.12

components.h
Go to the documentation of this file.
1// Basic types:
2
3 typedef char * Ptr;
4 typedef Ptr * Handle;
5 typedef long Size;
6 typedef unsigned char Boolean;
7 typedef unsigned char Str31[32];
8 typedef long Fixed;
9
10 typedef long OSErr;
11 typedef int OSType;
12
13 typedef long ComponentResult;
14 typedef unsigned char UInt8;
15 typedef signed char SInt8;
16 typedef unsigned short UInt16;
17 typedef signed short SInt16;
18 typedef unsigned long UInt32;
19 typedef signed long SInt32;
20
21#define FOUR_CHAR_CODE(a,b,c,d) (((a)<<24)|((b)<<16)|((c)<<8)|(d))
22
23// codec private shit:
24 typedef void *GlobalsPtr;
25 typedef void **Globals;
26
27//==================== COMPONENTS ===========================
28
29struct __attribute__((__packed__)) ComponentParameters {
30 UInt8 flags; /* call modifiers: sync/async, deferred, immed, etc */
31 UInt8 paramSize; /* size in bytes of actual parameters passed to this call */
32 short what; /* routine selector, negative for Component management calls */
33 long params[1]; /* actual parameters for the indicated routine */
34};
35 typedef struct ComponentParameters ComponentParameters;
36
37
38struct __attribute__((__packed__)) ComponentDescription {
39 OSType componentType; /* A unique 4-byte code indentifying the command set */
40 OSType componentSubType; /* Particular flavor of this instance */
41 OSType componentManufacturer; /* Vendor indentification */
42 unsigned long componentFlags; /* 8 each for Component,Type,SubType,Manuf/revision */
43 unsigned long componentFlagsMask; /* Mask for specifying which flags to consider in search, zero during registration */
44};
45 typedef struct ComponentDescription ComponentDescription;
46
47
48struct __attribute__((__packed__)) ResourceSpec {
49 OSType resType; /* 4-byte code */
50 short resID; /* */
51};
52 typedef struct ResourceSpec ResourceSpec;
53
54
55struct __attribute__((__packed__)) ComponentResource {
56 ComponentDescription cd; /* Registration parameters */
57 ResourceSpec component; /* resource where Component code is found */
58 ResourceSpec componentName; /* name string resource */
59 ResourceSpec componentInfo; /* info string resource */
60 ResourceSpec componentIcon; /* icon resource */
61};
62 typedef struct ComponentResource ComponentResource;
63 typedef ComponentResource * ComponentResourcePtr;
64 typedef ComponentResourcePtr * ComponentResourceHandle;
65
66
67struct __attribute__((__packed__)) ComponentRecord {
68 long data[1];
69};
70 typedef struct ComponentRecord ComponentRecord;
71 typedef ComponentRecord * Component;
72
73
74struct __attribute__((__packed__)) ComponentInstanceRecord {
75 long data[1];
76};
77 typedef struct ComponentInstanceRecord ComponentInstanceRecord;
78
79 typedef ComponentInstanceRecord * ComponentInstance;
80
81// ========================= QUICKDRAW =========================
82
83struct __attribute__((__packed__)) Rect {
84 short top;
85 short left;
86 short bottom;
87 short right;
88};
89 typedef struct Rect Rect;
90 typedef Rect * RectPtr;
91
92struct __attribute__((__packed__)) RGBColor {
93 unsigned short red; /*magnitude of red component*/
94 unsigned short green; /*magnitude of green component*/
95 unsigned short blue; /*magnitude of blue component*/
96};
97 typedef struct RGBColor RGBColor;
98 typedef RGBColor * RGBColorPtr;
99 typedef RGBColorPtr * RGBColorHdl;
100
101struct __attribute__((__packed__)) ColorSpec {
102 short value; /*index or other value*/
103 RGBColor rgb; /*true color*/
104};
105 typedef struct ColorSpec ColorSpec;
106 typedef ColorSpec * ColorSpecPtr;
107 typedef ColorSpec CSpecArray[1];
108
109struct __attribute__((__packed__)) ColorTable {
110 long ctSeed; /*unique identifier for table*/
111 short ctFlags; /*high bit: 0 = PixMap; 1 = device*/
112 short ctSize; /*number of entries in CTTable*/
113 CSpecArray ctTable; /*array [0..0] of ColorSpec*/
114};
115 typedef struct ColorTable ColorTable;
116 typedef ColorTable * CTabPtr;
117 typedef CTabPtr * CTabHandle;
118
119struct __attribute__((__packed__)) MatrixRecord {
120 Fixed matrix[3][3];
121};
122 typedef struct MatrixRecord MatrixRecord;
123 typedef MatrixRecord * MatrixRecordPtr;
124
125 typedef long ImageSequence;
126 typedef OSType CodecType;
127 typedef unsigned short CodecFlags;
128 typedef unsigned long CodecQ;
129
130struct __attribute__((__packed__)) ImageDescription {
131 long idSize; /* total size of ImageDescription including extra data ( CLUTs and other per sequence data ) */
132 CodecType cType; /* what kind of codec compressed this data */
133 long resvd1; /* reserved for Apple use */
134 short resvd2; /* reserved for Apple use */
135 short dataRefIndex; /* set to zero */
136 short version; /* which version is this data */
137 short revisionLevel; /* what version of that codec did this */
138 long vendor; /* whose codec compressed this data */
139 CodecQ temporalQuality; /* what was the temporal quality factor */
140 CodecQ spatialQuality; /* what was the spatial quality factor */
141 short width; /* how many pixels wide is this data */
142 short height; /* how many pixels high is this data */
143 Fixed hRes; /* horizontal resolution */
144 Fixed vRes; /* vertical resolution */
145 long dataSize; /* if known, the size of data for this image descriptor */
146 short frameCount; /* number of frames this description applies to */
147 Str31 name; /* name of codec ( in case not installed ) */
148 short depth; /* what depth is this data (1-32) or ( 33-40 grayscale ) */
149 short clutID; /* clut id or if 0 clut follows or -1 if no clut */
150};
151 typedef struct ImageDescription ImageDescription;
152 typedef ImageDescription * ImageDescriptionPtr;
153 typedef ImageDescriptionPtr * ImageDescriptionHandle;
154
155/* values for PixMap.pixelFormat*/
156enum {
157 k16LE555PixelFormat = FOUR_CHAR_CODE('L','5','5','5'), /* 16 bit LE rgb 555 (PC)*/
158 k16LE5551PixelFormat = FOUR_CHAR_CODE('5','5','5','1'), /* 16 bit LE rgb 5551*/
159 k16BE565PixelFormat = FOUR_CHAR_CODE('B','5','6','5'), /* 16 bit BE rgb 565*/
160 k16LE565PixelFormat = FOUR_CHAR_CODE('L','5','6','5'), /* 16 bit LE rgb 565*/
161 k24BGRPixelFormat = FOUR_CHAR_CODE('2','4','B','G'), /* 24 bit bgr */
162 k32BGRAPixelFormat = FOUR_CHAR_CODE('B','G','R','A'), /* 32 bit bgra (Matrox)*/
163 k32ABGRPixelFormat = FOUR_CHAR_CODE('A','B','G','R'), /* 32 bit abgr */
164 k32RGBAPixelFormat = FOUR_CHAR_CODE('R','G','B','A'), /* 32 bit rgba */
165 kYUVSPixelFormat = FOUR_CHAR_CODE('y','u','v','s'), /* YUV 4:2:2 byte ordering 16-unsigned = 'YUY2'*/
166 kYUVUPixelFormat = FOUR_CHAR_CODE('y','u','v','u'), /* YUV 4:2:2 byte ordering 16-signed*/
167 kYVU9PixelFormat = FOUR_CHAR_CODE('Y','V','U','9'), /* YVU9 Planar 9*/
168 kYUV411PixelFormat = FOUR_CHAR_CODE('Y','4','1','1'), /* YUV 4:1:1 Interleaved 16*/
169 kYVYU422PixelFormat = FOUR_CHAR_CODE('Y','V','Y','U'), /* YVYU 4:2:2 byte ordering 16*/
170 kUYVY422PixelFormat = FOUR_CHAR_CODE('U','Y','V','Y'), /* UYVY 4:2:2 byte ordering 16*/
171 kYUV211PixelFormat = FOUR_CHAR_CODE('Y','2','1','1'), /* YUV 2:1:1 Packed 8*/
172 k2vuyPixelFormat = FOUR_CHAR_CODE('2','v','u','y') /* UYVY 4:2:2 byte ordering 16*/
173};
174
175struct __attribute__((__packed__)) PixMapExtension {
176 long extSize; /*size of struct, duh!*/
177 unsigned long pmBits; /*pixmap attributes bitfield*/
178 void * pmGD; /*this is a GDHandle*/
179 long pmSeed;
180 Fixed gammaLevel; /*pixmap gammalevel*/
181 Fixed requestedGammaLevel;
182 unsigned long reserved2;
183 long longRowBytes; /*used when rowBytes > 16382*/
184 unsigned long signature;
185 Handle baseAddrHandle;
186};
187 typedef struct PixMapExtension PixMapExtension;
188
189 typedef PixMapExtension * PixMapExtPtr;
190 typedef PixMapExtPtr * PixMapExtHandle;
191
192
193struct __attribute__((__packed__)) PixMap {
194 Ptr baseAddr; /*pointer to pixels*/
195 short rowBytes; /*offset to next line*/
196 Rect bounds; /*encloses bitmap*/
197 short pmVersion; /*pixMap version number*/
198 short packType; /*defines packing format*/
199 long packSize; /*length of pixel data*/
200 Fixed hRes; /*horiz. resolution (ppi)*/
201 Fixed vRes; /*vert. resolution (ppi)*/
202 short pixelType; /*defines pixel type*/
203 short pixelSize; /*# bits in pixel*/
204 short cmpCount; /*# components in pixel*/
205 short cmpSize; /*# bits per component*/
206 OSType pixelFormat; /*fourCharCode representation*/
207 CTabHandle pmTable; /*color map for this pixMap*/
208 PixMapExtHandle pmExt; /*Handle to pixMap extension*/
209};
210 typedef struct PixMap PixMap;
211 typedef PixMap * PixMapPtr;
212 typedef PixMapPtr * PixMapHandle;
213
214
215struct __attribute__((__packed__)) BitMap {
216 Ptr baseAddr;
217 short rowBytes;
218 Rect bounds;
219};
220 typedef struct BitMap BitMap;
221 typedef BitMap * BitMapPtr;
222 typedef BitMapPtr * BitMapHandle;
223 typedef struct OpaqueRgnHandle* RgnHandle;
224
225 struct Pattern {
226 UInt8 pat[8];
227};
228 typedef struct Pattern Pattern;
229 typedef unsigned char Style;
230 typedef Style StyleField;
231struct __attribute__((__packed__)) Point {
232 short v;
233 short h;
234};
235 typedef struct Point Point;
236struct __attribute__((__packed__)) GrafPort {
237 short device;
238 BitMap portBits;
239 Rect portRect;
240 RgnHandle visRgn;
241 RgnHandle clipRgn;
242 Pattern bkPat;
243 Pattern fillPat;
244 Point pnLoc;
245 Point pnSize;
246 short pnMode;
247 Pattern pnPat;
248 short pnVis;
249 short txFont;
250 StyleField txFace; /*StyleField occupies 16-bits, but only first 8-bits are used*/
251 UInt8 txFlags; /* QuickTime uses second 8 bits of StyleField for txFlags */
252 short txMode;
253 short txSize;
254 Fixed spExtra;
255 long fgColor;
256 long bkColor;
257 short colrBit;
258 short patStretch;
259 Handle picSave;
260 Handle rgnSave;
261 Handle polySave;
262 /*QDProcsPtr*/void* grafProcs;
263};
264 typedef struct GrafPort GrafPort;
265 typedef GrafPort *GWorldPtr;
266 typedef GWorldPtr *GWorldHandle;
267#define anyCodec ((CodecComponent)0)
268enum {
269 /* transfer modes */
270 srcCopy = 0, /*the 16 transfer modes*/
271 srcOr = 1,
272 srcXor = 2,
273 srcBic = 3,
274 notSrcCopy = 4,
275 notSrcOr = 5,
276 notSrcXor = 6,
277 notSrcBic = 7,
278 patCopy = 8,
279 patOr = 9,
280 patXor = 10,
281 patBic = 11,
282 notPatCopy = 12,
283 notPatOr = 13,
284 notPatXor = 14,
285 notPatBic = 15, /* Special Text Transfer Mode */
286 grayishTextOr = 49,
287 hilitetransfermode = 50,
288 hilite = 50, /* Arithmetic transfer modes */
289 blend = 32,
290 addPin = 33,
291 addOver = 34,
292 subPin = 35,
293 addMax = 37,
294 adMax = 37,
295 subOver = 38,
296 adMin = 39,
297 ditherCopy = 64, /* Transparent mode constant */
298 transparent = 36
299};
300
301 typedef unsigned long GWorldFlags;
302
303
304
305// ============================== CODECS ===========================
306
307 typedef Component CompressorComponent;
308 typedef Component DecompressorComponent;
309 typedef Component CodecComponent;
310
311enum {
312 codecLosslessQuality = 0x00000400,
313 codecMaxQuality = 0x000003FF,
314 codecMinQuality = 0x00000000,
315 codecLowQuality = 0x00000100,
316 codecNormalQuality = 0x00000200,
317 codecHighQuality = 0x00000300
318};
319
320
321
322// callbacks:
323 typedef void* ImageCodecDrawBandCompleteUPP;
324 typedef long long ICMProgressProcRecord;
325 typedef long long ICMCompletionProcRecord;
326 typedef long long ICMDataProcRecord;
327 typedef void* ICMFrameTimePtr;
328 typedef void* CDSequenceDataSourcePtr;
329 typedef void* ICMFrameTimeInfoPtr;
330
331// graphics port
332 typedef struct OpaqueGrafPtr* GrafPtr;
333 typedef GrafPtr CGrafPtr;
334
335
336/* codec capabilities flags */
337enum {
338 codecCanScale = 1L << 0,
339 // 1
340 codecCanMask = 1L << 1,
341 // 2
342 codecCanMatte = 1L << 2,
343 // 4
344 codecCanTransform = 1L << 3,
345 // 8
346 codecCanTransferMode = 1L << 4,
347 // 10
348 codecCanCopyPrev = 1L << 5,
349 // 20
350 codecCanSpool = 1L << 6,
351 // 40
352 codecCanClipVertical = 1L << 7,
353 // 80
354 codecCanClipRectangular = 1L << 8,
355 // 100
356 codecCanRemapColor = 1L << 9,
357 // 200
358 codecCanFastDither = 1L << 10,
359 // 400
360 codecCanSrcExtract = 1L << 11,
361 // 800
362 codecCanCopyPrevComp = 1L << 12,
363 // 1000
364 codecCanAsync = 1L << 13,
365 // 2000
366 codecCanMakeMask = 1L << 14,
367 // 4000
368 codecCanShift = 1L << 15,
369 // 8000
370 codecCanAsyncWhen = 1L << 16,
371 // 10000
372 codecCanShieldCursor = 1L << 17,
373 // 20000
374 codecCanManagePrevBuffer = 1L << 18,
375 // 40000
376 codecHasVolatileBuffer = 1L << 19, // 80000 /* codec requires redraw after window movement */
377 codecWantsRegionMask = 1L << 20,
378 // 100000
379 codecImageBufferIsOnScreen = 1L << 21, // 200000 /* old def of codec using overlay surface, = ( codecIsDirectToScreenOnly | codecUsesOverlaySurface | codecImageBufferIsOverlaySurface | codecSrcMustBeImageBuffer ) */
380 codecWantsDestinationPixels = 1L << 22,
381 // 400000
382 codecWantsSpecialScaling = 1L << 23,
383 // 800000
384 codecHandlesInputs = 1L << 24,
385 // 1000000
386 codecCanDoIndirectSurface = 1L << 25, /* codec can handle indirect surface (GDI) */
387 codecIsSequenceSensitive = 1L << 26,
388 codecRequiresOffscreen = 1L << 27,
389 codecRequiresMaskBits = 1L << 28,
390 codecCanRemapResolution = 1L << 29,
391 codecIsDirectToScreenOnly = 1L << 30, /* codec can only decompress data to the screen */
392 codecCanLockSurface = 1L << 31 /* codec can lock destination surface, icm doesn't lock for you */
393};
394
395/* codec capabilities flags2 */
396enum {
397 codecUsesOverlaySurface = 1L << 0, /* codec uses overlay surface */
398 codecImageBufferIsOverlaySurface = 1L << 1, /* codec image buffer is overlay surface, the bits in the buffer are on the screen */
399 codecSrcMustBeImageBuffer = 1L << 2, /* codec can only source data from an image buffer */
400 codecImageBufferIsInAGPMemory = 1L << 4, /* codec image buffer is in AGP space, byte writes are OK */
401 codecImageBufferIsInPCIMemory = 1L << 5 /* codec image buffer is across a PCI bus; byte writes are bad */
402};
403
404/* codec condition flags */
405// FFD = 13 = 8+4+1
406enum {
407 codecConditionFirstBand = 1L << 0,
408 // 1
409 codecConditionLastBand = 1L << 1,
410 // 2
411 codecConditionFirstFrame = 1L << 2,
412 // 4
413 codecConditionNewDepth = 1L << 3,
414 // 8
415 codecConditionNewTransform = 1L << 4,
416 // 10
417 codecConditionNewSrcRect = 1L << 5,
418 // 20
419 codecConditionNewMask = 1L << 6,
420 // 40
421 codecConditionNewMatte = 1L << 7,
422 // 80
423 codecConditionNewTransferMode = 1L << 8,
424 // 100
425 codecConditionNewClut = 1L << 9,
426 // 200
427 codecConditionNewAccuracy = 1L << 10,
428 // 400
429 codecConditionNewDestination = 1L << 11,
430 // 800
431 codecConditionFirstScreen = 1L << 12,
432 // 1000
433 codecConditionDoCursor = 1L << 13,
434 // 2000
435 codecConditionCatchUpDiff = 1L << 14,
436 // 4000
437 codecConditionMaskMayBeChanged = 1L << 15,
438 // 8000
439 codecConditionToBuffer = 1L << 16,
440 // 10000
441 codecConditionCodecChangedMask = 1L << 31
442 // 20000
443};
444
445
446
447struct __attribute__((__packed__)) CodecCapabilities {
448 long flags;
449 short wantedPixelSize;
450 short extendWidth;
451 short extendHeight;
452 short bandMin;
453 short bandInc;
454 short pad;
455 unsigned long time;
456 long flags2; /* field new in QuickTime 4.0 */
457};
458 typedef struct CodecCapabilities CodecCapabilities;
459
460struct __attribute__((__packed__)) CodecDecompressParams {
461 ImageSequence sequenceID; /* predecompress,banddecompress */
462 ImageDescriptionHandle imageDescription; /* predecompress,banddecompress */
463 Ptr data;
464 long bufferSize;
465
466 long frameNumber;
467 long startLine;
468 long stopLine;
469 long conditionFlags;
470
471 CodecFlags callerFlags;
472 // short
473 CodecCapabilities * capabilities; /* predecompress,banddecompress */
474 ICMProgressProcRecord progressProcRecord;
475 ICMCompletionProcRecord completionProcRecord;
476
477 ICMDataProcRecord dataProcRecord;
478 CGrafPtr port; /* predecompress,banddecompress */
479 PixMap dstPixMap; /* predecompress,banddecompress */
480 BitMapPtr maskBits;
481 PixMapPtr mattePixMap;
482 Rect srcRect; /* predecompress,banddecompress */
483 MatrixRecord * matrix; /* predecompress,banddecompress */
484 CodecQ accuracy; /* predecompress,banddecompress */
485 short transferMode; /* predecompress,banddecompress */
486 ICMFrameTimePtr frameTime; /* banddecompress */
487 long reserved[1];
488
489 /* The following fields only exist for QuickTime 2.0 and greater */
490 SInt8 matrixFlags; /* high bit set if 2x resize */
491 SInt8 matrixType;
492 Rect dstRect; /* only valid for simple transforms */
493
494 /* The following fields only exist for QuickTime 2.1 and greater */
495 UInt16 majorSourceChangeSeed;
496 UInt16 minorSourceChangeSeed;
497 CDSequenceDataSourcePtr sourceData;
498
499 RgnHandle maskRegion;
500
501 /* The following fields only exist for QuickTime 2.5 and greater */
502 OSType ** wantedDestinationPixelTypes; /* Handle to 0-terminated list of OSTypes */
503
504 long screenFloodMethod;
505 long screenFloodValue;
506 short preferredOffscreenPixelSize;
507
508 /* The following fields only exist for QuickTime 3.0 and greater */
509 ICMFrameTimeInfoPtr syncFrameTime; /* banddecompress */
510 Boolean needUpdateOnTimeChange; /* banddecompress */
511 Boolean enableBlackLining;
512 Boolean needUpdateOnSourceChange; /* band decompress */
513 Boolean pad;
514
515 long unused;
516
517 CGrafPtr finalDestinationPort;
518
519 long requestedBufferWidth; /* must set codecWantsSpecialScaling to indicate this field is valid*/
520 long requestedBufferHeight; /* must set codecWantsSpecialScaling to indicate this field is valid*/
521
522 /* The following fields only exist for QuickTime 4.0 and greater */
523 Rect displayableAreaOfRequestedBuffer; /* set in predecompress*/
524 Boolean requestedSingleField;
525 Boolean needUpdateOnNextIdle;
526 Boolean pad2[2];
527 Fixed bufferGammaLevel;
528
529 /* The following fields only exist for QuickTime 5.0 and greater */
530 UInt32 taskWeight; /* preferred weight for MP tasks implementing this operation*/
531 OSType taskName; /* preferred name (type) for MP tasks implementing this operation*/
532};
533 typedef struct CodecDecompressParams CodecDecompressParams;
534
535
536
537struct __attribute__((__packed__)) ImageSubCodecDecompressCapabilities {
538 long recordSize; /* sizeof(ImageSubCodecDecompressCapabilities)*/
539 long decompressRecordSize; /* size of your codec's decompress record*/
540 Boolean canAsync; /* default true*/
541 UInt8 pad0;
542
543 /* The following fields only exist for QuickTime 4.0 and greater */
544 UInt16 suggestedQueueSize;
545 Boolean canProvideTrigger;
546
547 /* The following fields only exist for QuickTime 5.0 and greater */
548 Boolean subCodecFlushesScreen; /* only used on Mac OS X*/
549 Boolean subCodecCallsDrawBandComplete;
550 UInt8 pad2[1];
551
552 /* The following fields only exist for QuickTime 5.1 and greater */
553 Boolean isChildCodec; /* set by base codec before calling Initialize*/
554 UInt8 pad3[3];
555};
556 typedef struct ImageSubCodecDecompressCapabilities ImageSubCodecDecompressCapabilities;
557
558
559struct __attribute__((__packed__)) ImageSubCodecDecompressRecord {
560 Ptr baseAddr;
561 long rowBytes;
562 Ptr codecData;
563 ICMProgressProcRecord progressProcRecord;
564 ICMDataProcRecord dataProcRecord;
565 void * userDecompressRecord; /* pointer to codec-specific per-band data*/
566 UInt8 frameType;
567 Boolean inhibitMP; /* set this in BeginBand to tell the base decompressor not to call DrawBand from an MP task for this frame. (Only has any effect for MP-capable subcodecs. New in QuickTime 5.0.)*/
568 UInt8 pad[2];
569 long priv[2];
570
571 /* The following fields only exist for QuickTime 5.0 and greater */
572 ImageCodecDrawBandCompleteUPP drawBandCompleteUPP; /* only used if subcodec set subCodecCallsDrawBandComplete; if drawBandCompleteUPP is non-nil, codec must call it when a frame is finished, but may return from DrawBand before the frame is finished. */
573 void * drawBandCompleteRefCon; /* Note: do not call drawBandCompleteUPP directly from a hardware interrupt; instead, use DTInstall to run a function at deferred task time, and call drawBandCompleteUPP from that. */
574};
575 typedef struct ImageSubCodecDecompressRecord ImageSubCodecDecompressRecord;
576
577
578/* These are the bits that are set in the Component flags, and also in the codecInfo struct. */
579enum {
580 codecInfoDoes1 = (1L << 0), /* codec can work with 1-bit pixels */
581 codecInfoDoes2 = (1L << 1), /* codec can work with 2-bit pixels */
582 codecInfoDoes4 = (1L << 2), /* codec can work with 4-bit pixels */
583 codecInfoDoes8 = (1L << 3), /* codec can work with 8-bit pixels */
584 codecInfoDoes16 = (1L << 4), /* codec can work with 16-bit pixels */
585 codecInfoDoes32 = (1L << 5), /* codec can work with 32-bit pixels */
586 codecInfoDoesDither = (1L << 6), /* codec can do ditherMode */
587 codecInfoDoesStretch = (1L << 7), /* codec can stretch to arbitrary sizes */
588 codecInfoDoesShrink = (1L << 8), /* codec can shrink to arbitrary sizes */
589 codecInfoDoesMask = (1L << 9), /* codec can mask to clipping regions */
590 codecInfoDoesTemporal = (1L << 10), /* codec can handle temporal redundancy */
591 codecInfoDoesDouble = (1L << 11), /* codec can stretch to double size exactly */
592 codecInfoDoesQuad = (1L << 12), /* codec can stretch to quadruple size exactly */
593 codecInfoDoesHalf = (1L << 13), /* codec can shrink to half size */
594 codecInfoDoesQuarter = (1L << 14), /* codec can shrink to quarter size */
595 codecInfoDoesRotate = (1L << 15), /* codec can rotate on decompress */
596 codecInfoDoesHorizFlip = (1L << 16), /* codec can flip horizontally on decompress */
597 codecInfoDoesVertFlip = (1L << 17), /* codec can flip vertically on decompress */
598 codecInfoHasEffectParameterList = (1L << 18), /* codec implements get effects parameter list call, once was codecInfoDoesSkew */
599 codecInfoDoesBlend = (1L << 19), /* codec can blend on decompress */
600 codecInfoDoesWarp = (1L << 20), /* codec can warp arbitrarily on decompress */
601 codecInfoDoesRecompress = (1L << 21), /* codec can recompress image without accumulating errors */
602 codecInfoDoesSpool = (1L << 22), /* codec can spool image data */
603 codecInfoDoesRateConstrain = (1L << 23) /* codec can data rate constrain */
604};
605
606
607enum {
608 codecInfoDepth1 = (1L << 0), /* compressed data at 1 bpp depth available */
609 codecInfoDepth2 = (1L << 1), /* compressed data at 2 bpp depth available */
610 codecInfoDepth4 = (1L << 2), /* compressed data at 4 bpp depth available */
611 codecInfoDepth8 = (1L << 3), /* compressed data at 8 bpp depth available */
612 codecInfoDepth16 = (1L << 4), /* compressed data at 16 bpp depth available */
613 codecInfoDepth32 = (1L << 5), /* compressed data at 32 bpp depth available */
614 codecInfoDepth24 = (1L << 6), /* compressed data at 24 bpp depth available */
615 codecInfoDepth33 = (1L << 7), /* compressed data at 1 bpp monochrome depth available */
616 codecInfoDepth34 = (1L << 8), /* compressed data at 2 bpp grayscale depth available */
617 codecInfoDepth36 = (1L << 9), /* compressed data at 4 bpp grayscale depth available */
618 codecInfoDepth40 = (1L << 10), /* compressed data at 8 bpp grayscale depth available */
619 codecInfoStoresClut = (1L << 11), /* compressed data can have custom cluts */
620 codecInfoDoesLossless = (1L << 12), /* compressed data can be stored in lossless format */
621 codecInfoSequenceSensitive = (1L << 13) /* compressed data is sensitive to out of sequence decoding */
622};
623
624struct __attribute__((__packed__)) CodecInfo {
625 Str31 typeName; /* name of the codec type i.e.: 'Apple Image Compression' */
626 short version; /* version of the codec data that this codec knows about */
627 short revisionLevel; /* revision level of this codec i.e: 0x00010001 (1.0.1) */
628 long vendor; /* Maker of this codec i.e: 'appl' */
629 long decompressFlags; /* codecInfo flags for decompression capabilities */
630 long compressFlags; /* codecInfo flags for compression capabilities */
631 long formatFlags; /* codecInfo flags for compression format details */
632 UInt8 compressionAccuracy; /* measure (1-255) of accuracy of this codec for compress (0 if unknown) */
633 UInt8 decompressionAccuracy; /* measure (1-255) of accuracy of this codec for decompress (0 if unknown) */
634 unsigned short compressionSpeed; /* ( millisecs for compressing 320x240 on base mac II) (0 if unknown) */
635 unsigned short decompressionSpeed; /* ( millisecs for decompressing 320x240 on mac II)(0 if unknown) */
636 UInt8 compressionLevel; /* measure (1-255) of compression level of this codec (0 if unknown) */
637 UInt8 resvd; /* pad */
638 short minimumHeight; /* minimum height of image (block size) */
639 short minimumWidth; /* minimum width of image (block size) */
640 short decompressPipelineLatency; /* in milliseconds ( for asynchronous codecs ) */
641 short compressPipelineLatency; /* in milliseconds ( for asynchronous codecs ) */
642 long privateData;
643};
644 typedef struct CodecInfo CodecInfo;
645
646 static inline void dump_ImageDescription(void* xxx){
647 ImageDescription* id=(ImageDescription*)xxx;
648 unsigned char* x;
649 int i;
650
651 for(i=0;i<id->idSize;i++){
652 printf(" %02X",((unsigned char*)id)[i]);
653 if((i%16)==15) printf("\n");
654 }
655 printf("\n");
656
657
658 printf("=============== ImageDescription at %p ==================\n",xxx);
659 printf("idSize=0x%lX fourcc=0x%08X\n",id->idSize,id->cType);
660 printf("ver=%d rev=%d vendor=0x%08lX\n",id->version,id->revisionLevel,id->vendor);
661 printf("tempQ=%ld spatQ=%ld dim: %d x %d dpi: %ld x %ld depth: %d\n",
662 id->temporalQuality,id->spatialQuality,
663 id->width, id->height,
664 id->hRes, id->vRes,
665 id->depth);
666 printf("dataSize=%ld frameCount=%d clutID=%d\n",id->dataSize, id->frameCount, id->clutID);
667 printf("name='%.*s'\n",((char*)(&id->name))[0],((char*)(&id->name))+1);
668 x=((char*)(&id->clutID))+2;
669 if(id->idSize>(int)sizeof(ImageDescription)){
670 printf("%02X %02X %02X %02X | %02X %02X %02X %02X | %02X %02X %02X %02X | %02X %02X %02X %02X\n",
671 x[0],x[1],x[2],x[3],x[4],x[5],x[6],x[7],x[8],x[9],x[10],x[11],x[12],x[13],x[14],x[15]);
672 }
673 printf("=========================================================\n");
674}
675
676 static inline void dump_Rect(const char* title,Rect *r){
677 printf("%s: %d;%d - %d;%d\n",title,
678 (int)r->top,(int)r->left,(int)r->bottom,(int)r->right);
679}
680
681 static inline void dump_MatrixRecord(const char* title, MatrixRecord *m){
682 printf("%s: [%ld %ld %ld][%ld %ld %ld][%ld %ld %ld]\n",title,
683 m->matrix[0][0],m->matrix[0][1],m->matrix[0][2],
684 m->matrix[1][0],m->matrix[1][1],m->matrix[1][2],
685 m->matrix[2][0],m->matrix[2][1],m->matrix[2][2]);
686}
687
688 static inline void dump_PixMap(void* xxx){
689 PixMap *p=xxx;
690 printf("=============== PixMap at %p ==================\n",xxx);
691 printf("base=%p stride=%d\n",p->baseAddr, p->rowBytes);
692 dump_Rect("bounds",&p->bounds);
693 printf("pmVersion=0x%X packType=0x%X\n packSize=0x%lX\n",
694 p->pmVersion,p->packType, p->packSize);
695 printf("hRes=0x%lX vRes=0x%lX pixelType=0x%X pixelSize=0x%X\n",
696 p->hRes,p->vRes,p->pixelType,p->pixelSize);
697 printf("cmpCount=0x%X cmpSize=0x%X pixelFormat=0x%X\n",
698 p->cmpCount,p->cmpSize,p->pixelFormat);
699 printf("pmTable=%p pmExt=%p\n",p->pmTable,p->pmExt);
700 printf("=========================================================\n");
701}
702
703 static inline void dump_CodecCapabilities(void* xxx){
704 CodecCapabilities* cc=xxx;
705 if(!xxx) return;
706 printf("=============== CodecCapabilities at %p =================\n",xxx);
707 printf("flags=0x%lX flags2=0x%lX\n",cc->flags,cc->flags2);
708 printf("wantedPixelSize=%d extendWidth=%d extendHeight=%d band=%d+%d\n",
709 cc->wantedPixelSize,cc->extendWidth,cc->extendHeight,
710 cc->bandMin,cc->bandInc);
711 printf("pad=0x%X time=0x%lX\n",cc->pad,cc->time);
712 printf("=========================================================\n");
713}
714
715 static inline void dump_CodecDecompressParams(void* xxx){
716 CodecDecompressParams* cd=xxx;
717 ImageDescription **idh;
718 int i;
719 if(!xxx) return;
720 printf("=============== CodecDecompressParams at %p ==================\n",xxx);
721 printf("sequenceID=%ld\n",cd->sequenceID);
722 idh=cd->imageDescription;
723 if(idh && idh[0]) dump_ImageDescription(idh[0]);
724
725 for(i=0;i<(int)sizeof(CodecDecompressParams);i++){
726 printf(" %02X",((unsigned char*)cd)[i]);
727 if((i%16)==15) printf("\n");
728 }
729 printf("\n");
730
731 printf("data=%p size=%ld\n",cd->data,cd->bufferSize);
732 printf("frameno=%ld lines: %ld .. %ld condflags=0x%lX callerflags=0x%X\n",
733 cd->frameNumber, cd->startLine, cd->stopLine, cd->conditionFlags,cd->callerFlags);
734// printf("maskBits=%p mattePixMap=%p\n",
735// cd->maskBits,cd->mattePixMap);
736 dump_PixMap(&cd->dstPixMap);
737// if(cd->mattePixMap) dump_PixMap(cd->mattePixMap);
738 if(cd->matrix) dump_MatrixRecord("matrix",cd->matrix);
739 if(cd->capabilities) dump_CodecCapabilities(cd->capabilities);
740 printf("accuracy=%d transferMode=%d matrixFlags=0x%X matrixType=%d\n",
741 (int)cd->accuracy, (int)cd->transferMode, (int)cd->matrixFlags, (int)cd->matrixType);
742 printf("srcrect: %d;%d - %d;%d\n",cd->srcRect.top,cd->srcRect.left,cd->srcRect.bottom,cd->srcRect.right);
743 printf("dstrect: %d;%d - %d;%d\n",cd->dstRect.top,cd->dstRect.left,cd->dstRect.bottom,cd->dstRect.right);
744 printf("wantedDestinationPixelTypes=%p\n",cd->wantedDestinationPixelTypes);
745 if(cd->wantedDestinationPixelTypes){
746 OSType **p=cd->wantedDestinationPixelTypes;
747 while(p[0]){
748 printf(" 0x%p %d\n",p[0],*p[0]);
749 ++p;
750 }
751 }
752 printf("screenFloodMethod=%ld value=%ld preferredOffscreenPixelSize=%d\n",
753 cd->screenFloodMethod, cd->screenFloodValue, cd->preferredOffscreenPixelSize);
754 printf("callbacks: progress=0x%08llX compl=0x%08llX data=0x%08llX ftime=%p srcdata=%p sync=%p\n",
755 cd->progressProcRecord, cd->completionProcRecord,
756 cd->dataProcRecord, cd->frameTime, cd->sourceData, cd->syncFrameTime);
757// printf("\n");
758
759 printf("=========================================================\n");
760
761
762}
763
CodecCapabilities
struct CodecCapabilities CodecCapabilities
Definition: components.h:458
CGrafPtr
GrafPtr CGrafPtr
Definition: components.h:333
dump_Rect
static void dump_Rect(const char *title, Rect *r)
Definition: components.h:676
codecConditionFirstBand
@ codecConditionFirstBand
Definition: components.h:407
codecConditionNewAccuracy
@ codecConditionNewAccuracy
Definition: components.h:427
codecConditionCatchUpDiff
@ codecConditionCatchUpDiff
Definition: components.h:435
codecConditionNewMatte
@ codecConditionNewMatte
Definition: components.h:421
codecConditionNewTransform
@ codecConditionNewTransform
Definition: components.h:415
codecConditionFirstFrame
@ codecConditionFirstFrame
Definition: components.h:411
codecConditionCodecChangedMask
@ codecConditionCodecChangedMask
Definition: components.h:441
codecConditionMaskMayBeChanged
@ codecConditionMaskMayBeChanged
Definition: components.h:437
codecConditionNewDepth
@ codecConditionNewDepth
Definition: components.h:413
codecConditionFirstScreen
@ codecConditionFirstScreen
Definition: components.h:431
codecConditionDoCursor
@ codecConditionDoCursor
Definition: components.h:433
codecConditionToBuffer
@ codecConditionToBuffer
Definition: components.h:439
codecConditionNewClut
@ codecConditionNewClut
Definition: components.h:425
codecConditionNewTransferMode
@ codecConditionNewTransferMode
Definition: components.h:423
codecConditionLastBand
@ codecConditionLastBand
Definition: components.h:409
codecConditionNewMask
@ codecConditionNewMask
Definition: components.h:419
codecConditionNewDestination
@ codecConditionNewDestination
Definition: components.h:429
codecConditionNewSrcRect
@ codecConditionNewSrcRect
Definition: components.h:417
ImageSubCodecDecompressCapabilities
struct ImageSubCodecDecompressCapabilities ImageSubCodecDecompressCapabilities
Definition: components.h:556
codecUsesOverlaySurface
@ codecUsesOverlaySurface
Definition: components.h:397
codecSrcMustBeImageBuffer
@ codecSrcMustBeImageBuffer
Definition: components.h:399
codecImageBufferIsInAGPMemory
@ codecImageBufferIsInAGPMemory
Definition: components.h:400
codecImageBufferIsInPCIMemory
@ codecImageBufferIsInPCIMemory
Definition: components.h:401
codecImageBufferIsOverlaySurface
@ codecImageBufferIsOverlaySurface
Definition: components.h:398
CodecType
OSType CodecType
Definition: components.h:126
ComponentInstance
ComponentInstanceRecord * ComponentInstance
Definition: components.h:79
BitMapHandle
BitMapPtr * BitMapHandle
Definition: components.h:222
OSType
int OSType
Definition: components.h:11
GlobalsPtr
void * GlobalsPtr
Definition: components.h:24
RGBColor
struct RGBColor RGBColor
Definition: components.h:97
Style
unsigned char Style
Definition: components.h:229
CDSequenceDataSourcePtr
void * CDSequenceDataSourcePtr
Definition: components.h:328
DecompressorComponent
Component DecompressorComponent
Definition: components.h:308
ColorSpec
struct ColorSpec ColorSpec
Definition: components.h:105
Str31
unsigned char Str31[32]
Definition: components.h:7
Fixed
long Fixed
Definition: components.h:8
Component
ComponentRecord * Component
Definition: components.h:71
StyleField
Style StyleField
Definition: components.h:230
Point
struct Point Point
Definition: components.h:235
CodecFlags
unsigned short CodecFlags
Definition: components.h:127
BitMapPtr
BitMap * BitMapPtr
Definition: components.h:221
ImageSequence
long ImageSequence
Definition: components.h:125
FOUR_CHAR_CODE
#define FOUR_CHAR_CODE(a, b, c, d)
Definition: components.h:21
PixMap
struct PixMap PixMap
Definition: components.h:210
CodecComponent
Component CodecComponent
Definition: components.h:309
Rect
struct Rect Rect
Definition: components.h:89
dump_PixMap
static void dump_PixMap(void *xxx)
Definition: components.h:688
dump_ImageDescription
static void dump_ImageDescription(void *xxx)
Definition: components.h:646
codecInfoDoesQuad
@ codecInfoDoesQuad
Definition: components.h:592
codecInfoDoesRecompress
@ codecInfoDoesRecompress
Definition: components.h:601
codecInfoDoesWarp
@ codecInfoDoesWarp
Definition: components.h:600
codecInfoDoes4
@ codecInfoDoes4
Definition: components.h:582
codecInfoDoesStretch
@ codecInfoDoesStretch
Definition: components.h:587
codecInfoDoes8
@ codecInfoDoes8
Definition: components.h:583
codecInfoDoesVertFlip
@ codecInfoDoesVertFlip
Definition: components.h:597
codecInfoDoesShrink
@ codecInfoDoesShrink
Definition: components.h:588
codecInfoDoes16
@ codecInfoDoes16
Definition: components.h:584
codecInfoDoesQuarter
@ codecInfoDoesQuarter
Definition: components.h:594
codecInfoDoes2
@ codecInfoDoes2
Definition: components.h:581
codecInfoDoesTemporal
@ codecInfoDoesTemporal
Definition: components.h:590
codecInfoDoesHorizFlip
@ codecInfoDoesHorizFlip
Definition: components.h:596
codecInfoDoes1
@ codecInfoDoes1
Definition: components.h:580
codecInfoDoesBlend
@ codecInfoDoesBlend
Definition: components.h:599
codecInfoHasEffectParameterList
@ codecInfoHasEffectParameterList
Definition: components.h:598
codecInfoDoesHalf
@ codecInfoDoesHalf
Definition: components.h:593
codecInfoDoesRateConstrain
@ codecInfoDoesRateConstrain
Definition: components.h:603
codecInfoDoesRotate
@ codecInfoDoesRotate
Definition: components.h:595
codecInfoDoesDouble
@ codecInfoDoesDouble
Definition: components.h:591
codecInfoDoesDither
@ codecInfoDoesDither
Definition: components.h:586
codecInfoDoes32
@ codecInfoDoes32
Definition: components.h:585
codecInfoDoesSpool
@ codecInfoDoesSpool
Definition: components.h:602
codecInfoDoesMask
@ codecInfoDoesMask
Definition: components.h:589
ImageCodecDrawBandCompleteUPP
void * ImageCodecDrawBandCompleteUPP
Definition: components.h:323
ImageDescriptionHandle
ImageDescriptionPtr * ImageDescriptionHandle
Definition: components.h:153
Handle
Ptr * Handle
Definition: components.h:4
PixMapHandle
PixMapPtr * PixMapHandle
Definition: components.h:212
codecInfoStoresClut
@ codecInfoStoresClut
Definition: components.h:619
codecInfoDepth40
@ codecInfoDepth40
Definition: components.h:618
codecInfoDepth4
@ codecInfoDepth4
Definition: components.h:610
codecInfoDepth33
@ codecInfoDepth33
Definition: components.h:615
codecInfoDepth24
@ codecInfoDepth24
Definition: components.h:614
codecInfoDepth32
@ codecInfoDepth32
Definition: components.h:613
codecInfoDepth8
@ codecInfoDepth8
Definition: components.h:611
codecInfoDepth36
@ codecInfoDepth36
Definition: components.h:617
codecInfoDepth34
@ codecInfoDepth34
Definition: components.h:616
codecInfoSequenceSensitive
@ codecInfoSequenceSensitive
Definition: components.h:621
codecInfoDepth1
@ codecInfoDepth1
Definition: components.h:608
codecInfoDepth16
@ codecInfoDepth16
Definition: components.h:612
codecInfoDoesLossless
@ codecInfoDoesLossless
Definition: components.h:620
codecInfoDepth2
@ codecInfoDepth2
Definition: components.h:609
GWorldPtr
GrafPort * GWorldPtr
Definition: components.h:265
ICMProgressProcRecord
long long ICMProgressProcRecord
Definition: components.h:324
Globals
void ** Globals
Definition: components.h:25
GrafPtr
struct OpaqueGrafPtr * GrafPtr
Definition: components.h:332
ImageDescriptionPtr
ImageDescription * ImageDescriptionPtr
Definition: components.h:152
dump_MatrixRecord
static void dump_MatrixRecord(const char *title, MatrixRecord *m)
Definition: components.h:681
CTabHandle
CTabPtr * CTabHandle
Definition: components.h:117
ComponentResult
long ComponentResult
Definition: components.h:13
codecLowQuality
@ codecLowQuality
Definition: components.h:315
codecNormalQuality
@ codecNormalQuality
Definition: components.h:316
codecMinQuality
@ codecMinQuality
Definition: components.h:314
codecHighQuality
@ codecHighQuality
Definition: components.h:317
codecMaxQuality
@ codecMaxQuality
Definition: components.h:313
codecLosslessQuality
@ codecLosslessQuality
Definition: components.h:312
ComponentRecord
struct ComponentRecord ComponentRecord
Definition: components.h:70
__attribute__
struct __attribute__((__packed__)) ComponentParameters
Definition: components.h:29
MatrixRecord
struct MatrixRecord MatrixRecord
Definition: components.h:122
ComponentParameters
struct ComponentParameters ComponentParameters
Definition: components.h:35
dump_CodecDecompressParams
static void dump_CodecDecompressParams(void *xxx)
Definition: components.h:715
ResourceSpec
struct ResourceSpec ResourceSpec
Definition: components.h:52
ComponentResourceHandle
ComponentResourcePtr * ComponentResourceHandle
Definition: components.h:64
CodecDecompressParams
struct CodecDecompressParams CodecDecompressParams
Definition: components.h:533
ComponentInstanceRecord
struct ComponentInstanceRecord ComponentInstanceRecord
Definition: components.h:77
ICMFrameTimePtr
void * ICMFrameTimePtr
Definition: components.h:327
kYVU9PixelFormat
@ kYVU9PixelFormat
Definition: components.h:167
k16LE555PixelFormat
@ k16LE555PixelFormat
Definition: components.h:157
k2vuyPixelFormat
@ k2vuyPixelFormat
Definition: components.h:172
kYUVSPixelFormat
@ kYUVSPixelFormat
Definition: components.h:165
kYUV411PixelFormat
@ kYUV411PixelFormat
Definition: components.h:168
kUYVY422PixelFormat
@ kUYVY422PixelFormat
Definition: components.h:170
kYUV211PixelFormat
@ kYUV211PixelFormat
Definition: components.h:171
kYUVUPixelFormat
@ kYUVUPixelFormat
Definition: components.h:166
k32ABGRPixelFormat
@ k32ABGRPixelFormat
Definition: components.h:163
k32BGRAPixelFormat
@ k32BGRAPixelFormat
Definition: components.h:162
k16LE565PixelFormat
@ k16LE565PixelFormat
Definition: components.h:160
k32RGBAPixelFormat
@ k32RGBAPixelFormat
Definition: components.h:164
k16BE565PixelFormat
@ k16BE565PixelFormat
Definition: components.h:159
k24BGRPixelFormat
@ k24BGRPixelFormat
Definition: components.h:161
kYVYU422PixelFormat
@ kYVYU422PixelFormat
Definition: components.h:169
k16LE5551PixelFormat
@ k16LE5551PixelFormat
Definition: components.h:158
ColorTable
struct ColorTable ColorTable
Definition: components.h:115
dump_CodecCapabilities
static void dump_CodecCapabilities(void *xxx)
Definition: components.h:703
SInt16
signed short SInt16
Definition: components.h:17
RectPtr
Rect * RectPtr
Definition: components.h:90
PixMapPtr
PixMap * PixMapPtr
Definition: components.h:211
Size
long Size
Definition: components.h:5
OSErr
long OSErr
Definition: components.h:10
PixMapExtHandle
PixMapExtPtr * PixMapExtHandle
Definition: components.h:190
UInt8
unsigned char UInt8
Definition: components.h:14
ComponentResourcePtr
ComponentResource * ComponentResourcePtr
Definition: components.h:63
GrafPort
struct GrafPort GrafPort
Definition: components.h:264
CSpecArray
ColorSpec CSpecArray[1]
Definition: components.h:107
SInt32
signed long SInt32
Definition: components.h:19
notSrcCopy
@ notSrcCopy
Definition: components.h:274
notSrcXor
@ notSrcXor
Definition: components.h:276
hilitetransfermode
@ hilitetransfermode
Definition: components.h:287
notPatOr
@ notPatOr
Definition: components.h:283
adMax
@ adMax
Definition: components.h:294
ditherCopy
@ ditherCopy
Definition: components.h:297
notPatCopy
@ notPatCopy
Definition: components.h:282
notSrcOr
@ notSrcOr
Definition: components.h:275
blend
@ blend
Definition: components.h:289
patBic
@ patBic
Definition: components.h:281
srcCopy
@ srcCopy
Definition: components.h:270
addOver
@ addOver
Definition: components.h:291
addPin
@ addPin
Definition: components.h:290
srcXor
@ srcXor
Definition: components.h:272
subPin
@ subPin
Definition: components.h:292
grayishTextOr
@ grayishTextOr
Definition: components.h:286
transparent
@ transparent
Definition: components.h:298
patOr
@ patOr
Definition: components.h:279
notSrcBic
@ notSrcBic
Definition: components.h:277
addMax
@ addMax
Definition: components.h:293
subOver
@ subOver
Definition: components.h:295
srcOr
@ srcOr
Definition: components.h:271
notPatXor
@ notPatXor
Definition: components.h:284
srcBic
@ srcBic
Definition: components.h:273
patXor
@ patXor
Definition: components.h:280
notPatBic
@ notPatBic
Definition: components.h:285
adMin
@ adMin
Definition: components.h:296
patCopy
@ patCopy
Definition: components.h:278
hilite
@ hilite
Definition: components.h:288
codecIsDirectToScreenOnly
@ codecIsDirectToScreenOnly
Definition: components.h:391
codecCanRemapResolution
@ codecCanRemapResolution
Definition: components.h:390
codecCanSpool
@ codecCanSpool
Definition: components.h:350
codecHandlesInputs
@ codecHandlesInputs
Definition: components.h:384
codecIsSequenceSensitive
@ codecIsSequenceSensitive
Definition: components.h:387
codecRequiresOffscreen
@ codecRequiresOffscreen
Definition: components.h:388
codecCanMakeMask
@ codecCanMakeMask
Definition: components.h:366
codecCanShift
@ codecCanShift
Definition: components.h:368
codecCanLockSurface
@ codecCanLockSurface
Definition: components.h:392
codecCanClipVertical
@ codecCanClipVertical
Definition: components.h:352
codecCanTransform
@ codecCanTransform
Definition: components.h:344
codecCanScale
@ codecCanScale
Definition: components.h:338
codecRequiresMaskBits
@ codecRequiresMaskBits
Definition: components.h:389
codecCanCopyPrev
@ codecCanCopyPrev
Definition: components.h:348
codecCanRemapColor
@ codecCanRemapColor
Definition: components.h:356
codecImageBufferIsOnScreen
@ codecImageBufferIsOnScreen
Definition: components.h:379
codecCanTransferMode
@ codecCanTransferMode
Definition: components.h:346
codecCanMask
@ codecCanMask
Definition: components.h:340
codecWantsSpecialScaling
@ codecWantsSpecialScaling
Definition: components.h:382
codecCanShieldCursor
@ codecCanShieldCursor
Definition: components.h:372
codecCanFastDither
@ codecCanFastDither
Definition: components.h:358
codecHasVolatileBuffer
@ codecHasVolatileBuffer
Definition: components.h:376
codecCanAsyncWhen
@ codecCanAsyncWhen
Definition: components.h:370
codecCanAsync
@ codecCanAsync
Definition: components.h:364
codecCanDoIndirectSurface
@ codecCanDoIndirectSurface
Definition: components.h:386
codecCanManagePrevBuffer
@ codecCanManagePrevBuffer
Definition: components.h:374
codecWantsDestinationPixels
@ codecWantsDestinationPixels
Definition: components.h:380
codecCanClipRectangular
@ codecCanClipRectangular
Definition: components.h:354
codecCanCopyPrevComp
@ codecCanCopyPrevComp
Definition: components.h:362
codecWantsRegionMask
@ codecWantsRegionMask
Definition: components.h:377
codecCanSrcExtract
@ codecCanSrcExtract
Definition: components.h:360
codecCanMatte
@ codecCanMatte
Definition: components.h:342
Ptr
char * Ptr
Definition: components.h:3
ComponentDescription
struct ComponentDescription ComponentDescription
Definition: components.h:45
RGBColorPtr
RGBColor * RGBColorPtr
Definition: components.h:98
CompressorComponent
Component CompressorComponent
Definition: components.h:307
RgnHandle
struct OpaqueRgnHandle * RgnHandle
Definition: components.h:223
CodecQ
unsigned long CodecQ
Definition: components.h:128
PixMapExtPtr
PixMapExtension * PixMapExtPtr
Definition: components.h:189
UInt16
unsigned short UInt16
Definition: components.h:16
GWorldFlags
unsigned long GWorldFlags
Definition: components.h:301
BitMap
struct BitMap BitMap
Definition: components.h:220
Boolean
unsigned char Boolean
Definition: components.h:6
MatrixRecordPtr
MatrixRecord * MatrixRecordPtr
Definition: components.h:123
RGBColorHdl
RGBColorPtr * RGBColorHdl
Definition: components.h:99
SInt8
signed char SInt8
Definition: components.h:15
ICMCompletionProcRecord
long long ICMCompletionProcRecord
Definition: components.h:325
PixMapExtension
struct PixMapExtension PixMapExtension
Definition: components.h:187
ImageDescription
struct ImageDescription ImageDescription
Definition: components.h:151
ComponentResource
struct ComponentResource ComponentResource
Definition: components.h:62
CTabPtr
ColorTable * CTabPtr
Definition: components.h:116
ImageSubCodecDecompressRecord
struct ImageSubCodecDecompressRecord ImageSubCodecDecompressRecord
Definition: components.h:575
ColorSpecPtr
ColorSpec * ColorSpecPtr
Definition: components.h:106
ICMFrameTimeInfoPtr
void * ICMFrameTimeInfoPtr
Definition: components.h:329
GWorldHandle
GWorldPtr * GWorldHandle
Definition: components.h:266
ICMDataProcRecord
long long ICMDataProcRecord
Definition: components.h:326
UInt32
unsigned long UInt32
Definition: components.h:18
height
unsigned int height
Definition: gfontrle.c:5
width
unsigned int width
Definition: gfontrle.c:4
Pattern
Definition: components.h:225
Pattern::pat
UInt8 pat[8]
Definition: components.h:226
_CodecInfo
Definition: libwin32.h:32
v
uint32_t v
Definition: utils.c:1157
name
const char * name
Definition: xine.c:1569