Home | History | Annotate | Download | only in main
      1 /*
      2  * Mesa 3-D graphics library
      3  * Version:  6.3
      4  *
      5  * Copyright (C) 1999-2004  Brian Paul   All Rights Reserved.
      6  *
      7  * Permission is hereby granted, free of charge, to any person obtaining a
      8  * copy of this software and associated documentation files (the "Software"),
      9  * to deal in the Software without restriction, including without limitation
     10  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
     11  * and/or sell copies of the Software, and to permit persons to whom the
     12  * Software is furnished to do so, subject to the following conditions:
     13  *
     14  * The above copyright notice and this permission notice shall be included
     15  * in all copies or substantial portions of the Software.
     16  *
     17  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
     18  * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
     19  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
     20  * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
     21  * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
     22  * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
     23  */
     24 
     25 
     26 #include "glheader.h"
     27 #include "bufferobj.h"
     28 #include "colormac.h"
     29 #include "histogram.h"
     30 #include "macros.h"
     31 #include "mfeatures.h"
     32 #include "main/dispatch.h"
     33 
     34 
     35 #if FEATURE_histogram
     36 
     37 /**********************************************************************
     38  * API functions
     39  */
     40 
     41 
     42 /* this is defined below */
     43 static void GLAPIENTRY _mesa_ResetMinmax(GLenum target);
     44 
     45 
     46 static void GLAPIENTRY
     47 _mesa_GetnMinmaxARB(GLenum target, GLboolean reset, GLenum format,
     48                     GLenum type, GLsizei bufSize, GLvoid *values)
     49 {
     50    GET_CURRENT_CONTEXT(ctx);
     51 
     52    _mesa_error(ctx, GL_INVALID_OPERATION, "glGetMinmax");
     53 }
     54 
     55 
     56 static void GLAPIENTRY
     57 _mesa_GetMinmax(GLenum target, GLboolean reset, GLenum format, GLenum type,
     58                 GLvoid *values)
     59 {
     60    _mesa_GetnMinmaxARB(target, reset, format, type, INT_MAX, values);
     61 }
     62 
     63 
     64 static void GLAPIENTRY
     65 _mesa_GetnHistogramARB(GLenum target, GLboolean reset, GLenum format,
     66                        GLenum type, GLsizei bufSize, GLvoid *values)
     67 {
     68    GET_CURRENT_CONTEXT(ctx);
     69 
     70    _mesa_error(ctx, GL_INVALID_OPERATION, "glGetHistogram");
     71 }
     72 
     73 
     74 static void GLAPIENTRY
     75 _mesa_GetHistogram(GLenum target, GLboolean reset, GLenum format, GLenum type,
     76                    GLvoid *values)
     77 {
     78    _mesa_GetnHistogramARB(target, reset, format, type, INT_MAX, values);
     79 }
     80 
     81 
     82 static void GLAPIENTRY
     83 _mesa_GetHistogramParameterfv(GLenum target, GLenum pname, GLfloat *params)
     84 {
     85    GET_CURRENT_CONTEXT(ctx);
     86 
     87    _mesa_error(ctx, GL_INVALID_OPERATION, "glGetHistogramParameterfv");
     88 }
     89 
     90 
     91 static void GLAPIENTRY
     92 _mesa_GetHistogramParameteriv(GLenum target, GLenum pname, GLint *params)
     93 {
     94    GET_CURRENT_CONTEXT(ctx);
     95 
     96    _mesa_error(ctx, GL_INVALID_OPERATION, "glGetHistogramParameteriv");
     97 }
     98 
     99 
    100 static void GLAPIENTRY
    101 _mesa_GetMinmaxParameterfv(GLenum target, GLenum pname, GLfloat *params)
    102 {
    103    GET_CURRENT_CONTEXT(ctx);
    104 
    105       _mesa_error(ctx, GL_INVALID_OPERATION, "glGetMinmaxParameterfv");
    106 }
    107 
    108 
    109 static void GLAPIENTRY
    110 _mesa_GetMinmaxParameteriv(GLenum target, GLenum pname, GLint *params)
    111 {
    112    GET_CURRENT_CONTEXT(ctx);
    113 
    114    _mesa_error(ctx, GL_INVALID_OPERATION, "glGetMinmaxParameteriv");
    115 }
    116 
    117 
    118 static void GLAPIENTRY
    119 _mesa_Histogram(GLenum target, GLsizei width, GLenum internalFormat, GLboolean sink)
    120 {
    121    GET_CURRENT_CONTEXT(ctx);
    122 
    123    _mesa_error(ctx, GL_INVALID_OPERATION, "glHistogram");
    124 }
    125 
    126 
    127 static void GLAPIENTRY
    128 _mesa_Minmax(GLenum target, GLenum internalFormat, GLboolean sink)
    129 {
    130    GET_CURRENT_CONTEXT(ctx);
    131 
    132    _mesa_error(ctx, GL_INVALID_OPERATION, "glMinmax");
    133 }
    134 
    135 
    136 static void GLAPIENTRY
    137 _mesa_ResetHistogram(GLenum target)
    138 {
    139    GET_CURRENT_CONTEXT(ctx);
    140 
    141    _mesa_error(ctx, GL_INVALID_OPERATION, "glResetHistogram");
    142 }
    143 
    144 
    145 static void GLAPIENTRY
    146 _mesa_ResetMinmax(GLenum target)
    147 {
    148    GET_CURRENT_CONTEXT(ctx);
    149 
    150    _mesa_error(ctx, GL_INVALID_OPERATION, "glResetMinmax");
    151 }
    152 
    153 
    154 void
    155 _mesa_init_histogram_dispatch(struct _glapi_table *disp)
    156 {
    157    SET_GetHistogram(disp, _mesa_GetHistogram);
    158    SET_GetHistogramParameterfv(disp, _mesa_GetHistogramParameterfv);
    159    SET_GetHistogramParameteriv(disp, _mesa_GetHistogramParameteriv);
    160    SET_GetMinmax(disp, _mesa_GetMinmax);
    161    SET_GetMinmaxParameterfv(disp, _mesa_GetMinmaxParameterfv);
    162    SET_GetMinmaxParameteriv(disp, _mesa_GetMinmaxParameteriv);
    163    SET_Histogram(disp, _mesa_Histogram);
    164    SET_Minmax(disp, _mesa_Minmax);
    165    SET_ResetHistogram(disp, _mesa_ResetHistogram);
    166    SET_ResetMinmax(disp, _mesa_ResetMinmax);
    167 
    168    /* GL_ARB_robustness */
    169    SET_GetnHistogramARB(disp, _mesa_GetnHistogramARB);
    170    SET_GetnMinmaxARB(disp, _mesa_GetnMinmaxARB);
    171 }
    172 
    173 #endif /* FEATURE_histogram */
    174