texcompress_rgtc.h revision 7d16e2c0cd70dc5a23b746dbc8e44c58366b5353
18d47c919859e9cd90cfc04eb220ac8a5aa87048eDave Airlie/*
28d47c919859e9cd90cfc04eb220ac8a5aa87048eDave Airlie * Copyright (C) 2011 Red Hat Inc.
38d47c919859e9cd90cfc04eb220ac8a5aa87048eDave Airlie *
48d47c919859e9cd90cfc04eb220ac8a5aa87048eDave Airlie * Permission is hereby granted, free of charge, to any person obtaining a
58d47c919859e9cd90cfc04eb220ac8a5aa87048eDave Airlie * copy of this software and associated documentation files (the "Software"),
68d47c919859e9cd90cfc04eb220ac8a5aa87048eDave Airlie * to deal in the Software without restriction, including without limitation
78d47c919859e9cd90cfc04eb220ac8a5aa87048eDave Airlie * the rights to use, copy, modify, merge, publish, distribute, sublicense,
88d47c919859e9cd90cfc04eb220ac8a5aa87048eDave Airlie * and/or sell copies of the Software, and to permit persons to whom the
98d47c919859e9cd90cfc04eb220ac8a5aa87048eDave Airlie * Software is furnished to do so, subject to the following conditions:
108d47c919859e9cd90cfc04eb220ac8a5aa87048eDave Airlie *
118d47c919859e9cd90cfc04eb220ac8a5aa87048eDave Airlie * The above copyright notice and this permission notice (including the next
128d47c919859e9cd90cfc04eb220ac8a5aa87048eDave Airlie * paragraph) shall be included in all copies or substantial portions of the
138d47c919859e9cd90cfc04eb220ac8a5aa87048eDave Airlie * Software.
148d47c919859e9cd90cfc04eb220ac8a5aa87048eDave Airlie *
158d47c919859e9cd90cfc04eb220ac8a5aa87048eDave Airlie * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
168d47c919859e9cd90cfc04eb220ac8a5aa87048eDave Airlie * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
178d47c919859e9cd90cfc04eb220ac8a5aa87048eDave Airlie * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
188d47c919859e9cd90cfc04eb220ac8a5aa87048eDave Airlie * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
198d47c919859e9cd90cfc04eb220ac8a5aa87048eDave Airlie * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
208d47c919859e9cd90cfc04eb220ac8a5aa87048eDave Airlie * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
218d47c919859e9cd90cfc04eb220ac8a5aa87048eDave Airlie * DEALINGS IN THE SOFTWARE.
228d47c919859e9cd90cfc04eb220ac8a5aa87048eDave Airlie */
238d47c919859e9cd90cfc04eb220ac8a5aa87048eDave Airlie
248d47c919859e9cd90cfc04eb220ac8a5aa87048eDave Airlie#ifndef TEXCOMPRESS_RGTC_H
258d47c919859e9cd90cfc04eb220ac8a5aa87048eDave Airlie#define TEXCOMPRESS_RGTC_H
268d47c919859e9cd90cfc04eb220ac8a5aa87048eDave Airlie
278d47c919859e9cd90cfc04eb220ac8a5aa87048eDave Airlie#include "glheader.h"
288d47c919859e9cd90cfc04eb220ac8a5aa87048eDave Airlie#include "mfeatures.h"
298d47c919859e9cd90cfc04eb220ac8a5aa87048eDave Airlie#include "texstore.h"
308d47c919859e9cd90cfc04eb220ac8a5aa87048eDave Airlie
318d47c919859e9cd90cfc04eb220ac8a5aa87048eDave Airliestruct gl_texture_image;
328d47c919859e9cd90cfc04eb220ac8a5aa87048eDave Airlie
338d47c919859e9cd90cfc04eb220ac8a5aa87048eDave Airlieextern GLboolean
348d47c919859e9cd90cfc04eb220ac8a5aa87048eDave Airlie_mesa_texstore_red_rgtc1(TEXSTORE_PARAMS);
358d47c919859e9cd90cfc04eb220ac8a5aa87048eDave Airlie
368d47c919859e9cd90cfc04eb220ac8a5aa87048eDave Airlieextern GLboolean
378d47c919859e9cd90cfc04eb220ac8a5aa87048eDave Airlie_mesa_texstore_signed_red_rgtc1(TEXSTORE_PARAMS);
388d47c919859e9cd90cfc04eb220ac8a5aa87048eDave Airlie
398d47c919859e9cd90cfc04eb220ac8a5aa87048eDave Airlieextern GLboolean
408d47c919859e9cd90cfc04eb220ac8a5aa87048eDave Airlie_mesa_texstore_rg_rgtc2(TEXSTORE_PARAMS);
418d47c919859e9cd90cfc04eb220ac8a5aa87048eDave Airlie
428d47c919859e9cd90cfc04eb220ac8a5aa87048eDave Airlieextern GLboolean
438d47c919859e9cd90cfc04eb220ac8a5aa87048eDave Airlie_mesa_texstore_signed_rg_rgtc2(TEXSTORE_PARAMS);
448d47c919859e9cd90cfc04eb220ac8a5aa87048eDave Airlie
458d47c919859e9cd90cfc04eb220ac8a5aa87048eDave Airlieextern void
468d47c919859e9cd90cfc04eb220ac8a5aa87048eDave Airlie_mesa_fetch_texel_2d_f_red_rgtc1(const struct gl_texture_image *texImage,
478d47c919859e9cd90cfc04eb220ac8a5aa87048eDave Airlie				 GLint i, GLint j, GLint k, GLfloat *texel);
488d47c919859e9cd90cfc04eb220ac8a5aa87048eDave Airlie
498d47c919859e9cd90cfc04eb220ac8a5aa87048eDave Airlieextern void
508d47c919859e9cd90cfc04eb220ac8a5aa87048eDave Airlie_mesa_fetch_texel_2d_f_signed_red_rgtc1(const struct gl_texture_image *texImage,
518d47c919859e9cd90cfc04eb220ac8a5aa87048eDave Airlie					GLint i, GLint j, GLint k, GLfloat *texel);
528d47c919859e9cd90cfc04eb220ac8a5aa87048eDave Airlie
538d47c919859e9cd90cfc04eb220ac8a5aa87048eDave Airlieextern void
548d47c919859e9cd90cfc04eb220ac8a5aa87048eDave Airlie_mesa_fetch_texel_2d_f_rg_rgtc2(const struct gl_texture_image *texImage,
558d47c919859e9cd90cfc04eb220ac8a5aa87048eDave Airlie				 GLint i, GLint j, GLint k, GLfloat *texel);
568d47c919859e9cd90cfc04eb220ac8a5aa87048eDave Airlie
578d47c919859e9cd90cfc04eb220ac8a5aa87048eDave Airlieextern void
588d47c919859e9cd90cfc04eb220ac8a5aa87048eDave Airlie_mesa_fetch_texel_2d_f_signed_rg_rgtc2(const struct gl_texture_image *texImage,
598d47c919859e9cd90cfc04eb220ac8a5aa87048eDave Airlie				       GLint i, GLint j, GLint k, GLfloat *texel);
607d16e2c0cd70dc5a23b746dbc8e44c58366b5353Marek Olšák
617d16e2c0cd70dc5a23b746dbc8e44c58366b5353Marek Olšákextern void
627d16e2c0cd70dc5a23b746dbc8e44c58366b5353Marek Olšák_mesa_fetch_texel_2d_f_l_latc1(const struct gl_texture_image *texImage,
637d16e2c0cd70dc5a23b746dbc8e44c58366b5353Marek Olšák                                 GLint i, GLint j, GLint k, GLfloat *texel);
647d16e2c0cd70dc5a23b746dbc8e44c58366b5353Marek Olšák
657d16e2c0cd70dc5a23b746dbc8e44c58366b5353Marek Olšákextern void
667d16e2c0cd70dc5a23b746dbc8e44c58366b5353Marek Olšák_mesa_fetch_texel_2d_f_signed_l_latc1(const struct gl_texture_image *texImage,
677d16e2c0cd70dc5a23b746dbc8e44c58366b5353Marek Olšák                                        GLint i, GLint j, GLint k, GLfloat *texel);
687d16e2c0cd70dc5a23b746dbc8e44c58366b5353Marek Olšák
697d16e2c0cd70dc5a23b746dbc8e44c58366b5353Marek Olšákextern void
707d16e2c0cd70dc5a23b746dbc8e44c58366b5353Marek Olšák_mesa_fetch_texel_2d_f_la_latc2(const struct gl_texture_image *texImage,
717d16e2c0cd70dc5a23b746dbc8e44c58366b5353Marek Olšák                                 GLint i, GLint j, GLint k, GLfloat *texel);
727d16e2c0cd70dc5a23b746dbc8e44c58366b5353Marek Olšák
737d16e2c0cd70dc5a23b746dbc8e44c58366b5353Marek Olšákextern void
747d16e2c0cd70dc5a23b746dbc8e44c58366b5353Marek Olšák_mesa_fetch_texel_2d_f_signed_la_latc2(const struct gl_texture_image *texImage,
757d16e2c0cd70dc5a23b746dbc8e44c58366b5353Marek Olšák                                       GLint i, GLint j, GLint k, GLfloat *texel);
767d16e2c0cd70dc5a23b746dbc8e44c58366b5353Marek Olšák
778d47c919859e9cd90cfc04eb220ac8a5aa87048eDave Airlie#endif
78