// Your component receives the ImageCodecGetCodecInfo request whenever an application calls the Image Compression Manager's GetCodecInfo function. // Your component should return a formatted compressor information structure defining its capabilities. // Both compressors and decompressors may receive this request. ComponentResult VP8_Encoder_GetCodecInfo(VP8EncoderGlobals glob, CodecInfo *info) { dbg_printf("[vp8e - %08lx] GetCodecInfo called\n", (UInt32)glob); OSErr err = noErr; if (info == NULL) { err = paramErr; } else { CodecInfo **tempCodecInfo; err = GetComponentResource((Component)glob->self, codecInfoResourceType, 255, (Handle *)&tempCodecInfo); if (err == noErr) { *info = **tempCodecInfo; DisposeHandle((Handle)tempCodecInfo); } } dbg_printf("[vp8e - %08lx] GetCodecInfo exit %d\n", (UInt32)glob, err); return err; }
// ImageCodecGetCodecInfo // Your component receives the ImageCodecGetCodecInfo request whenever an application calls the Image Compression Manager's GetCodecInfo function. // Your component should return a formatted compressor information structure defining its capabilities. // Both compressors and decompressors may receive this request. pascal ComponentResult TextSubCodecGetCodecInfo(TextSubGlobals glob, CodecInfo *info) { OSErr err = noErr; ComponentDescription desc; short resid; GetComponentInfo((Component)glob->self, &desc, 0, 0, 0); if (desc.componentSubType == kSubFormatSSA) resid = kSSASubCodecResourceID; else resid = kTextSubCodecResourceID; if (info == NULL) { err = paramErr; } else { CodecInfo **tempCodecInfo; err = GetComponentResource((Component)glob->self, codecInfoResourceType, resid, (Handle *)&tempCodecInfo); if (err == noErr) { *info = **tempCodecInfo; DisposeHandle((Handle)tempCodecInfo); } } return err; }
ComponentResult FFAvi_MovieImportGetMIMETypeList(ff_global_ptr storage, QTAtomContainer *mimeInfo) { ComponentResult err = noErr; switch (storage->componentType) { case 'VfW ': case 'VFW ': case 'AVI ': err = GetComponentResource((Component)storage->ci, 'mime', kAVIthngResID, (Handle*)mimeInfo); break; case 'FLV ': err = GetComponentResource((Component)storage->ci, 'mime', kFLVthngResID, (Handle*)mimeInfo); break; case 'TTA ': err = GetComponentResource((Component)storage->ci, 'mime', kTTAthngResID, (Handle*)mimeInfo); break; case 'NUV ': err = GetComponentResource((Component)storage->ci, 'mime', kNUVthngResID, (Handle*)mimeInfo); break; default: err = GetComponentResource((Component)storage->ci, 'mime', kAVIthngResID, (Handle*)mimeInfo); break; } return err; } /* FFAvi_MovieImportGetMIMETypeList() */
// ImageCodecGetCodecInfo // Your component receives the ImageCodecGetCodecInfo request whenever an application calls the Image Compression Manager's GetCodecInfo function. // Your component should return a formatted compressor information structure defining its capabilities. // Both compressors and decompressors may receive this request. pascal ComponentResult ExampleIPB_DGetCodecInfo(ExampleIPBDecompressorGlobals glob, CodecInfo *info) { OSErr err = noErr; if (info == NULL) { err = paramErr; } else { CodecInfo **tempCodecInfo; err = GetComponentResource((Component)glob->self, codecInfoResourceType, 256, (Handle *)&tempCodecInfo); if (err == noErr) { *info = **tempCodecInfo; DisposeHandle((Handle)tempCodecInfo); } } return err; }
pascal ComponentResult VP8_Encoder_GetDITLForSize(VP8EncoderGlobals store, Handle *ditl, Point *requestedSize) { Handle h = NULL; ComponentResult err = noErr; switch (requestedSize->h) { case kSGSmallestDITLSize: GetComponentResource((Component)(store->self), FOUR_CHAR_CODE('DITL'), kVP8_EncoderDITLResID, &h); if (NULL != h) *ditl = h; else err = resNotFound; break; default: err = badComponentSelector; break; } return err; }
static PyObject *CmpObj_GetComponentResource(ComponentObject *_self, PyObject *_args) { PyObject *_res = NULL; OSErr _err; OSType resType; short resID; Handle theResource; #ifndef GetComponentResource PyMac_PRECHECK(GetComponentResource); #endif if (!PyArg_ParseTuple(_args, "O&h", PyMac_GetOSType, &resType, &resID)) return NULL; _err = GetComponentResource(_self->ob_itself, resType, resID, &theResource); if (_err != noErr) return PyMac_Error(_err); _res = Py_BuildValue("O&", ResObj_New, theResource); return _res; }