webkit  2cdf99a9e3038c7e01b3c37e8ad903ecbe5eecf1
https://github.com/WebKit/webkit
copyvertex.h
Go to the documentation of this file.
1 //
2 // Copyright (c) 2013-2015 The ANGLE Project Authors. All rights reserved.
3 // Use of this source code is governed by a BSD-style license that can be
4 // found in the LICENSE file.
5 //
6 
7 // copyvertex.h: Defines D3D11 vertex buffer copying and conversion functions
8 
9 #ifndef LIBANGLE_RENDERER_D3D_D3D11_COPYVERTEX_H_
10 #define LIBANGLE_RENDERER_D3D_D3D11_COPYVERTEX_H_
11 
12 #include "common/mathutil.h"
13 
14 namespace rx
15 {
16 
17 // 'alphaDefaultValueBits' gives the default value for the alpha channel (4th component)
18 template <typename T, size_t inputComponentCount, size_t outputComponentCount, uint32_t alphaDefaultValueBits>
19 inline void CopyNativeVertexData(const uint8_t *input, size_t stride, size_t count, uint8_t *output);
20 
21 template <size_t inputComponentCount, size_t outputComponentCount>
22 inline void Copy8SintTo16SintVertexData(const uint8_t *input, size_t stride, size_t count, uint8_t *output);
23 
24 template <size_t componentCount>
25 inline void Copy8SnormTo16SnormVertexData(const uint8_t *input, size_t stride, size_t count, uint8_t *output);
26 
27 template <size_t inputComponentCount, size_t outputComponentCount>
28 inline void Copy32FixedTo32FVertexData(const uint8_t *input, size_t stride, size_t count, uint8_t *output);
29 
30 template <typename T, size_t inputComponentCount, size_t outputComponentCount, bool normalized>
31 inline void CopyTo32FVertexData(const uint8_t *input, size_t stride, size_t count, uint8_t *output);
32 
33 template <bool isSigned, bool normalized, bool toFloat>
34 inline void CopyXYZ10W2ToXYZW32FVertexData(const uint8_t *input, size_t stride, size_t count, uint8_t *output);
35 
36 }
37 
38 #include "copyvertex.inl"
39 
40 #endif // LIBANGLE_RENDERER_D3D_D3D11_COPYVERTEX_H_
GLint GLsizei count
Definition: gl2.h:421
void CopyTo32FVertexData(const uint8_t *input, size_t stride, size_t count, uint8_t *output)
Definition: copyvertex.inl:150
void CopyXYZ10W2ToXYZW32FVertexData(const uint8_t *input, size_t stride, size_t count, uint8_t *output)
Definition: copyvertex.inl:361
void CopyNativeVertexData(const uint8_t *input, size_t stride, size_t count, uint8_t *output)
Definition: copyvertex.inl:11
void Copy32FixedTo32FVertexData(const uint8_t *input, size_t stride, size_t count, uint8_t *output)
Definition: copyvertex.inl:124
#define output
Definition: wire_format_lite.h:418
Definition: mathutil.h:804
unsigned char uint8_t
Definition: ptypes.h:89
void Copy8SnormTo16SnormVertexData(const uint8_t *input, size_t stride, size_t count, uint8_t *output)
Definition: copyvertex.inl:88
void Copy8SintTo16SintVertexData(const uint8_t *input, size_t stride, size_t count, uint8_t *output)
Definition: copyvertex.inl:59
string input
Definition: tokenizer_unittest.cc:198
EGLImageKHR EGLint EGLint EGLint * stride
Definition: eglext.h:851