This file is indexed.

/usr/include/gtkglextmm-1.2/gdkmm/gl/windowext.h is in libgtkglextmm-x11-1.2-dev 1.2.0-4.1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
// -*- C++ -*-
/* gdkglextmm - C++ Wrapper for GdkGLExt
 * Copyright (C) 2002-2003  Naofumi Yasufuku
 *
 * This library is free software; you can redistribute it and/or
 * modify it under the terms of the GNU Lesser General Public
 * License as published by the Free Software Foundation; either
 * version 2.1 of the License, or (at your option) any later version.
 *
 * This library is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 * Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public
 * License along with this library; if not, write to the Free Software
 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307  USA.
 */

#ifndef _GDKMM_GL_WINDOWEXT_H
#define _GDKMM_GL_WINDOWEXT_H

#include <glibmm.h>

#include <gdkmm/gl/defs.h>
#include <gdkmm/gl/window.h>

namespace Gdk
{
  namespace GL
  {

    class WindowExtProxy
    {
    private:
      WindowExtProxy(const Glib::RefPtr<Gdk::Window>& window)
        : window_(window)
      {}

    private:
      WindowExtProxy(const WindowExtProxy&);
      WindowExtProxy& operator=(const WindowExtProxy&);

    public:

      /** Set the OpenGL-capability to the Gdk::Window.
       * This function creates a new Gdk::GL::Window held by the Gdk::Window.
       * attrib_list is currently unused. This must be set to <tt>0</tt> or empty
       * (first attribute of None).
       *
       * @param glconfig A Gdk::GL::Config.
       * @param attrib_list This must be set to <tt>0</tt> or empty (first attribute of None).
       * @return The Gdk::GL::Window used by the @a window  if it is successful,
       * <tt>0</tt> otherwise.
       */
      Glib::RefPtr<Window> set_gl_capability(const Glib::RefPtr<const Config>& glconfig,
                                             const int* attrib_list = 0);

      /** Unset the OpenGL-capability of the Gdk::Window.
       * This function destroys the Gdk::GL::Window held by the Gdk::Window.
       *
       */
      void unset_gl_capability();

      /** Returns whether the Gdk::Window is OpenGL-capable.
       *
       * @return <tt>true</tt> if the Gdk::Window is OpenGL-capable, <tt>false</tt> otherwise.
       */
      bool is_gl_capable() const;

      /** Returns the Gdk::GL::Window held by the Gdk::Window .
       *
       * @return The Gdk::GL::Window.
       */
      Glib::RefPtr<Window> get_gl_window() const;

      /** Returns the Gdk::GL::Drawable held by the Gdk::Window .
       *
       * @return The Gdk::GL::Drawable.
       */
      Glib::RefPtr<Gdk::GL::Drawable> get_gl_drawable() const;

    private:
      const Glib::RefPtr<Gdk::Window>& window_;

      friend WindowExtProxy ext(const Glib::RefPtr<Gdk::Window>&);
      friend const WindowExtProxy ext(const Glib::RefPtr<const Gdk::Window>&);
    };

    /** OpenGL extension API wrapper.
     * This is a Gdk::Window wrapper to invoke OpenGL extension function.
     * See Gdk::GL::WindowExtProxy for available functions.
     *
     * Here is a simple example:
     * @code
     * Glib::RefPtr<Gdk::Window> window = widget.get_window();
     * Glib::RefPtr<Gdk::GL::Window> glwindow =
     *   Gdk::GL::ext(window).set_gl_capability(glconfig);
     * std::cout << "OpenGL-capable? "
     *           << Gdk::GL::ext(window).is_gl_capable()
     *           << std::endl;
     * @endcode
     *
     * @param window A Gdk::Window.
     */
    inline
    WindowExtProxy ext(const Glib::RefPtr<Gdk::Window>& window)
    { return WindowExtProxy(window); }

    /** OpenGL extension API wrapper.
     * This is a Gdk::Window wrapper to invoke OpenGL extension function.
     * See Gdk::GL::WindowExtProxy for available functions.
     *
     * @param window A Gdk::Window.
     */
    inline
    const WindowExtProxy ext(const Glib::RefPtr<const Gdk::Window>& window)
    { return WindowExtProxy(reinterpret_cast<const Glib::RefPtr<Gdk::Window>&>(window)); }

  } // namespace GL
} // namespace Gdk

#endif // _GDKMM_GL_WINDOWEXT_H