summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--doxygen/Doxyfile5
-rw-r--r--include/waffle/waffle.h9
-rw-r--r--include/waffle/waffle_attrib_list.h8
-rw-r--r--include/waffle/waffle_config.h8
-rw-r--r--include/waffle/waffle_context.h8
-rw-r--r--include/waffle/waffle_display.h8
-rw-r--r--include/waffle/waffle_enum.h8
-rw-r--r--include/waffle/waffle_error.h8
-rw-r--r--include/waffle/waffle_gl_misc.h8
-rw-r--r--include/waffle/waffle_init.h7
-rw-r--r--include/waffle/waffle_visibility.h7
-rw-r--r--include/waffle/waffle_window.h6
-rw-r--r--src/waffle/api/api_priv.c9
-rw-r--r--src/waffle/api/api_priv.h11
-rw-r--r--src/waffle/api/waffle_attrib_list.c8
-rw-r--r--src/waffle/api/waffle_config.c7
-rw-r--r--src/waffle/api/waffle_context.c7
-rw-r--r--src/waffle/api/waffle_display.c7
-rw-r--r--src/waffle/api/waffle_enum.c7
-rw-r--r--src/waffle/api/waffle_error.c8
-rw-r--r--src/waffle/api/waffle_gl_misc.c7
-rw-r--r--src/waffle/api/waffle_init.c7
-rw-r--r--src/waffle/api/waffle_window.c7
-rw-r--r--src/waffle/core/wcore.doxy_include16
-rw-r--r--src/waffle/core/wcore_config_attrs.c9
-rw-r--r--src/waffle/core/wcore_config_attrs.h12
-rw-r--r--src/waffle/core/wcore_error.c9
-rw-r--r--src/waffle/core/wcore_error.h16
-rw-r--r--src/waffle/core/wcore_platform.c7
-rw-r--r--src/waffle/core/wcore_platform.h12
-rw-r--r--src/waffle/core/wcore_tinfo.c18
-rw-r--r--src/waffle/core/wcore_tinfo.h17
-rw-r--r--src/waffle/egl/egl.h11
-rw-r--r--src/waffle/egl/egl_native_template.c7
-rw-r--r--src/waffle/egl/egl_native_template.h12
-rw-r--r--src/waffle/egl/egl_no_native.c7
-rw-r--r--src/waffle/egl/egl_no_native.h12
-rw-r--r--src/waffle/glx/glx.doxy_include16
-rw-r--r--src/waffle/glx/glx_config.c7
-rw-r--r--src/waffle/glx/glx_config.h8
-rw-r--r--src/waffle/glx/glx_context.c7
-rw-r--r--src/waffle/glx/glx_context.h10
-rw-r--r--src/waffle/glx/glx_display.c7
-rw-r--r--src/waffle/glx/glx_display.h8
-rw-r--r--src/waffle/glx/glx_gl_misc.c7
-rw-r--r--src/waffle/glx/glx_gl_misc.h8
-rw-r--r--src/waffle/glx/glx_platform.c7
-rw-r--r--src/waffle/glx/glx_platform.h8
-rw-r--r--src/waffle/glx/glx_priv_types.h8
-rw-r--r--src/waffle/glx/glx_window.c7
-rw-r--r--src/waffle/glx/glx_window.h8
-rw-r--r--src/waffle/native.h28
-rw-r--r--src/waffle/wayland/wayland.doxy_include16
-rw-r--r--src/waffle/wayland/wayland_config.c7
-rw-r--r--src/waffle/wayland/wayland_config.h10
-rw-r--r--src/waffle/wayland/wayland_context.c7
-rw-r--r--src/waffle/wayland/wayland_context.h10
-rw-r--r--src/waffle/wayland/wayland_display.c7
-rw-r--r--src/waffle/wayland/wayland_display.h10
-rw-r--r--src/waffle/wayland/wayland_gl_misc.c9
-rw-r--r--src/waffle/wayland/wayland_gl_misc.h10
-rw-r--r--src/waffle/wayland/wayland_platform.c7
-rw-r--r--src/waffle/wayland/wayland_platform.h10
-rw-r--r--src/waffle/wayland/wayland_priv_egl.c9
-rw-r--r--src/waffle/wayland/wayland_priv_egl.h8
-rw-r--r--src/waffle/wayland/wayland_priv_types.h8
-rw-r--r--src/waffle/wayland/wayland_window.c9
-rw-r--r--src/waffle/wayland/wayland_window.h10
-rw-r--r--src/waffle/x11/x11.c9
-rw-r--r--src/waffle/x11/x11.h9
-rw-r--r--src/waffle/x11_egl/xegl.doxy_include16
-rw-r--r--src/waffle/x11_egl/xegl_config.c7
-rw-r--r--src/waffle/x11_egl/xegl_config.h10
-rw-r--r--src/waffle/x11_egl/xegl_context.c7
-rw-r--r--src/waffle/x11_egl/xegl_context.h10
-rw-r--r--src/waffle/x11_egl/xegl_display.c7
-rw-r--r--src/waffle/x11_egl/xegl_display.h10
-rw-r--r--src/waffle/x11_egl/xegl_gl_misc.c9
-rw-r--r--src/waffle/x11_egl/xegl_gl_misc.h10
-rw-r--r--src/waffle/x11_egl/xegl_platform.c7
-rw-r--r--src/waffle/x11_egl/xegl_platform.h10
-rw-r--r--src/waffle/x11_egl/xegl_priv_egl.c9
-rw-r--r--src/waffle/x11_egl/xegl_priv_egl.h10
-rw-r--r--src/waffle/x11_egl/xegl_priv_types.h8
-rw-r--r--src/waffle/x11_egl/xegl_window.c9
-rw-r--r--src/waffle/x11_egl/xegl_window.h10
86 files changed, 704 insertions, 94 deletions
diff --git a/doxygen/Doxyfile b/doxygen/Doxyfile
index a0de49e..304d3b2 100644
--- a/doxygen/Doxyfile
+++ b/doxygen/Doxyfile
@@ -680,7 +680,10 @@ INPUT_ENCODING = UTF-8
# *.hxx *.hpp *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm *.dox *.py
# *.f90 *.f *.for *.vhd *.vhdl
-FILE_PATTERNS =
+FILE_PATTERNS = \
+ *.c \
+ *.doxy_include \
+ *.h \
# The RECURSIVE tag can be used to turn specify whether or not subdirectories
# should be searched for input files as well. Possible values are YES and NO.
diff --git a/include/waffle/waffle.h b/include/waffle/waffle.h
index eeca755..6930bea 100644
--- a/include/waffle/waffle.h
+++ b/include/waffle/waffle.h
@@ -12,11 +12,16 @@
// See the License for the specific language governing permissions and
// limitations under the License.
-#pragma once
+/// @defgroup waffle_api waffle_api
+///
+/// @brief Waffle's public API
+/// @{
/// @file
/// @brief Convenience header to include all waffle headers.
+#pragma once
+
#include "waffle_attrib_list.h"
#include "waffle_config.h"
#include "waffle_context.h"
@@ -27,3 +32,5 @@
#include "waffle_init.h"
#include "waffle_visibility.h"
#include "waffle_window.h"
+
+/// @} \ No newline at end of file
diff --git a/include/waffle/waffle_attrib_list.h b/include/waffle/waffle_attrib_list.h
index 0317f92..770130d 100644
--- a/include/waffle/waffle_attrib_list.h
+++ b/include/waffle/waffle_attrib_list.h
@@ -12,6 +12,12 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @defgroup waffle_attrib_list waffle_attrib_list
+/// @ingroup waffle_api
+/// @{
+
+/// @file
+
#pragma once
#include <stdbool.h>
@@ -55,3 +61,5 @@ waffle_attrib_list_update(
#ifdef __cplusplus
} // end extern "C"
#endif
+
+/// @}
diff --git a/include/waffle/waffle_config.h b/include/waffle/waffle_config.h
index caf03ab..3a309d6 100644
--- a/include/waffle/waffle_config.h
+++ b/include/waffle/waffle_config.h
@@ -12,6 +12,12 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @defgroup waffle_config waffle_config
+/// @ingroup waffle_api
+/// @{
+
+/// @file
+
#pragma once
#include <stdbool.h>
@@ -81,3 +87,5 @@ waffle_config_destroy(struct waffle_config *self);
#ifdef __cplusplus
} // end extern "C"
#endif
+
+/// @}
diff --git a/include/waffle/waffle_context.h b/include/waffle/waffle_context.h
index 76dee0e..b91795b 100644
--- a/include/waffle/waffle_context.h
+++ b/include/waffle/waffle_context.h
@@ -12,6 +12,12 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @defgroup waffle_context waffle_context
+/// @ingroup waffle_api
+/// @{
+
+/// @file
+
#pragma once
#include <stdbool.h>
@@ -36,3 +42,5 @@ waffle_context_destroy(struct waffle_context *self);
#ifdef __cplusplus
} // end extern "C"
#endif
+
+/// @}
diff --git a/include/waffle/waffle_display.h b/include/waffle/waffle_display.h
index 955b1ff..f28606a 100644
--- a/include/waffle/waffle_display.h
+++ b/include/waffle/waffle_display.h
@@ -12,6 +12,12 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @defgroup waffle_display waffle_display
+/// @ingroup waffle_api
+/// @{
+
+/// @file
+
#pragma once
#include <stdbool.h>
@@ -34,3 +40,5 @@ waffle_display_disconnect(struct waffle_display *self);
#ifdef __cplusplus
} // end extern "C"
#endif
+
+/// @} \ No newline at end of file
diff --git a/include/waffle/waffle_enum.h b/include/waffle/waffle_enum.h
index 6770b84..e774e7e 100644
--- a/include/waffle/waffle_enum.h
+++ b/include/waffle/waffle_enum.h
@@ -12,6 +12,12 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @defgroup waffle_enum waffle_enum
+/// @ingroup waffle_api
+/// @{
+
+/// @file
+
#pragma once
#include <stddef.h>
@@ -80,3 +86,5 @@ enum waffle_enum {
#ifdef __cplusplus
} // end extern "C"
#endif
+
+/// @} \ No newline at end of file
diff --git a/include/waffle/waffle_error.h b/include/waffle/waffle_error.h
index 598ee7e..8974d40 100644
--- a/include/waffle/waffle_error.h
+++ b/include/waffle/waffle_error.h
@@ -12,6 +12,12 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @defgroup waffle_error waffle_error
+/// @ingroup waffle_api
+/// @{
+
+/// @file
+
#pragma once
#include <stdint.h>
@@ -121,3 +127,5 @@ enum waffle_error {
#ifdef __cplusplus
} // end extern "C"
#endif
+
+/// @} \ No newline at end of file
diff --git a/include/waffle/waffle_gl_misc.h b/include/waffle/waffle_gl_misc.h
index d689755..7dd3d8c 100644
--- a/include/waffle/waffle_gl_misc.h
+++ b/include/waffle/waffle_gl_misc.h
@@ -12,6 +12,12 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @defgroup waffle_gl_misc waffle_gl_misc
+/// @ingroup waffle_api
+/// @{
+
+/// @file
+
#pragma once
#include <stdbool.h>
@@ -41,3 +47,5 @@ waffle_dlsym_gl(const char *name);
#ifdef __cplusplus
} // end extern "C"
#endif
+
+/// @}
diff --git a/include/waffle/waffle_init.h b/include/waffle/waffle_init.h
index 5cf0c3c..f10736d 100644
--- a/include/waffle/waffle_init.h
+++ b/include/waffle/waffle_init.h
@@ -12,8 +12,11 @@
// See the License for the specific language governing permissions and
// limitations under the License.
-/// @file
+/// @defgroup waffle_init waffle_init
+/// @ingroup waffle_api
+///
/// @brief Initializing and terminating global library state.
+/// @{
#pragma once
@@ -126,3 +129,5 @@ waffle_finish(void);
#ifdef __cplusplus
} // end extern "C"
#endif
+
+/// @} \ No newline at end of file
diff --git a/include/waffle/waffle_visibility.h b/include/waffle/waffle_visibility.h
index 792453f..728e22e 100644
--- a/include/waffle/waffle_visibility.h
+++ b/include/waffle/waffle_visibility.h
@@ -12,8 +12,11 @@
// See the License for the specific language governing permissions and
// limitations under the License.
-/// @file
+/// @defgroup waffle_visibility waffle_visibility
+/// @ingroup waffle_api
+///
/// @brief Macros for visibility of shared library symbols.
+/// @{
#pragma once
@@ -45,3 +48,5 @@ extern "C" {
#ifdef __cplusplus
} // end extern "C"
#endif
+
+/// @}
diff --git a/include/waffle/waffle_window.h b/include/waffle/waffle_window.h
index 5e07761..5c3fb32 100644
--- a/include/waffle/waffle_window.h
+++ b/include/waffle/waffle_window.h
@@ -12,6 +12,10 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @defgroup waffle_window waffle_window
+/// @ingroup waffle_api
+/// @{
+
#pragma once
#include <stdbool.h>
@@ -41,3 +45,5 @@ waffle_window_swap_buffers(struct waffle_window *self);
#ifdef __cplusplus
} // end extern "C"
#endif
+
+/// @}
diff --git a/src/waffle/api/api_priv.c b/src/waffle/api/api_priv.c
index 83d10b9..074fa65 100644
--- a/src/waffle/api/api_priv.c
+++ b/src/waffle/api/api_priv.c
@@ -12,6 +12,11 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @addtogroup api_priv
+/// @{
+
+/// @file
+
#include <stdio.h>
#include <stdlib.h>
@@ -62,4 +67,6 @@ api_new_object_id(void)
}
return counter++;
-} \ No newline at end of file
+}
+
+/// @} \ No newline at end of file
diff --git a/src/waffle/api/api_priv.h b/src/waffle/api/api_priv.h
index 1be1991..6511153 100644
--- a/src/waffle/api/api_priv.h
+++ b/src/waffle/api/api_priv.h
@@ -12,6 +12,14 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @defgroup api_priv api_priv
+/// @ingroup waffle_api
+///
+/// @brief Private bits for implementing Waffle's API.
+/// @{
+
+/// @file
+
#pragma once
#include <stdbool.h>
@@ -38,9 +46,6 @@ api_check_entry(const struct api_object *obj_list[], int length);
size_t
api_new_object_id(void);
-/// @defgroup API Types
-/// @{
-
struct api_object {
size_t platform_id;
size_t object_id;
diff --git a/src/waffle/api/waffle_attrib_list.c b/src/waffle/api/waffle_attrib_list.c
index 2812aa3..fae1c54 100644
--- a/src/waffle/api/waffle_attrib_list.c
+++ b/src/waffle/api/waffle_attrib_list.c
@@ -12,6 +12,12 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @addtogroup waffle_attrib_list
+/// @{
+
+/// @file
+/// @ingroup api
+
#include <waffle/waffle_attrib_list.h>
int32_t
@@ -79,3 +85,5 @@ waffle_attrib_list_update(
return false;
}
}
+
+/// @} \ No newline at end of file
diff --git a/src/waffle/api/waffle_config.c b/src/waffle/api/waffle_config.c
index 6805b56..048d705 100644
--- a/src/waffle/api/waffle_config.c
+++ b/src/waffle/api/waffle_config.c
@@ -12,6 +12,11 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @addtogroup waffle_config
+/// @{
+
+/// @file
+
#include <waffle/waffle_config.h>
#include <stdlib.h>
@@ -81,3 +86,5 @@ waffle_config_destroy(struct waffle_config *self)
free(self);
return ok;
}
+
+/// @}
diff --git a/src/waffle/api/waffle_context.c b/src/waffle/api/waffle_context.c
index 93523a1..1f12c91 100644
--- a/src/waffle/api/waffle_context.c
+++ b/src/waffle/api/waffle_context.c
@@ -12,6 +12,11 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @addtogroup waffle_context
+/// @{
+
+/// @file
+
#include <waffle/waffle_context.h>
#include <stdlib.h>
@@ -80,3 +85,5 @@ waffle_context_destroy(struct waffle_context *self)
free(self);
return ok;
}
+
+/// @} \ No newline at end of file
diff --git a/src/waffle/api/waffle_display.c b/src/waffle/api/waffle_display.c
index 7f91f84..d5d4b9d 100644
--- a/src/waffle/api/waffle_display.c
+++ b/src/waffle/api/waffle_display.c
@@ -12,6 +12,11 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @addtogroup waffle_display
+/// @{
+
+/// @file
+
#include <waffle/waffle_display.h>
#include <stdlib.h>
@@ -67,3 +72,5 @@ waffle_display_disconnect(struct waffle_display *self)
free(self);
return ok;
}
+
+/// @} \ No newline at end of file
diff --git a/src/waffle/api/waffle_enum.c b/src/waffle/api/waffle_enum.c
index 6dce616..435dcc4 100644
--- a/src/waffle/api/waffle_enum.c
+++ b/src/waffle/api/waffle_enum.c
@@ -12,6 +12,11 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @addtogroup waffle_enum
+/// @{
+
+/// @file
+
#include <waffle/waffle_enum.h>
const char*
@@ -44,3 +49,5 @@ waffle_enum_to_string(int32_t e)
#undef CASE
}
}
+
+/// @} \ No newline at end of file
diff --git a/src/waffle/api/waffle_error.c b/src/waffle/api/waffle_error.c
index 4b3a533..cda6520 100644
--- a/src/waffle/api/waffle_error.c
+++ b/src/waffle/api/waffle_error.c
@@ -12,9 +12,15 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @addtogroup waffle_error
+/// @{
+
+/// @file
+
#include <string.h>
#include <waffle/core/wcore_error.h>
+
static int
min(int x, int y)
{
@@ -70,3 +76,5 @@ waffle_error_to_string(int32_t e)
#undef CASE
}
}
+
+/// @}
diff --git a/src/waffle/api/waffle_gl_misc.c b/src/waffle/api/waffle_gl_misc.c
index 0c2cd07..cd67aef 100644
--- a/src/waffle/api/waffle_gl_misc.c
+++ b/src/waffle/api/waffle_gl_misc.c
@@ -12,6 +12,11 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @addtogroup waffle_gl_misc
+/// @{
+
+/// @file
+
#include <waffle/waffle_gl_misc.h>
#include <stddef.h>
@@ -68,3 +73,5 @@ waffle_dlsym_gl(const char *name)
return api_current_platform->dispatch->
dlsym_gl(api_current_platform->native, name);
}
+
+/// @} \ No newline at end of file
diff --git a/src/waffle/api/waffle_init.c b/src/waffle/api/waffle_init.c
index 0322ded..8e6d404 100644
--- a/src/waffle/api/waffle_init.c
+++ b/src/waffle/api/waffle_init.c
@@ -12,6 +12,11 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @addtogroup waffle_init
+/// @{
+
+/// @file
+
#include <waffle/waffle_init.h>
#include <waffle/waffle_enum.h>
@@ -130,3 +135,5 @@ waffle_finish(void)
api_current_platform = NULL;
return ok;
}
+
+/// @} \ No newline at end of file
diff --git a/src/waffle/api/waffle_window.c b/src/waffle/api/waffle_window.c
index 89b448e..175f36d 100644
--- a/src/waffle/api/waffle_window.c
+++ b/src/waffle/api/waffle_window.c
@@ -12,6 +12,11 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @addtogroup waffle_window
+/// @{
+
+/// @file
+
#include <waffle/waffle_window.h>
#include <stdlib.h>
@@ -88,3 +93,5 @@ waffle_window_swap_buffers(struct waffle_window *self)
return api_current_platform->dispatch->
window_swap_buffers(self->native);
}
+
+/// @} \ No newline at end of file
diff --git a/src/waffle/core/wcore.doxy_include b/src/waffle/core/wcore.doxy_include
new file mode 100644
index 0000000..5b9de40
--- /dev/null
+++ b/src/waffle/core/wcore.doxy_include
@@ -0,0 +1,16 @@
+// Copyright 2012 Intel Corporation
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+/// @defgroup wcore wcore
+/// @brief Core infrastructure \ No newline at end of file
diff --git a/src/waffle/core/wcore_config_attrs.c b/src/waffle/core/wcore_config_attrs.c
index e869b86..3a49aab 100644
--- a/src/waffle/core/wcore_config_attrs.c
+++ b/src/waffle/core/wcore_config_attrs.c
@@ -12,6 +12,11 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @addtogroup wcore_config_attrs
+/// @{
+
+/// @file
+
#include "wcore_config_attrs.h"
#include <stdlib.h>
@@ -113,4 +118,6 @@ wcore_config_attrs_parse(
attrs->color_buffer_size += attrs->alpha_size;
return attrs;
-} \ No newline at end of file
+}
+
+/// @} \ No newline at end of file
diff --git a/src/waffle/core/wcore_config_attrs.h b/src/waffle/core/wcore_config_attrs.h
index 1b3e233..eb89f17 100644
--- a/src/waffle/core/wcore_config_attrs.h
+++ b/src/waffle/core/wcore_config_attrs.h
@@ -12,6 +12,14 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @defgroup wcore_config_attrs wcore_config_attrs
+/// @ingroup wcore
+///
+/// @brief Process the attribute list given to waffle_config_choose().
+/// @{
+
+/// @file
+
#pragma once
#include <stdbool.h>
@@ -37,4 +45,6 @@ struct wcore_config_attrs {
bool
wcore_config_attrs_parse(
const int32_t waffle_attrib_list[],
- struct wcore_config_attrs *attrs); \ No newline at end of file
+ struct wcore_config_attrs *attrs);
+
+/// @} \ No newline at end of file
diff --git a/src/waffle/core/wcore_error.c b/src/waffle/core/wcore_error.c
index 470083a..99315cf 100644
--- a/src/waffle/core/wcore_error.c
+++ b/src/waffle/core/wcore_error.c
@@ -12,6 +12,11 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @addtogroup wcore_error
+/// @{
+
+/// @file
+
#include "wcore_error.h"
#include <stdarg.h>
@@ -137,4 +142,6 @@ const char*
wcore_error_get_message(void)
{
return wcore_tinfo_get()->error->message;
-} \ No newline at end of file
+}
+
+/// @} \ No newline at end of file
diff --git a/src/waffle/core/wcore_error.h b/src/waffle/core/wcore_error.h
index 9ddd412..0051977 100644
--- a/src/waffle/core/wcore_error.h
+++ b/src/waffle/core/wcore_error.h
@@ -12,17 +12,23 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @defgroup wcore_error wcore_error
+/// @ingroup wcore
+///
+/// @brief Error handling and reporting
+///
+/// All functions operate on thread-local storage.
+///
+/// @{
+
+/// @file
+
#pragma once
#include <stdbool.h>
#include <waffle/waffle_error.h>
-/// @defgroup wcore_error
-///
-/// All functions operate on thread-local storage.
-///
-/// @{
/// @brief Thread-local info for the wcore_error module.
struct wcore_error_tinfo;
diff --git a/src/waffle/core/wcore_platform.c b/src/waffle/core/wcore_platform.c
index 14105d9..bb656fc 100644
--- a/src/waffle/core/wcore_platform.c
+++ b/src/waffle/core/wcore_platform.c
@@ -12,6 +12,11 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @addtogroup wcore_platform
+/// @{
+
+/// @file
+
#include "wcore_platform.h"
#include <stdbool.h>
@@ -118,3 +123,5 @@ wcore_platform_destroy(struct wcore_platform *self)
return ok;
}
+
+/// @} \ No newline at end of file
diff --git a/src/waffle/core/wcore_platform.h b/src/waffle/core/wcore_platform.h
index f93877a..9862af3 100644
--- a/src/waffle/core/wcore_platform.h
+++ b/src/waffle/core/wcore_platform.h
@@ -12,6 +12,14 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @defgroup wcore_platform wcore_platform
+/// @ingroup wcore
+///
+/// @brief Abstract native platform.
+/// @{
+
+/// @file
+
#pragma once
#include <stdbool.h>
@@ -38,4 +46,6 @@ struct wcore_platform*
wcore_platform_create(int platform, int gl_api);
bool
-wcore_platform_destroy(struct wcore_platform *self); \ No newline at end of file
+wcore_platform_destroy(struct wcore_platform *self);
+
+/// @} \ No newline at end of file
diff --git a/src/waffle/core/wcore_tinfo.c b/src/waffle/core/wcore_tinfo.c
index 20ef938..a035475 100644
--- a/src/waffle/core/wcore_tinfo.c
+++ b/src/waffle/core/wcore_tinfo.c
@@ -12,8 +12,10 @@
// See the License for the specific language governing permissions and
// limitations under the License.
-/// @file wcore_tinfo.c
-/// @ingroup wcore_tinfo
+/// @addtogroup wcore_tinfo
+/// @{
+
+/// @file
#include "wcore_tinfo.h"
@@ -25,13 +27,6 @@
#include "wcore_error.h"
-/// @addtogroup wcore_tinfo
-/// @{
-
-// ---------------------------------------------------------------------------
-/// @name Private
-/// @{
-
/// @brief Key for @ref wcore_tinfo_tl_singleton.
static pthread_key_t wcore_tinfo_key;
@@ -119,9 +114,6 @@ wcore_tinfo_key_init(void)
pthread_mutex_unlock(&mutex);
}
-/// @} name Private
-// ---------------------------------------------------------------------------
-
struct wcore_tinfo*
wcore_tinfo_get(void)
{
@@ -147,4 +139,4 @@ wcore_tinfo_get(void)
return wcore_tinfo_tl_singleton;
}
-/// @} addtogroup wcore_tinfo
+/// @}
diff --git a/src/waffle/core/wcore_tinfo.h b/src/waffle/core/wcore_tinfo.h
index 091b40b..d196af6 100644
--- a/src/waffle/core/wcore_tinfo.h
+++ b/src/waffle/core/wcore_tinfo.h
@@ -12,20 +12,18 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @defgroup wcore_tinfo wcore_tinfo
+/// @ingroup wcore
+///
+/// @brief Thread-local info.
+/// @{
+
/// @file
-/// @ingroup wcore_tinfo
#pragma once
struct wcore_error_tinfo;
-/// @defgroup wcore_tinfo
-/// @brief Thread-local info.
-/// @{
-
-/// @name Public
-/// @{
-
/// @brief Thread-local info for all of Waffle.
struct wcore_tinfo {
/// @brief Info for @ref wcore_error.
@@ -35,5 +33,4 @@ struct wcore_tinfo {
/// @brief Get the thread-local info for the current thread.
struct wcore_tinfo* wcore_tinfo_get(void);
-/// @} name Public
-/// @} defgroup wcore_tinfo
+/// @}
diff --git a/src/waffle/egl/egl.h b/src/waffle/egl/egl.h
index 72cdd3a..d177bfd 100644
--- a/src/waffle/egl/egl.h
+++ b/src/waffle/egl/egl.h
@@ -12,13 +12,18 @@
// See the License for the specific language governing permissions and
// limitations under the License.
-/// @file
-/// @brief Wrappers for EGL functions.
+/// @defgroup egl egl
///
+/// @brief Wrappers for EGL functions.
+/// @{
+
+/// @file
/// Waffle supports multiple EGL platforms (Android, Wayland, X11/EGL). This
/// header declares all common code.
#pragma once
#include "egl_native_template.h"
-#include "egl_no_native.h" \ No newline at end of file
+#include "egl_no_native.h"
+
+/// @} \ No newline at end of file
diff --git a/src/waffle/egl/egl_native_template.c b/src/waffle/egl/egl_native_template.c
index 31203c7..4116a2a 100644
--- a/src/waffle/egl/egl_native_template.c
+++ b/src/waffle/egl/egl_native_template.c
@@ -12,6 +12,9 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @addtogroup egl_native_template
+/// @{
+
#include "egl_native_template.h"
#include <stdbool.h>
@@ -61,4 +64,6 @@ NATIVE_EGL(create_window_surface)(
egl_get_error("eglCreateWindowSurface");
return surf;
-} \ No newline at end of file
+}
+
+/// @} \ No newline at end of file
diff --git a/src/waffle/egl/egl_native_template.h b/src/waffle/egl/egl_native_template.h
index 3abb704..f7a8540 100644
--- a/src/waffle/egl/egl_native_template.h
+++ b/src/waffle/egl/egl_native_template.h
@@ -12,9 +12,13 @@
// See the License for the specific language governing permissions and
// limitations under the License.
-/// @file
-/// @brief Wrappers for EGL functions that have EGLNative parameters.
+/// @defgroup egl_native_template egl_native_template
+/// @ingroup egl
///
+/// @brief Wrappers for EGL functions that have EGLNative parameters.
+/// @{
+
+/// @file
/// This header follows the same order as the official EGL header.
#pragma once
@@ -34,4 +38,6 @@ NATIVE_EGL(create_window_surface)(
EGLDisplay dpy,
EGLConfig config,
EGLNativeWindowType native_window,
- EGLint render_buffer_attrib); \ No newline at end of file
+ EGLint render_buffer_attrib);
+
+/// @} \ No newline at end of file
diff --git a/src/waffle/egl/egl_no_native.c b/src/waffle/egl/egl_no_native.c
index 9e82755..944da6e 100644
--- a/src/waffle/egl/egl_no_native.c
+++ b/src/waffle/egl/egl_no_native.c
@@ -12,6 +12,9 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @addtogroup egl_no_native
+/// @{
+
#include "egl_no_native.h"
#include <stdlib.h>
@@ -253,4 +256,6 @@ egl_get_render_buffer_attrib(
wcore_error_internal("%s", "attrs->double_buffered has bad value");
return false;
}
-} \ No newline at end of file
+}
+
+/// @} \ No newline at end of file
diff --git a/src/waffle/egl/egl_no_native.h b/src/waffle/egl/egl_no_native.h
index c5d609c..47b5bd6 100644
--- a/src/waffle/egl/egl_no_native.h
+++ b/src/waffle/egl/egl_no_native.h
@@ -12,9 +12,13 @@
// See the License for the specific language governing permissions and
// limitations under the License.
-/// @file
-/// @brief Wrappers for EGL functions that lack EGLNative parameters.
+/// @defgroup egl_no_native egl_no_native
+/// @ingroup egl
///
+/// @brief Wrappers for EGL functions that lack EGLNative parameters.
+/// @{
+
+/// @file
/// This header follows the same order as the official EGL header.
#pragma once
@@ -80,4 +84,6 @@ egl_swap_buffers(
bool
egl_get_render_buffer_attrib(
const struct wcore_config_attrs *attrs,
- EGLint *egl_render_buffer_attrib); \ No newline at end of file
+ EGLint *egl_render_buffer_attrib);
+
+/// @} \ No newline at end of file
diff --git a/src/waffle/glx/glx.doxy_include b/src/waffle/glx/glx.doxy_include
new file mode 100644
index 0000000..820757c
--- /dev/null
+++ b/src/waffle/glx/glx.doxy_include
@@ -0,0 +1,16 @@
+// Copyright 2012 Intel Corporation
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+/// @defgroup glx glx
+/// @brief GLX Platform \ No newline at end of file
diff --git a/src/waffle/glx/glx_config.c b/src/waffle/glx/glx_config.c
index 6e1c832..c6d168e 100644
--- a/src/waffle/glx/glx_config.c
+++ b/src/waffle/glx/glx_config.c
@@ -12,6 +12,11 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @addtogroup glx_config
+/// @{
+
+/// @file
+
#include "glx_config.h"
#include <stdlib.h>
@@ -125,3 +130,5 @@ glx_config_destroy(union native_config *self)
free(self);
return true;
}
+
+/// @} \ No newline at end of file
diff --git a/src/waffle/glx/glx_config.h b/src/waffle/glx/glx_config.h
index 9269274..5cdd2f9 100644
--- a/src/waffle/glx/glx_config.h
+++ b/src/waffle/glx/glx_config.h
@@ -12,6 +12,12 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @defgroup glx_config glx_config
+/// @ingroup glx
+/// @{
+
+/// @file
+
#pragma once
#include <stdbool.h>
@@ -28,3 +34,5 @@ glx_config_choose(
bool
glx_config_destroy(union native_config *self);
+
+/// @} \ No newline at end of file
diff --git a/src/waffle/glx/glx_context.c b/src/waffle/glx/glx_context.c
index 14a682c..dc274d6 100644
--- a/src/waffle/glx/glx_context.c
+++ b/src/waffle/glx/glx_context.c
@@ -12,6 +12,11 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @addtogroup glx_context
+/// @{
+
+/// @file
+
#include "glx_context.h"
#include <stdlib.h>
@@ -68,3 +73,5 @@ glx_context_destroy(union native_context *self)
free(self);
return true;
}
+
+/// @} \ No newline at end of file
diff --git a/src/waffle/glx/glx_context.h b/src/waffle/glx/glx_context.h
index c75d693..1f49f3d 100644
--- a/src/waffle/glx/glx_context.h
+++ b/src/waffle/glx/glx_context.h
@@ -12,6 +12,12 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @defgroup glx_context glx_context
+/// @ingroup glx
+/// @{
+
+/// @file
+
#pragma once
#include <stdbool.h>
@@ -25,4 +31,6 @@ glx_context_create(
union native_context *share_ctx);
bool
-glx_context_destroy(union native_context *self); \ No newline at end of file
+glx_context_destroy(union native_context *self);
+
+/// @} \ No newline at end of file
diff --git a/src/waffle/glx/glx_display.c b/src/waffle/glx/glx_display.c
index 38634d2..2d8fa78 100644
--- a/src/waffle/glx/glx_display.c
+++ b/src/waffle/glx/glx_display.c
@@ -12,6 +12,11 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @addtogroup glx_display
+/// @{
+
+/// @file
+
#include "glx_display.h"
#include <stdlib.h>
@@ -67,3 +72,5 @@ glx_display_disconnect(union native_display *self)
free(self);
return ok;
}
+
+/// @} \ No newline at end of file
diff --git a/src/waffle/glx/glx_display.h b/src/waffle/glx/glx_display.h
index 803ae4a..29d54cd 100644
--- a/src/waffle/glx/glx_display.h
+++ b/src/waffle/glx/glx_display.h
@@ -12,6 +12,12 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @defgroup glx_display glx_display
+/// @ingroup glx
+/// @{
+
+/// @file
+
#pragma once
#include <stdbool.h>
@@ -26,3 +32,5 @@ glx_display_connect(
bool
glx_display_disconnect(union native_display *self);
+
+/// @} \ No newline at end of file
diff --git a/src/waffle/glx/glx_gl_misc.c b/src/waffle/glx/glx_gl_misc.c
index f4b3dd3..d5e0af9 100644
--- a/src/waffle/glx/glx_gl_misc.c
+++ b/src/waffle/glx/glx_gl_misc.c
@@ -12,6 +12,11 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @addtogroup glx_gl_misc
+/// @{
+
+/// @file
+
#include "glx_gl_misc.h"
#include <dlfcn.h>
@@ -46,3 +51,5 @@ glx_dlsym_gl(
{
return dlsym(native->glx->libgl, name);
}
+
+/// @} \ No newline at end of file
diff --git a/src/waffle/glx/glx_gl_misc.h b/src/waffle/glx/glx_gl_misc.h
index 2e502a5..31513d1 100644
--- a/src/waffle/glx/glx_gl_misc.h
+++ b/src/waffle/glx/glx_gl_misc.h
@@ -12,6 +12,12 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @defgroup glx_gl_misc glx_gl_misc
+/// @ingroup glx
+/// @{
+
+/// @file
+
#pragma once
#include <stdbool.h>
@@ -36,3 +42,5 @@ void*
glx_dlsym_gl(
union native_platform *native,
const char *name);
+
+/// @} \ No newline at end of file
diff --git a/src/waffle/glx/glx_platform.c b/src/waffle/glx/glx_platform.c
index d508886..e9599d4 100644
--- a/src/waffle/glx/glx_platform.c
+++ b/src/waffle/glx/glx_platform.c
@@ -12,6 +12,11 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @addtogroup glx_platform
+/// @{
+
+/// @file
+
#include "glx_platform.h"
#include <dlfcn.h>
@@ -108,3 +113,5 @@ glx_platform_destroy(union native_platform *self)
free(self);
return !error;
}
+
+/// @} \ No newline at end of file
diff --git a/src/waffle/glx/glx_platform.h b/src/waffle/glx/glx_platform.h
index 4c381a6..480cfa1 100644
--- a/src/waffle/glx/glx_platform.h
+++ b/src/waffle/glx/glx_platform.h
@@ -12,6 +12,12 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @defgroup glx_platform glx_platform
+/// @ingroup glx
+/// @{
+
+/// @file
+
#pragma once
#include <stdbool.h>
@@ -26,3 +32,5 @@ glx_platform_create(
bool
glx_platform_destroy(union native_platform *self);
+
+/// @} \ No newline at end of file
diff --git a/src/waffle/glx/glx_priv_types.h b/src/waffle/glx/glx_priv_types.h
index 6c5d828..24533cd 100644
--- a/src/waffle/glx/glx_priv_types.h
+++ b/src/waffle/glx/glx_priv_types.h
@@ -12,6 +12,12 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @defgroup glx_priv_types glx_priv_types
+/// @ingroup glx
+/// @{
+
+/// @file
+
#pragma once
#include <GL/glx.h>
@@ -56,3 +62,5 @@ struct glx_window {
xcb_window_t xcb_window;
GLXWindow glx_window;
};
+
+/// @}
diff --git a/src/waffle/glx/glx_window.c b/src/waffle/glx/glx_window.c
index cf069ad..a7caf00 100644
--- a/src/waffle/glx/glx_window.c
+++ b/src/waffle/glx/glx_window.c
@@ -12,6 +12,11 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @addtogroup glx_window
+/// @{
+
+/// @file
+
#include "glx_window.h"
#include <stdlib.h>
@@ -97,3 +102,5 @@ glx_window_swap_buffers(union native_window *self)
glXSwapBuffers(dpy->glx->xlib_display, self->glx->glx_window);
return true;
}
+
+/// @} \ No newline at end of file
diff --git a/src/waffle/glx/glx_window.h b/src/waffle/glx/glx_window.h
index 36c2c5b..4c7d877 100644
--- a/src/waffle/glx/glx_window.h
+++ b/src/waffle/glx/glx_window.h
@@ -12,6 +12,12 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @defgroup glx_window glx_window
+/// @ingroup glx
+/// @{
+
+/// @file
+
#pragma once
#include <stdbool.h>
@@ -31,3 +37,5 @@ glx_window_destroy(union native_window *self);
bool
glx_window_swap_buffers(union native_window *self);
+
+/// @} \ No newline at end of file
diff --git a/src/waffle/native.h b/src/waffle/native.h
index aa91901..e408cbb 100644
--- a/src/waffle/native.h
+++ b/src/waffle/native.h
@@ -12,6 +12,11 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @defgroup native native
+/// @{
+
+/// @file
+
#pragma once
#include <stdbool.h>
@@ -53,9 +58,6 @@ NATIVE_UNION(window);
struct native_dispatch {
- /// @defgroup native_display
- /// @{
-
union native_display*
(*display_connect)(
union native_platform *platform,
@@ -64,10 +66,6 @@ struct native_dispatch {
bool
(*display_disconnect)(union native_display *self);
- /// @}
- /// @defgroup native_config
- /// @{
-
union native_config*
(*config_choose)(
union native_display *dpy,
@@ -76,10 +74,6 @@ struct native_dispatch {
bool
(*config_destroy)(union native_config *self);
- /// @}
- /// @defgroup native_context
- /// @{
-
union native_context*
(*context_create)(
union native_config *config,
@@ -88,10 +82,6 @@ struct native_dispatch {
bool
(*context_destroy)(union native_context *self);
- /// @}
- /// @defgroup native_window
- /// @{
-
union native_window*
(*window_create)(
union native_config *config,
@@ -104,10 +94,6 @@ struct native_dispatch {
bool
(*window_swap_buffers)(union native_window *self);
- /// @}
- /// @defgroup native gl misc
- /// @{
-
bool
(*make_current)(
union native_display *dpy,
@@ -123,6 +109,6 @@ struct native_dispatch {
(*dlsym_gl)(
union native_platform *platform,
const char *name);
-
- /// @}
};
+
+/// @}
diff --git a/src/waffle/wayland/wayland.doxy_include b/src/waffle/wayland/wayland.doxy_include
new file mode 100644
index 0000000..f4409e6
--- /dev/null
+++ b/src/waffle/wayland/wayland.doxy_include
@@ -0,0 +1,16 @@
+// Copyright 2012 Intel Corporation
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+/// @defgroup wayland wayland
+/// @brief Wayland Platform
diff --git a/src/waffle/wayland/wayland_config.c b/src/waffle/wayland/wayland_config.c
index 1fd7fb6..8d0388f 100644
--- a/src/waffle/wayland/wayland_config.c
+++ b/src/waffle/wayland/wayland_config.c
@@ -12,6 +12,11 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @addtogroup wayland_config
+/// @{
+
+/// @file
+
#include "wayland_config.h"
#include <stdlib.h>
@@ -64,3 +69,5 @@ wayland_config_destroy(union native_config *self)
free(self);
return true;
}
+
+/// @}
diff --git a/src/waffle/wayland/wayland_config.h b/src/waffle/wayland/wayland_config.h
index 74ac9dd..a88f433 100644
--- a/src/waffle/wayland/wayland_config.h
+++ b/src/waffle/wayland/wayland_config.h
@@ -12,6 +12,12 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @defgroup wayland_config wayland_config
+/// @ingroup wayland
+/// @{
+
+/// @file
+
#pragma once
#include <stdbool.h>
@@ -27,4 +33,6 @@ wayland_config_choose(
const struct wcore_config_attrs *attrs);
bool
-wayland_config_destroy(union native_config *self); \ No newline at end of file
+wayland_config_destroy(union native_config *self);
+
+/// @}
diff --git a/src/waffle/wayland/wayland_context.c b/src/waffle/wayland/wayland_context.c
index fe4a9a7..ecd9658 100644
--- a/src/waffle/wayland/wayland_context.c
+++ b/src/waffle/wayland/wayland_context.c
@@ -12,6 +12,11 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @addtogroup wayland_context
+/// @{
+
+/// @file
+
#include "wayland_context.h"
#include <stdlib.h>
@@ -69,3 +74,5 @@ wayland_context_destroy(union native_context *self)
free(self);
return ok;
}
+
+/// @}
diff --git a/src/waffle/wayland/wayland_context.h b/src/waffle/wayland/wayland_context.h
index a33eb53..f9a1b1b 100644
--- a/src/waffle/wayland/wayland_context.h
+++ b/src/waffle/wayland/wayland_context.h
@@ -12,6 +12,12 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @defgroup wayland_context wayland_context
+/// @ingroup wayland
+/// @{
+
+/// @file
+
#pragma once
#include <stdbool.h>
@@ -25,4 +31,6 @@ wayland_context_create(
union native_context *share_ctx);
bool
-wayland_context_destroy(union native_context *self); \ No newline at end of file
+wayland_context_destroy(union native_context *self);
+
+/// @}
diff --git a/src/waffle/wayland/wayland_display.c b/src/waffle/wayland/wayland_display.c
index 3372ca0..a8cca53 100644
--- a/src/waffle/wayland/wayland_display.c
+++ b/src/waffle/wayland/wayland_display.c
@@ -12,6 +12,11 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @addtogroup wayland_display
+/// @{
+
+/// @file
+
#include "wayland_display.h"
#include <stdlib.h>
@@ -97,3 +102,5 @@ wayland_display_disconnect(union native_display *self)
free(self);
return ok;
}
+
+/// @}
diff --git a/src/waffle/wayland/wayland_display.h b/src/waffle/wayland/wayland_display.h
index 0ef772e..4d9c4f4 100644
--- a/src/waffle/wayland/wayland_display.h
+++ b/src/waffle/wayland/wayland_display.h
@@ -12,6 +12,12 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @defgroup wayland_display wayland_display
+/// @ingroup wayland
+/// @{
+
+/// @file
+
#pragma once
#include <stdbool.h>
@@ -25,4 +31,6 @@ wayland_display_connect(
const char *name);
bool
-wayland_display_disconnect(union native_display *self); \ No newline at end of file
+wayland_display_disconnect(union native_display *self);
+
+/// @}
diff --git a/src/waffle/wayland/wayland_gl_misc.c b/src/waffle/wayland/wayland_gl_misc.c
index fc8e558..301d371 100644
--- a/src/waffle/wayland/wayland_gl_misc.c
+++ b/src/waffle/wayland/wayland_gl_misc.c
@@ -12,6 +12,11 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @addtogroup wayland_gl_misc
+/// @{
+
+/// @file
+
#include "wayland_gl_misc.h"
#include <dlfcn.h>
@@ -46,4 +51,6 @@ wayland_dlsym_gl(
const char *name)
{
return dlsym(native->wl->libgl, name);
-} \ No newline at end of file
+}
+
+/// @}
diff --git a/src/waffle/wayland/wayland_gl_misc.h b/src/waffle/wayland/wayland_gl_misc.h
index b329f9c..7ac36f5 100644
--- a/src/waffle/wayland/wayland_gl_misc.h
+++ b/src/waffle/wayland/wayland_gl_misc.h
@@ -12,6 +12,12 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @defgroup wayland_gl_misc wayland_gl_misc
+/// @ingroup wayland
+/// @{
+
+/// @file
+
#pragma once
#include <stdbool.h>
@@ -35,4 +41,6 @@ wayland_get_proc_address(
void*
wayland_dlsym_gl(
union native_platform *native,
- const char *name); \ No newline at end of file
+ const char *name);
+
+/// @}
diff --git a/src/waffle/wayland/wayland_platform.c b/src/waffle/wayland/wayland_platform.c
index 133c848..2af9259 100644
--- a/src/waffle/wayland/wayland_platform.c
+++ b/src/waffle/wayland/wayland_platform.c
@@ -12,6 +12,11 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @addtogroup wayland_platform
+/// @{
+
+/// @file
+
#include "wayland_platform.h"
#define _POSIX_C_SOURCE 200112 // glib feature macro for unsetenv()
@@ -114,3 +119,5 @@ wayland_platform_destroy(union native_platform *self)
free(self);
return !error;
}
+
+/// @}
diff --git a/src/waffle/wayland/wayland_platform.h b/src/waffle/wayland/wayland_platform.h
index a5d0f84..45c8938 100644
--- a/src/waffle/wayland/wayland_platform.h
+++ b/src/waffle/wayland/wayland_platform.h
@@ -12,6 +12,12 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @defgroup wayland_platform wayland_platform
+/// @ingroup wayland
+/// @{
+
+/// @file
+
#pragma once
#include <stdbool.h>
@@ -25,4 +31,6 @@ wayland_platform_create(
const struct native_dispatch **dispatch);
bool
-wayland_platform_destroy(union native_platform *self); \ No newline at end of file
+wayland_platform_destroy(union native_platform *self);
+
+/// @}
diff --git a/src/waffle/wayland/wayland_priv_egl.c b/src/waffle/wayland/wayland_priv_egl.c
index 2772532..2fc4d9e 100644
--- a/src/waffle/wayland/wayland_priv_egl.c
+++ b/src/waffle/wayland/wayland_priv_egl.c
@@ -12,5 +12,12 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @addtogroup wayland_priv_egl
+/// @{
+
+/// @file
+
#include "wayland_priv_egl.h"
-#include <waffle/egl/egl_native_template.c> \ No newline at end of file
+#include <waffle/egl/egl_native_template.c>
+
+/// @}
diff --git a/src/waffle/wayland/wayland_priv_egl.h b/src/waffle/wayland/wayland_priv_egl.h
index 1e5df88..c6c21e3 100644
--- a/src/waffle/wayland/wayland_priv_egl.h
+++ b/src/waffle/wayland/wayland_priv_egl.h
@@ -12,6 +12,12 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @defgroup wayland_priv_egl wayland_priv_egl
+/// @ingroup wayland
+/// @{
+
+/// @file
+
#pragma once
// WL_EGL_PLATFORM configures Mesa's <EGL/egl.h> to define native types (such
@@ -20,3 +26,5 @@
#define NATIVE_EGL(basename) wayland_egl_##basename
#include <waffle/egl/egl.h>
+
+/// @}
diff --git a/src/waffle/wayland/wayland_priv_types.h b/src/waffle/wayland/wayland_priv_types.h
index 90eae6b..d2373b4 100644
--- a/src/waffle/wayland/wayland_priv_types.h
+++ b/src/waffle/wayland/wayland_priv_types.h
@@ -12,6 +12,12 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @defgroup wayland_priv_types wayland_priv_types
+/// @ingroup wayland
+/// @{
+
+/// @file
+
#pragma once
// WL_EGL_PLATFORM configures Mesa's <EGL/egl.h> to define native types (such
@@ -66,3 +72,5 @@ struct wayland_window {
struct wl_egl_window *wl_window;
EGLSurface egl_surface;
};
+
+/// @}
diff --git a/src/waffle/wayland/wayland_window.c b/src/waffle/wayland/wayland_window.c
index ccf5bff..04d8d7b 100644
--- a/src/waffle/wayland/wayland_window.c
+++ b/src/waffle/wayland/wayland_window.c
@@ -12,6 +12,11 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @addtogroup wayland_window
+/// @{
+
+/// @file
+
#include "wayland_window.h"
#include <stdlib.h>
@@ -125,4 +130,6 @@ wayland_window_swap_buffers(union native_window *self)
union native_display *dpy = self->wl->display;
return egl_swap_buffers(dpy->wl->egl_display,
self->wl->egl_surface);
-} \ No newline at end of file
+}
+
+/// @}
diff --git a/src/waffle/wayland/wayland_window.h b/src/waffle/wayland/wayland_window.h
index 81b0642..24b9b87 100644
--- a/src/waffle/wayland/wayland_window.h
+++ b/src/waffle/wayland/wayland_window.h
@@ -12,6 +12,12 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @defgroup wayland_window wayland_window
+/// @ingroup wayland
+/// @{
+
+/// @file
+
#pragma once
#include <stdbool.h>
@@ -30,4 +36,6 @@ bool
wayland_window_destroy(union native_window *self);
bool
-wayland_window_swap_buffers(union native_window *self); \ No newline at end of file
+wayland_window_swap_buffers(union native_window *self);
+
+/// @}
diff --git a/src/waffle/x11/x11.c b/src/waffle/x11/x11.c
index b2cf348..276b32b 100644
--- a/src/waffle/x11/x11.c
+++ b/src/waffle/x11/x11.c
@@ -12,6 +12,11 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @addtogroup x11
+/// @{
+
+/// @file
+
#include "x11.h"
#include <waffle/core/wcore_error.h>
@@ -164,4 +169,6 @@ x11_window_destroy(
}
return ok;
-} \ No newline at end of file
+}
+
+/// @}
diff --git a/src/waffle/x11/x11.h b/src/waffle/x11/x11.h
index 38f907f..f15998a 100644
--- a/src/waffle/x11/x11.h
+++ b/src/waffle/x11/x11.h
@@ -12,10 +12,15 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @defgroup x11 x11
+///
/// @brief Wrappers for X11 functions.
///
/// Waffle supports two X11 platforms (GLX and X11/EGL). This header declares
/// all common code.
+/// @{
+
+/// @file
#pragma once
@@ -41,4 +46,6 @@ x11_window_create(
bool
x11_window_destroy(
xcb_connection_t *conn,
- xcb_window_t window); \ No newline at end of file
+ xcb_window_t window);
+
+/// @}
diff --git a/src/waffle/x11_egl/xegl.doxy_include b/src/waffle/x11_egl/xegl.doxy_include
new file mode 100644
index 0000000..b323a6a
--- /dev/null
+++ b/src/waffle/x11_egl/xegl.doxy_include
@@ -0,0 +1,16 @@
+// Copyright 2012 Intel Corporation
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+/// @defgroup xegl xegl
+/// @brief X11/EGL Platform
diff --git a/src/waffle/x11_egl/xegl_config.c b/src/waffle/x11_egl/xegl_config.c
index a387808..c17a47d 100644
--- a/src/waffle/x11_egl/xegl_config.c
+++ b/src/waffle/x11_egl/xegl_config.c
@@ -12,6 +12,11 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @addtogroup xegl_config
+/// @{
+
+/// @file
+
#include "xegl_config.h"
#include <stdlib.h>
@@ -71,3 +76,5 @@ xegl_config_destroy(union native_config *self)
free(self);
return true;
}
+
+/// @}
diff --git a/src/waffle/x11_egl/xegl_config.h b/src/waffle/x11_egl/xegl_config.h
index 3b5ce53..e95e9ab 100644
--- a/src/waffle/x11_egl/xegl_config.h
+++ b/src/waffle/x11_egl/xegl_config.h
@@ -12,6 +12,12 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @defgroup xegl_config xegl_config
+/// @ingroup xegl
+/// @{
+
+/// @file
+
#pragma once
#include <stdbool.h>
@@ -27,4 +33,6 @@ xegl_config_choose(
const struct wcore_config_attrs *attrs);
bool
-xegl_config_destroy(union native_config *self); \ No newline at end of file
+xegl_config_destroy(union native_config *self);
+
+/// @}
diff --git a/src/waffle/x11_egl/xegl_context.c b/src/waffle/x11_egl/xegl_context.c
index 5dbb914..7864b14 100644
--- a/src/waffle/x11_egl/xegl_context.c
+++ b/src/waffle/x11_egl/xegl_context.c
@@ -12,6 +12,11 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @addtogroup xegl_context
+/// @{
+
+/// @file
+
#include "xegl_context.h"
#include <stdlib.h>
@@ -69,3 +74,5 @@ xegl_context_destroy(union native_context *self)
free(self);
return ok;
}
+
+/// @}
diff --git a/src/waffle/x11_egl/xegl_context.h b/src/waffle/x11_egl/xegl_context.h
index 4125be3..a6636c7 100644
--- a/src/waffle/x11_egl/xegl_context.h
+++ b/src/waffle/x11_egl/xegl_context.h
@@ -12,6 +12,12 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @defgroup xegl_context xegl_context
+/// @ingroup xegl
+/// @{
+
+/// @file
+
#pragma once
#include <stdbool.h>
@@ -25,4 +31,6 @@ xegl_context_create(
union native_context *share_ctx);
bool
-xegl_context_destroy(union native_context *self); \ No newline at end of file
+xegl_context_destroy(union native_context *self);
+
+/// @}
diff --git a/src/waffle/x11_egl/xegl_display.c b/src/waffle/x11_egl/xegl_display.c
index 30c0cd6..c176b4f 100644
--- a/src/waffle/x11_egl/xegl_display.c
+++ b/src/waffle/x11_egl/xegl_display.c
@@ -12,6 +12,11 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @addtogroup xegl_display
+/// @{
+
+/// @file
+
#include "xegl_display.h"
#include <stdlib.h>
@@ -76,3 +81,5 @@ xegl_display_disconnect(union native_display *self)
free(self);
return ok;
}
+
+/// @}
diff --git a/src/waffle/x11_egl/xegl_display.h b/src/waffle/x11_egl/xegl_display.h
index 8a08876..6cf1b27 100644
--- a/src/waffle/x11_egl/xegl_display.h
+++ b/src/waffle/x11_egl/xegl_display.h
@@ -12,6 +12,12 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @defgroup xegl_display xegl_display
+/// @ingroup xegl
+/// @{
+
+/// @file
+
#pragma once
#include <stdbool.h>
@@ -25,4 +31,6 @@ xegl_display_connect(
const char *name);
bool
-xegl_display_disconnect(union native_display *self); \ No newline at end of file
+xegl_display_disconnect(union native_display *self);
+
+/// @}
diff --git a/src/waffle/x11_egl/xegl_gl_misc.c b/src/waffle/x11_egl/xegl_gl_misc.c
index 71f7a64..707f9d8 100644
--- a/src/waffle/x11_egl/xegl_gl_misc.c
+++ b/src/waffle/x11_egl/xegl_gl_misc.c
@@ -12,6 +12,11 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @addtogroup xegl_gl_misc
+/// @{
+
+/// @file
+
#include "xegl_gl_misc.h"
#include <dlfcn.h>
@@ -46,4 +51,6 @@ xegl_dlsym_gl(
const char *name)
{
return dlsym(native->xegl->libgl, name);
-} \ No newline at end of file
+}
+
+/// @}
diff --git a/src/waffle/x11_egl/xegl_gl_misc.h b/src/waffle/x11_egl/xegl_gl_misc.h
index e650e92..d35ccc7 100644
--- a/src/waffle/x11_egl/xegl_gl_misc.h
+++ b/src/waffle/x11_egl/xegl_gl_misc.h
@@ -12,6 +12,12 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @defgroup xegl_gl_misc xegl_gl_misc
+/// @ingroup xegl
+/// @{
+
+/// @file
+
#pragma once
#include <stdbool.h>
@@ -35,4 +41,6 @@ xegl_get_proc_address(
void*
xegl_dlsym_gl(
union native_platform *native,
- const char *name); \ No newline at end of file
+ const char *name);
+
+/// @}
diff --git a/src/waffle/x11_egl/xegl_platform.c b/src/waffle/x11_egl/xegl_platform.c
index 8666aa6..bcbe433 100644
--- a/src/waffle/x11_egl/xegl_platform.c
+++ b/src/waffle/x11_egl/xegl_platform.c
@@ -12,6 +12,11 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @addtogroup xegl_platform
+/// @{
+
+/// @file
+
#include "xegl_platform.h"
#define _POSIX_C_SOURCE 200112 // glib feature macro for unsetenv()
@@ -114,3 +119,5 @@ xegl_platform_destroy(union native_platform *self)
free(self);
return !error;
}
+
+/// @}
diff --git a/src/waffle/x11_egl/xegl_platform.h b/src/waffle/x11_egl/xegl_platform.h
index 61638d0..3aece25 100644
--- a/src/waffle/x11_egl/xegl_platform.h
+++ b/src/waffle/x11_egl/xegl_platform.h
@@ -12,6 +12,12 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @defgroup xegl_platform xegl_platform
+/// @ingroup xegl
+/// @{
+
+/// @file
+
#pragma once
#include <stdbool.h>
@@ -25,4 +31,6 @@ xegl_platform_create(
const struct native_dispatch **dispatch);
bool
-xegl_platform_destroy(union native_platform *self); \ No newline at end of file
+xegl_platform_destroy(union native_platform *self);
+
+/// @}
diff --git a/src/waffle/x11_egl/xegl_priv_egl.c b/src/waffle/x11_egl/xegl_priv_egl.c
index 69d5760..92a747a 100644
--- a/src/waffle/x11_egl/xegl_priv_egl.c
+++ b/src/waffle/x11_egl/xegl_priv_egl.c
@@ -12,5 +12,12 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @addtogroup xegl_priv_egl
+/// @{
+
+/// @file
+
#include "xegl_priv_egl.h"
-#include <waffle/egl/egl_native_template.c> \ No newline at end of file
+#include <waffle/egl/egl_native_template.c>
+
+/// @}
diff --git a/src/waffle/x11_egl/xegl_priv_egl.h b/src/waffle/x11_egl/xegl_priv_egl.h
index 0206cf0..7b72c1e 100644
--- a/src/waffle/x11_egl/xegl_priv_egl.h
+++ b/src/waffle/x11_egl/xegl_priv_egl.h
@@ -12,7 +12,15 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @defgroup xegl_priv_egl xegl_priv_egl
+/// @ingroup xegl
+/// @{
+
+/// @file
+
#pragma once
#define NATIVE_EGL(basename) xegl_egl_##basename
-#include <waffle/egl/egl.h> \ No newline at end of file
+#include <waffle/egl/egl.h>
+
+/// @}
diff --git a/src/waffle/x11_egl/xegl_priv_types.h b/src/waffle/x11_egl/xegl_priv_types.h
index 949891e..176771a 100644
--- a/src/waffle/x11_egl/xegl_priv_types.h
+++ b/src/waffle/x11_egl/xegl_priv_types.h
@@ -12,6 +12,12 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @defgroup xegl_priv_types xegl_priv_types
+/// @ingroup xegl
+/// @{
+
+/// @file
+
#pragma once
#include <EGL/egl.h>
@@ -59,3 +65,5 @@ struct xegl_window {
xcb_window_t xcb_window;
EGLSurface egl_surface;
};
+
+/// @}
diff --git a/src/waffle/x11_egl/xegl_window.c b/src/waffle/x11_egl/xegl_window.c
index 99849a0..0eec7d0 100644
--- a/src/waffle/x11_egl/xegl_window.c
+++ b/src/waffle/x11_egl/xegl_window.c
@@ -12,6 +12,11 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @addtogroup xegl_window
+/// @{
+
+/// @file
+
#include "xegl_window.h"
#include <stdlib.h>
@@ -91,4 +96,6 @@ xegl_window_swap_buffers(union native_window *self)
{
return egl_swap_buffers(self->xegl->display->xegl->egl_display,
self->xegl->egl_surface);
-} \ No newline at end of file
+}
+
+/// @}
diff --git a/src/waffle/x11_egl/xegl_window.h b/src/waffle/x11_egl/xegl_window.h
index bfbaf12..5994ebb 100644
--- a/src/waffle/x11_egl/xegl_window.h
+++ b/src/waffle/x11_egl/xegl_window.h
@@ -12,6 +12,12 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+/// @defgroup xegl_window xegl_window
+/// @ingroup xegl
+/// @{
+
+/// @file
+
#pragma once
#include <stdbool.h>
@@ -30,4 +36,6 @@ bool
xegl_window_destroy(union native_window *self);
bool
-xegl_window_swap_buffers(union native_window *self); \ No newline at end of file
+xegl_window_swap_buffers(union native_window *self);
+
+/// @}