// 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;
}
Beispiel #2
0
// 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;
}
Beispiel #3
0
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;
}
Beispiel #6
0
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;
}