changeset 5334:2cb0e0e83e95

dump stuff
author arpi
date Mon, 25 Mar 2002 13:35:23 +0000
parents c4f6ab72300a
children da218aa7f9db
files loader/qtx/qtxsdk/components.h
diffstat 1 files changed, 205 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/loader/qtx/qtxsdk/components.h	Mon Mar 25 11:35:21 2002 +0000
+++ b/loader/qtx/qtxsdk/components.h	Mon Mar 25 13:35:23 2002 +0000
@@ -80,7 +80,7 @@
 
 // ========================= QUICKDRAW =========================
 
-struct Rect {
+struct __attribute__((__packed__)) Rect {
     short                           top;
     short                           left;
     short                           bottom;
@@ -242,6 +242,118 @@
 
 typedef struct OpaqueRgnHandle*         RgnHandle;
 
+
+/*  codec capabilities flags    */
+enum {
+    codecCanScale               = 1L << 0,
+	// 1
+    codecCanMask                = 1L << 1,
+	// 2
+    codecCanMatte               = 1L << 2,
+	// 4
+    codecCanTransform           = 1L << 3,
+	// 8
+    codecCanTransferMode        = 1L << 4,
+	// 10
+    codecCanCopyPrev            = 1L << 5,
+	// 20
+    codecCanSpool               = 1L << 6,
+	// 40
+    codecCanClipVertical        = 1L << 7,
+	// 80
+    codecCanClipRectangular     = 1L << 8,
+	// 100
+    codecCanRemapColor          = 1L << 9,
+	// 200
+    codecCanFastDither          = 1L << 10,
+	// 400
+    codecCanSrcExtract          = 1L << 11,
+	// 800
+    codecCanCopyPrevComp        = 1L << 12,
+	// 1000
+    codecCanAsync               = 1L << 13,
+	// 2000
+    codecCanMakeMask            = 1L << 14,
+	// 4000
+    codecCanShift               = 1L << 15,
+	// 8000
+    codecCanAsyncWhen           = 1L << 16,
+	// 10000
+    codecCanShieldCursor        = 1L << 17,
+	// 20000
+    codecCanManagePrevBuffer    = 1L << 18,
+	// 40000
+    codecHasVolatileBuffer      = 1L << 19,     // 80000                /* codec requires redraw after window movement */
+    codecWantsRegionMask        = 1L << 20,
+	// 100000
+    codecImageBufferIsOnScreen  = 1L << 21,     // 200000                /* old def of codec using overlay surface, = ( codecIsDirectToScreenOnly | codecUsesOverlaySurface | codecImageBufferIsOverlaySurface | codecSrcMustBeImageBuffer ) */
+    codecWantsDestinationPixels = 1L << 22,
+     // 400000
+    codecWantsSpecialScaling    = 1L << 23,
+     // 800000
+    codecHandlesInputs          = 1L << 24,
+	// 1000000
+    codecCanDoIndirectSurface   = 1L << 25,                     /* codec can handle indirect surface (GDI) */
+    codecIsSequenceSensitive    = 1L << 26,
+    codecRequiresOffscreen      = 1L << 27,
+    codecRequiresMaskBits       = 1L << 28,
+    codecCanRemapResolution     = 1L << 29,
+    codecIsDirectToScreenOnly   = 1L << 30,                     /* codec can only decompress data to the screen */
+    codecCanLockSurface         = 1L << 31                      /* codec can lock destination surface, icm doesn't lock for you */
+};
+
+/*  codec capabilities flags2   */
+enum {
+    codecUsesOverlaySurface     = 1L << 0,                      /* codec uses overlay surface */
+    codecImageBufferIsOverlaySurface = 1L << 1,                 /* codec image buffer is overlay surface, the bits in the buffer are on the screen */
+    codecSrcMustBeImageBuffer   = 1L << 2,                      /* codec can only source data from an image buffer */
+    codecImageBufferIsInAGPMemory = 1L << 4,                    /* codec image buffer is in AGP space, byte writes are OK */
+    codecImageBufferIsInPCIMemory = 1L << 5                     /* codec image buffer is across a PCI bus; byte writes are bad */
+};
+
+/*  codec condition flags   */
+// FFD =  13 = 8+4+1
+enum {
+    codecConditionFirstBand     = 1L << 0,
+	// 1
+    codecConditionLastBand      = 1L << 1,
+	// 2
+    codecConditionFirstFrame    = 1L << 2,
+	// 4
+    codecConditionNewDepth      = 1L << 3,
+	// 8
+    codecConditionNewTransform  = 1L << 4,
+	// 10
+    codecConditionNewSrcRect    = 1L << 5,
+	// 20
+    codecConditionNewMask       = 1L << 6,
+	// 40
+    codecConditionNewMatte      = 1L << 7,
+	// 80
+    codecConditionNewTransferMode = 1L << 8,
+	// 100
+    codecConditionNewClut       = 1L << 9,
+	// 200
+    codecConditionNewAccuracy   = 1L << 10,
+	// 400
+    codecConditionNewDestination = 1L << 11,
+	// 800
+    codecConditionFirstScreen   = 1L << 12,
+	// 1000
+    codecConditionDoCursor      = 1L << 13,
+	// 2000
+    codecConditionCatchUpDiff   = 1L << 14,
+	// 4000
+    codecConditionMaskMayBeChanged = 1L << 15,
+	// 8000
+    codecConditionToBuffer      = 1L << 16,
+	// 10000
+    codecConditionCodecChangedMask = 1L << 31
+	// 20000
+};
+
+
+
 struct CodecCapabilities {
     long                            flags;
     short                           wantedPixelSize;
@@ -441,4 +553,96 @@
 };
 typedef struct CodecInfo                CodecInfo;
 
+static inline void dump_ImageDescription(void* xxx){
+    ImageDescription* id=(ImageDescription*)xxx;
+    unsigned char* x;
+    printf("=============== ImageDescription at %p ==================\n",xxx);
+    printf("idSize=0x%X  fourcc=0x%08X\n",id->idSize,id->cType);
+    printf("ver=%d rev=%d vendor=0x%08X\n",id->version,id->revisionLevel,id->vendor);
+    printf("tempQ=%d spatQ=%d  dim: %d x %d  dpi: %d x %d  depth: %d\n",
+	id->temporalQuality,id->spatialQuality,
+	id->width, id->height,
+	id->hRes, id->vRes,
+	id->depth);
+    printf("dataSize=%d frameCount=%d clutID=%d\n",id->dataSize, id->frameCount, id->clutID);
+    printf("name='%.*s'\n",((char*)(&id->name))[0],((char*)(&id->name))+1);
+    x=((char*)(&id->clutID))+2;
+    if(id->idSize>sizeof(ImageDescription)){
+	printf("%02X %02X %02X %02X | %02X %02X %02X %02X | %02X %02X %02X %02X | %02X %02X %02X %02X\n",
+	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]);
+    }
+    printf("=========================================================\n");
+}
 
+static inline void dump_Rect(char* title,Rect *r){
+    printf("%s: %d;%d - %d;%d\n",title,
+        (int)r->top,(int)r->left,(int)r->bottom,(int)r->right);
+}
+
+static inline void dump_MatrixRecord(char* title, MatrixRecord *m){
+    printf("%s: [%d %d %d][%d %d %d][%d %d %d]\n",title,
+	m->matrix[0][0],m->matrix[0][1],m->matrix[0][2],
+	m->matrix[1][0],m->matrix[1][1],m->matrix[1][2],
+	m->matrix[2][0],m->matrix[2][1],m->matrix[2][2]);
+}
+
+static inline void dump_PixMap(void* xxx){
+    PixMap *p=xxx;
+    printf("=============== PixMap at %p ==================\n",xxx);
+    printf("base=%p  stride=%d\n",p->baseAddr, p->rowBytes);
+    dump_Rect("bounds",&p->bounds);
+    printf("pmVersion=0x%X packType=0x%X\n packSize=0x%X\n",
+	p->pmVersion,p->packType, p->packSize);
+    printf("hRes=0x%X vRes=0x%X pixelType=0x%X pixelSize=0x%X\n",
+	p->hRes,p->vRes,p->pixelType,p->pixelSize);
+    printf("cmpCount=0x%X cmpSize=0x%X pixelFormat=0x%X\n",
+	p->cmpCount,p->cmpSize,p->pixelFormat);
+    printf("pmTable=%p pmExt=%p\n",p->pmTable,p->pmExt);
+    printf("=========================================================\n");
+}
+
+static inline void dump_CodecCapabilities(void* xxx){
+    CodecCapabilities* cc=xxx;
+    if(!xxx) return;
+    printf("=============== CodecCapabilities at %p =================\n",xxx);
+    printf("flags=0x%X  flags2=0x%X\n",cc->flags,cc->flags2);
+    printf("wantedPixelSize=%d extendWidth=%d extendHeight=%d band=%d+%d\n",
+	cc->wantedPixelSize,cc->extendWidth,cc->extendHeight,
+	cc->bandMin,cc->bandInc);
+    printf("pad=0x%X  time=0x%X\n",cc->pad,cc->time);
+    printf("=========================================================\n");
+}
+
+static inline void dump_CodecDecompressParams(void* xxx){
+    CodecDecompressParams* cd=xxx;
+    ImageDescription **idh;
+    if(!xxx) return;
+    printf("=============== CodecDecompressParams at %p ==================\n",xxx);
+    printf("sequenceID=%d\n",cd->sequenceID);
+    idh=cd->imageDescription;
+    if(idh && idh[0]) dump_ImageDescription(idh[0]);
+    printf("data=%p  size=%d\n",cd->data,cd->bufferSize);
+    printf("frameno=%d  lines: %d .. %d   condflags=0x%X  callerflags=0x%X\n",
+	cd->frameNumber, cd->startLine, cd->stopLine, cd->conditionFlags,cd->callerFlags);
+//    printf("maskBits=%p mattePixMap=%p\n",
+//	cd->maskBits,cd->mattePixMap);
+//    dump_PixMap(&cd->dstPixMap);
+//    if(cd->mattePixMap) dump_PixMap(cd->mattePixMap);
+//    dump_MatrixRecord("matrix",cd->matrix);
+    printf("accuracy=%d  transferMode=%d  matrixFlags=0x%X matrixType=%d\n",
+	(int)cd->accuracy, (int)cd->transferMode, (int)cd->matrixFlags, (int)cd->matrixType);
+    printf("srcrect: %d;%d - %d;%d\n",cd->srcRect.top,cd->srcRect.left,cd->srcRect.bottom,cd->srcRect.right);
+    printf("dstrect: %d;%d - %d;%d\n",cd->dstRect.top,cd->dstRect.left,cd->dstRect.bottom,cd->dstRect.right);
+    printf("wantedDestinationPixelTypes=%p\n",cd->wantedDestinationPixelTypes);
+    printf("screenFloodMethod=%d value=%d  preferredOffscreenPixelSize=%d\n",
+	cd->screenFloodMethod, cd->screenFloodValue, cd->preferredOffscreenPixelSize);
+    printf("callbacks: progress=%p compl=%p data=%p ftime=%p srcdata=%p sync=%p\n",
+     cd->progressProcRecord, cd->completionProcRecord,
+     cd->dataProcRecord, cd->frameTime, cd->sourceData, cd->syncFrameTime);
+//    printf("\n");
+
+    printf("=========================================================\n");
+
+
+}
+