1fe28ca06248f5b9cf97e0c8678275997cbf6b4daGeoff Lang// 2268b6bcd5d415e2169228f4f082e546ac05aa899Geoff Lang// Copyright (c) 2013-2014 The ANGLE Project Authors. All rights reserved. 3fe28ca06248f5b9cf97e0c8678275997cbf6b4daGeoff Lang// Use of this source code is governed by a BSD-style license that can be 4fe28ca06248f5b9cf97e0c8678275997cbf6b4daGeoff Lang// found in the LICENSE file. 5fe28ca06248f5b9cf97e0c8678275997cbf6b4daGeoff Lang// 6fe28ca06248f5b9cf97e0c8678275997cbf6b4daGeoff Lang 7fe28ca06248f5b9cf97e0c8678275997cbf6b4daGeoff Lang// copyimage.h: Defines image copying functions 8fe28ca06248f5b9cf97e0c8678275997cbf6b4daGeoff Lang 9fe28ca06248f5b9cf97e0c8678275997cbf6b4daGeoff Lang#ifndef LIBGLESV2_RENDERER_COPYIMAGE_H_ 10fe28ca06248f5b9cf97e0c8678275997cbf6b4daGeoff Lang#define LIBGLESV2_RENDERER_COPYIMAGE_H_ 11fe28ca06248f5b9cf97e0c8678275997cbf6b4daGeoff Lang 12fe28ca06248f5b9cf97e0c8678275997cbf6b4daGeoff Lang#include "common/mathutil.h" 13fe28ca06248f5b9cf97e0c8678275997cbf6b4daGeoff Lang#include "libGLESv2/angletypes.h" 14fe28ca06248f5b9cf97e0c8678275997cbf6b4daGeoff Lang 150b7eef7c469bf717f7e1b57c6273f00d88e8b1d9Geoff Lang#include <cstdint> 160b7eef7c469bf717f7e1b57c6273f00d88e8b1d9Geoff Lang 17fe28ca06248f5b9cf97e0c8678275997cbf6b4daGeoff Langnamespace rx 18fe28ca06248f5b9cf97e0c8678275997cbf6b4daGeoff Lang{ 19fe28ca06248f5b9cf97e0c8678275997cbf6b4daGeoff Lang 20fe28ca06248f5b9cf97e0c8678275997cbf6b4daGeoff Langtemplate <typename sourceType, typename colorDataType> 21268b6bcd5d415e2169228f4f082e546ac05aa899Geoff Langvoid ReadColor(const uint8_t *source, uint8_t *dest); 22fe28ca06248f5b9cf97e0c8678275997cbf6b4daGeoff Lang 23fe28ca06248f5b9cf97e0c8678275997cbf6b4daGeoff Langtemplate <typename destType, typename colorDataType> 24268b6bcd5d415e2169228f4f082e546ac05aa899Geoff Langvoid WriteColor(const uint8_t *source, uint8_t *dest); 25fe28ca06248f5b9cf97e0c8678275997cbf6b4daGeoff Lang 26fe28ca06248f5b9cf97e0c8678275997cbf6b4daGeoff Langtemplate <typename sourceType, typename destType, typename colorDataType> 27268b6bcd5d415e2169228f4f082e546ac05aa899Geoff Langvoid CopyPixel(const uint8_t *source, uint8_t *dest); 28fe28ca06248f5b9cf97e0c8678275997cbf6b4daGeoff Lang 29268b6bcd5d415e2169228f4f082e546ac05aa899Geoff Langvoid CopyBGRA8ToRGBA8(const uint8_t *source, uint8_t *dest); 30fe28ca06248f5b9cf97e0c8678275997cbf6b4daGeoff Lang 31fe28ca06248f5b9cf97e0c8678275997cbf6b4daGeoff Lang} 32fe28ca06248f5b9cf97e0c8678275997cbf6b4daGeoff Lang 33268b6bcd5d415e2169228f4f082e546ac05aa899Geoff Lang#include "copyimage.inl" 34268b6bcd5d415e2169228f4f082e546ac05aa899Geoff Lang 35fe28ca06248f5b9cf97e0c8678275997cbf6b4daGeoff Lang#endif // LIBGLESV2_RENDERER_COPYIMAGE_H_ 36