• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /**
2  **
3  ** Copyright 2010, The Android Open Source Project
4  **
5  ** Licensed under the Apache License, Version 2.0 (the "License");
6  ** you may not use this file except in compliance with the License.
7  ** You may obtain a copy of the License at
8  **
9  **     http://www.apache.org/licenses/LICENSE-2.0
10  **
11  ** Unless required by applicable law or agreed to in writing, software
12  ** distributed under the License is distributed on an "AS IS" BASIS,
13  ** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  ** See the License for the specific language governing permissions and
15  ** limitations under the License.
16  */
17 
18 #ifndef _TEXTURE_H_
19 #define _TEXTURE_H_
20 
21 #if !USE_LLVM_TEXTURE_SAMPLER
22 
23 namespace llvm
24 {
25     class Module;
26     class ExecutionEngine;
27 };
28 
29 extern const struct GGLContext * textureGGLContext; // for getting wrap mode, dimensions, data
30 
31 void DeclareTextureFunctions(llvm::Module * mod);
32 void AddTextureFunctionMappings(llvm::Module * mod, llvm::ExecutionEngine * ee);
33 
34 #include "pixelflinger2/pixelflinger2_format.h"
35 
36 template<GGLPixelFormat format>
37 void tex2d_int32(unsigned sample[4], const float tex_coord[4], const unsigned sampler);
38 
39 #endif // #if !USE_LLVM_TEXTURE_SAMPLER
40 
41 void InitializeTextureFunctions(struct GGLInterface * iface);
42 
43 #endif // #ifndef _TEXTURE_H_