/* * Copyright (c) 2013-2014 Jens Kuske * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA * */ #ifndef __RGBA_H__ #define __RGBA_H__ #include "vdpau_private.h" VdpStatus rgba_create(rgba_surface_t *rgba, device_ctx_t *device, uint32_t width, uint32_t height, VdpRGBAFormat format); void rgba_destroy(rgba_surface_t *rgba); VdpStatus rgba_put_bits_native(rgba_surface_t *rgba, void const *const *source_data, uint32_t const *source_pitches, VdpRect const *destination_rect); VdpStatus rgba_put_bits_indexed(rgba_surface_t *rgba, VdpIndexedFormat source_indexed_format, void const *const *source_data, uint32_t const *source_pitch, VdpRect const *destination_rect, VdpColorTableFormat color_table_format, void const *color_table); VdpStatus rgba_render_surface(rgba_surface_t *dest, VdpRect const *destination_rect, rgba_surface_t *src, VdpRect const *source_rect, VdpColor const *colors, VdpOutputSurfaceRenderBlendState const *blend_state, uint32_t flags); void rgba_clear(rgba_surface_t *rgba); void rgba_fill(rgba_surface_t *dest, const VdpRect *dest_rect, uint32_t color); void rgba_blit(rgba_surface_t *dest, const VdpRect *dest_rect, rgba_surface_t *src, const VdpRect *src_rect); void rgba_flush(rgba_surface_t *rgba); #endif