Ejemplo n.º 1
0
static Bool
xa_setup_pict(struct xa_picture *pict, union xa_source_pict *spict,
		PicturePtr pPict)
{
	memset(pict, 0, sizeof(*pict));

	pict->pict_format = to_xa_format(pPict->format);
	EXA_FAIL_IF(pict->pict_format == xa_format_unknown);

	pict->alpha_map = NULL;
	pict->component_alpha = pPict->componentAlpha;
	pict->has_transform = matrix_from_pict_transform(
			pPict->transform, pict->transform);
	pict->wrap = xa_setup_wrap(pPict->repeat, pPict->repeatType);
	pict->filter = xa_setup_filter(pPict->filter);

	if (pPict->pSourcePict) {
		if (!xa_setup_spict(spict, pPict->pSourcePict))
			return FALSE;
		pict->src_pict = spict;
	} else {
		pict->src_pict = NULL;
	}

	return TRUE;
}
Ejemplo n.º 2
0
static void
setup_transforms(struct  exa_context *exa,
                 PicturePtr pSrcPicture, PicturePtr pMaskPicture)
{
   PictTransform *src_t = NULL;
   PictTransform *mask_t = NULL;

   if (pSrcPicture)
      src_t = pSrcPicture->transform;
   if (pMaskPicture)
      mask_t = pMaskPicture->transform;

   exa->transform.has_src  =
      matrix_from_pict_transform(src_t, exa->transform.src);
   exa->transform.has_mask =
      matrix_from_pict_transform(mask_t, exa->transform.mask);
}