From: <br...@us...> - 2009-10-31 09:46:32
|
Revision: 4032 http://openvrml.svn.sourceforge.net/openvrml/?rev=4032&view=rev Author: braden Date: 2009-10-31 09:46:21 +0000 (Sat, 31 Oct 2009) Log Message: ----------- Since all of the optional features now appear in dynamically loaded modules, we no longer need the machinery to propagate the resulting dependencies to the pkg-config metadata. Modified Paths: -------------- trunk/ChangeLog trunk/configure.ac Modified: trunk/ChangeLog =================================================================== --- trunk/ChangeLog 2009-10-31 06:28:47 UTC (rev 4031) +++ trunk/ChangeLog 2009-10-31 09:46:21 UTC (rev 4032) @@ -1,5 +1,11 @@ 2009-10-31 Braden McDaniel <br...@en...> + * configure.ac: Since all of the optional features now appear in + dynamically loaded modules, we no longer need the machinery to + propagate the resulting dependencies to the pkg-config metadata. + +2009-10-31 Braden McDaniel <br...@en...> + * configure.ac: Fixed checks for unset shell variables. 2009-10-31 Braden McDaniel <br...@en...> Modified: trunk/configure.ac =================================================================== --- trunk/configure.ac 2009-10-31 06:28:47 UTC (rev 4031) +++ trunk/configure.ac 2009-10-31 09:46:21 UTC (rev 4032) @@ -27,18 +27,6 @@ AM_CONFIG_HEADER([config.h]) # -# These strings are used with PKG_CHECK_MODULES. If the corresponding -# features are enabled, they also propagate to the pkg-config metadata files -# output by configure. -# -REQUIRE_FONTCONFIG="fontconfig" -REQUIRE_FREETYPE="freetype2" -require_xulrunner_js="xulrunner-js" -require_firefox_js="firefox-js" -require_seamonkey_js="seamonkey-js" -require_mozilla_js="mozilla-js >= 1.2.1" - -# # Checks for programs. # AC_LIBTOOL_DLOPEN @@ -138,8 +126,8 @@ [AC_MSG_FAILURE([libxml not found])]) PKG_CHECK_MODULES([PNG], [libpng], , [have_libpng=no]) -PKG_CHECK_MODULES([FONTCONFIG], [$REQUIRE_FONTCONFIG], , [have_fontconfig=no]) -PKG_CHECK_MODULES([FREETYPE], [$REQUIRE_FREETYPE], , [have_freetype=no]) +PKG_CHECK_MODULES([FONTCONFIG], [fontconfig], , [have_fontconfig=no]) +PKG_CHECK_MODULES([FREETYPE], [freetype2], , [have_freetype=no]) # # FreeType >= 2.2 uses const in callback function signatures. This # doesn't cause an error in C; but it does in C++. @@ -165,14 +153,10 @@ ]) have_libmozjs=yes -PKG_CHECK_MODULES([JS], [$require_xulrunner_js], - [mozilla_js_pkg=$require_xulrunner_js], - [PKG_CHECK_MODULES([JS], [$require_firefox_js], - [mozilla_js_pkg=$require_firefox_js], - [PKG_CHECK_MODULES([JS], [$require_seamonkey_js], - [mozilla_js_pkg=$require_seamonkey_js], - [PKG_CHECK_MODULES([JS], [$require_mozilla_js], - [mozilla_js_pkg=$require_mozilla_js], +PKG_CHECK_MODULES([JS], [xulrunner-js], , + [PKG_CHECK_MODULES([JS], [firefox-js], , + [PKG_CHECK_MODULES([JS], [seamonkey-js], , + [PKG_CHECK_MODULES([JS], [mozilla-js >= 1.2.1], , [have_libmozjs=no])])])]) AC_CHECK_LIB([js], [JS_Init], [have_libjs=yes], [have_libjs=no]) # This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <br...@us...> - 2009-10-31 09:56:53
|
Revision: 4034 http://openvrml.svn.sourceforge.net/openvrml/?rev=4034&view=rev Author: braden Date: 2009-10-31 09:56:45 +0000 (Sat, 31 Oct 2009) Log Message: ----------- Removed references to obsolete variants of mozilla-js.pc. Modified Paths: -------------- trunk/ChangeLog trunk/configure.ac Modified: trunk/ChangeLog =================================================================== --- trunk/ChangeLog 2009-10-31 09:48:54 UTC (rev 4033) +++ trunk/ChangeLog 2009-10-31 09:56:45 UTC (rev 4034) @@ -1,5 +1,10 @@ 2009-10-31 Braden McDaniel <br...@en...> + * configure.ac: Removed references to obsolete variants of + mozilla-js.pc. + +2009-10-31 Braden McDaniel <br...@en...> + * configure.ac: Since all of the optional features now appear in dynamically loaded modules, we no longer need the machinery to propagate the resulting dependencies to the pkg-config metadata. Modified: trunk/configure.ac =================================================================== --- trunk/configure.ac 2009-10-31 09:48:54 UTC (rev 4033) +++ trunk/configure.ac 2009-10-31 09:56:45 UTC (rev 4034) @@ -153,11 +153,7 @@ ]) have_libmozjs=yes -PKG_CHECK_MODULES([JS], [xulrunner-js], , - [PKG_CHECK_MODULES([JS], [firefox-js], , - [PKG_CHECK_MODULES([JS], [seamonkey-js], , - [PKG_CHECK_MODULES([JS], [mozilla-js >= 1.2.1], , - [have_libmozjs=no])])])]) +PKG_CHECK_MODULES([JS], [mozilla-js >= 1.2.1], , [have_libmozjs=no]) AC_CHECK_LIB([js], [JS_Init], [have_libjs=yes], [have_libjs=no]) # # Ensure that we can, in fact, find and use the SpiderMonkey headers. This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <br...@us...> - 2009-10-31 10:05:59
|
Revision: 4035 http://openvrml.svn.sourceforge.net/openvrml/?rev=4035&view=rev Author: braden Date: 2009-10-31 10:05:52 +0000 (Sat, 31 Oct 2009) Log Message: ----------- Require mozilla-js >= 1.8.1.8. This means we don't need to doctor JS_CFLAGS for -DJS_THREADSAFE anymore. Modified Paths: -------------- trunk/ChangeLog trunk/configure.ac Modified: trunk/ChangeLog =================================================================== --- trunk/ChangeLog 2009-10-31 09:56:45 UTC (rev 4034) +++ trunk/ChangeLog 2009-10-31 10:05:52 UTC (rev 4035) @@ -1,5 +1,10 @@ 2009-10-31 Braden McDaniel <br...@en...> + * configure.ac: Require mozilla-js >= 1.8.1.8. This means we + don't need to doctor JS_CFLAGS for -DJS_THREADSAFE anymore. + +2009-10-31 Braden McDaniel <br...@en...> + * configure.ac: Removed references to obsolete variants of mozilla-js.pc. Modified: trunk/configure.ac =================================================================== --- trunk/configure.ac 2009-10-31 09:56:45 UTC (rev 4034) +++ trunk/configure.ac 2009-10-31 10:05:52 UTC (rev 4035) @@ -153,7 +153,7 @@ ]) have_libmozjs=yes -PKG_CHECK_MODULES([JS], [mozilla-js >= 1.2.1], , [have_libmozjs=no]) +PKG_CHECK_MODULES([JS], [mozilla-js >= 1.8.1.8], , [have_libmozjs=no]) AC_CHECK_LIB([js], [JS_Init], [have_libjs=yes], [have_libjs=no]) # # Ensure that we can, in fact, find and use the SpiderMonkey headers. @@ -316,25 +316,7 @@ [AS_IF([test -z "${JS_CFLAGS+x}"], [JS_CFLAGS=""]) AS_IF([test -z "${JS_LIBS+x}"], [JS_LIBS="-ljs"])]) AS_IF([test \( \( X$have_libmozjs = Xno -o \( X$with_libjs = Xyes -a X$have_libjs = Xno \) \) -a -z "${JS_LIBS+x}" \) -o X$have_jsapi_h != Xyes], - [AC_MSG_FAILURE([SpiderMonkey is required for Script node JavaScript support])]) -# -# Figure out whether we need to add -DJS_THREADSAFE to JS_CFLAGS. -# -# libmozjs from Firefox 2.0 needs -DJS_THREADSAFE; but the Cflags from -# the pkg-config metadata don't include it. And if we're using the stand- -# alone SpiderMonkey, we don't have any pkg-config metadata to go on. -# -# Fortunately, there are a few library symbols that should be defined -# only if the installed binary was built with JS_THREADSAFE. We'll -# try to link with them. -# -AS_IF([test "X$JS_CFLAGS" = "X`echo "$JS_CFLAGS" | sed s/JS_THREADSAFE//`"], -[ov_save_LDFLAGS=$LDFLAGS -LDFLAGS="$JS_LIBS $LDFLAGS" -AC_LINK_IFELSE([AC_LANG_CALL([], [JS_BeginRequest])], - [JS_CFLAGS="$JS_CFLAGS -DJS_THREADSAFE"]) -LDFLAGS=$ov_save_LDFLAGS -])]) + [AC_MSG_FAILURE([SpiderMonkey is required for Script node JavaScript support])])]) AC_SUBST([JS_CFLAGS]) AC_SUBST([JS_LIBS]) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <br...@us...> - 2009-11-01 08:20:08
|
Revision: 4036 http://openvrml.svn.sourceforge.net/openvrml/?rev=4036&view=rev Author: braden Date: 2009-11-01 08:19:57 +0000 (Sun, 01 Nov 2009) Log Message: ----------- Set JS_CFLAGS (if it has not been set) when building --with-libjs; ensure libjs was built with -DJS_THREADSAFE. Modified Paths: -------------- trunk/ChangeLog trunk/configure.ac Modified: trunk/ChangeLog =================================================================== --- trunk/ChangeLog 2009-10-31 10:05:52 UTC (rev 4035) +++ trunk/ChangeLog 2009-11-01 08:19:57 UTC (rev 4036) @@ -1,3 +1,9 @@ +2009-11-01 Braden McDaniel <br...@en...> + + * configure.ac: Set JS_CFLAGS (if it has not been set) when + building --with-libjs; ensure libjs was built with + -DJS_THREADSAFE. + 2009-10-31 Braden McDaniel <br...@en...> * configure.ac: Require mozilla-js >= 1.8.1.8. This means we Modified: trunk/configure.ac =================================================================== --- trunk/configure.ac 2009-10-31 10:05:52 UTC (rev 4035) +++ trunk/configure.ac 2009-11-01 08:19:57 UTC (rev 4036) @@ -154,8 +154,13 @@ have_libmozjs=yes PKG_CHECK_MODULES([JS], [mozilla-js >= 1.8.1.8], , [have_libmozjs=no]) -AC_CHECK_LIB([js], [JS_Init], [have_libjs=yes], [have_libjs=no]) # +# JS_BeginRequest should be there only if SpiderMonkey was built with +# -DJS_THREADSAFE. +# +AC_CHECK_LIB([js], [JS_BeginRequest], [have_libjs=yes], [have_libjs=no]) + +# # Ensure that we can, in fact, find and use the SpiderMonkey headers. # ov_save_CPPFLAGS=$CPPFLAGS @@ -311,12 +316,12 @@ [AC_HELP_STRING([--with-libjs], [use libjs for JavaScript support])]) AS_IF([test X$enable_script_node_javascript = Xno], -[JS_CFLAGS="" JS_LIBS=""], -[AS_IF([test X$with_libjs = Xyes -a X$have_libjs = Xyes], - [AS_IF([test -z "${JS_CFLAGS+x}"], [JS_CFLAGS=""]) - AS_IF([test -z "${JS_LIBS+x}"], [JS_LIBS="-ljs"])]) -AS_IF([test \( \( X$have_libmozjs = Xno -o \( X$with_libjs = Xyes -a X$have_libjs = Xno \) \) -a -z "${JS_LIBS+x}" \) -o X$have_jsapi_h != Xyes], - [AC_MSG_FAILURE([SpiderMonkey is required for Script node JavaScript support])])]) + [JS_CFLAGS="" JS_LIBS=""], + [AS_IF([test X$with_libjs = Xyes -a X$have_libjs = Xyes], + [AS_IF([test -z "${JS_CFLAGS+x}"], [JS_CFLAGS="-DXP_UNIX -DJS_THREADSAFE"]) + AS_IF([test -z "${JS_LIBS+x}"], [JS_LIBS="-ljs"])]) + AS_IF([test \( \( X$have_libmozjs = Xno -o \( X$with_libjs = Xyes -a X$have_libjs = Xno \) \) -a -z "${JS_LIBS+x}" \) -o X$have_jsapi_h != Xyes], + [AC_MSG_FAILURE([SpiderMonkey is required for Script node JavaScript support])])]) AC_SUBST([JS_CFLAGS]) AC_SUBST([JS_LIBS]) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <br...@us...> - 2009-11-01 08:25:14
|
Revision: 4037 http://openvrml.svn.sourceforge.net/openvrml/?rev=4037&view=rev Author: braden Date: 2009-11-01 08:25:04 +0000 (Sun, 01 Nov 2009) Log Message: ----------- Require at least FreeType 2.2. Modified Paths: -------------- trunk/ChangeLog trunk/configure.ac trunk/src/node/vrml97/text.cpp Modified: trunk/ChangeLog =================================================================== --- trunk/ChangeLog 2009-11-01 08:19:57 UTC (rev 4036) +++ trunk/ChangeLog 2009-11-01 08:25:04 UTC (rev 4037) @@ -1,5 +1,12 @@ 2009-11-01 Braden McDaniel <br...@en...> + Require at least FreeType 2.2. + + * configure.ac: Require FreeType >= 2.2. + * src/node/vrml97/text.cpp: Remove use of OPENVRML_FT_CONST. + +2009-11-01 Braden McDaniel <br...@en...> + * configure.ac: Set JS_CFLAGS (if it has not been set) when building --with-libjs; ensure libjs was built with -DJS_THREADSAFE. Modified: trunk/configure.ac =================================================================== --- trunk/configure.ac 2009-11-01 08:19:57 UTC (rev 4036) +++ trunk/configure.ac 2009-11-01 08:25:04 UTC (rev 4037) @@ -127,30 +127,7 @@ PKG_CHECK_MODULES([PNG], [libpng], , [have_libpng=no]) PKG_CHECK_MODULES([FONTCONFIG], [fontconfig], , [have_fontconfig=no]) -PKG_CHECK_MODULES([FREETYPE], [freetype2], , [have_freetype=no]) -# -# FreeType >= 2.2 uses const in callback function signatures. This -# doesn't cause an error in C; but it does in C++. -# -AS_IF([test X$have_freetype != Xno], - [AC_MSG_CHECKING([if FreeType callback function signatures use const]) - AC_CACHE_VAL([ov_cv_ft_const], -[AC_LANG_PUSH([C++]) -save_CXXFLAGS="${CXXFLAGS}" -CXXFLAGS="${CXXFLAGS} ${FREETYPE_CFLAGS}" -AC_COMPILE_IFELSE([AC_LANG_PROGRAM( - [#include <ft2build.h> -#include FT_OUTLINE_H -int moveTo(const FT_Vector *, void *);], - [FT_Outline_MoveToFunc f = moveTo])], - [ov_cv_ft_const=const], - [ov_cv_ft_const= ]) -CXXFLAGS="${save_CXXFLAGS}" -AC_LANG_POP]) - AS_IF([test -n "$ov_cv_ft_const"], - [AC_MSG_RESULT([yes])], - [AC_MSG_RESULT([no])]) -]) +PKG_CHECK_MODULES([FREETYPE], [freetype2 >= 2.2], , [have_freetype=no]) have_libmozjs=yes PKG_CHECK_MODULES([JS], [mozilla-js >= 1.8.1.8], , [have_libmozjs=no]) @@ -301,9 +278,7 @@ AS_IF([test X$have_freetype = Xno -a -z "${FREETYPE_LIBS+x}"], [AC_MSG_FAILURE([FreeType is required for rendering Text nodes])]) AC_DEFINE([OPENVRML_ENABLE_RENDER_TEXT_NODE], [1], - [Defined if support for rendering Text nodes is enabled.]) - AC_DEFINE_UNQUOTED([OPENVRML_FT_CONST], [$ov_cv_ft_const], - [const for FreeType callback function signatures.])]) + [Defined if support for rendering Text nodes is enabled.])]) # # Script node JavaScript support Modified: trunk/src/node/vrml97/text.cpp =================================================================== --- trunk/src/node/vrml97/text.cpp 2009-11-01 08:19:57 UTC (rev 4036) +++ trunk/src/node/vrml97/text.cpp 2009-11-01 08:25:04 UTC (rev 4037) @@ -1744,7 +1744,7 @@ const float stepSize_ = 0.2f; extern "C" int - moveTo_(OPENVRML_FT_CONST FT_Vector * const to, + moveTo_(const FT_Vector * const to, void * const user) { using std::vector; @@ -1765,7 +1765,7 @@ } extern "C" int - lineTo_(OPENVRML_FT_CONST FT_Vector * const to, + lineTo_(const FT_Vector * const to, void * const user) { using openvrml::make_vec2f; @@ -1832,8 +1832,8 @@ } extern "C" int - conicTo_(OPENVRML_FT_CONST FT_Vector * const control, - OPENVRML_FT_CONST FT_Vector * const to, + conicTo_(const FT_Vector * const control, + const FT_Vector * const to, void * const user) { using std::vector; @@ -1868,9 +1868,9 @@ } extern "C" int - cubicTo_(OPENVRML_FT_CONST FT_Vector * const control1, - OPENVRML_FT_CONST FT_Vector * const control2, - OPENVRML_FT_CONST FT_Vector * const to, + cubicTo_(const FT_Vector * const control1, + const FT_Vector * const control2, + const FT_Vector * const to, void * const user) { using std::vector; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <br...@us...> - 2009-11-01 22:25:37
|
Revision: 4038 http://openvrml.svn.sourceforge.net/openvrml/?rev=4038&view=rev Author: braden Date: 2009-11-01 22:25:24 +0000 (Sun, 01 Nov 2009) Log Message: ----------- Improve error message when no SpiderMonkey is found: account for the possibility that the installed libjs was not built with -DJS_THREADSAFE. Modified Paths: -------------- trunk/ChangeLog trunk/configure.ac Modified: trunk/ChangeLog =================================================================== --- trunk/ChangeLog 2009-11-01 08:25:04 UTC (rev 4037) +++ trunk/ChangeLog 2009-11-01 22:25:24 UTC (rev 4038) @@ -1,5 +1,11 @@ 2009-11-01 Braden McDaniel <br...@en...> + * configure.ac: Improve error message when no SpiderMonkey is + found: account for the possibility that the installed libjs was + not built with -DJS_THREADSAFE. + +2009-11-01 Braden McDaniel <br...@en...> + Require at least FreeType 2.2. * configure.ac: Require FreeType >= 2.2. Modified: trunk/configure.ac =================================================================== --- trunk/configure.ac 2009-11-01 08:25:04 UTC (rev 4037) +++ trunk/configure.ac 2009-11-01 22:25:24 UTC (rev 4038) @@ -296,7 +296,7 @@ [AS_IF([test -z "${JS_CFLAGS+x}"], [JS_CFLAGS="-DXP_UNIX -DJS_THREADSAFE"]) AS_IF([test -z "${JS_LIBS+x}"], [JS_LIBS="-ljs"])]) AS_IF([test \( \( X$have_libmozjs = Xno -o \( X$with_libjs = Xyes -a X$have_libjs = Xno \) \) -a -z "${JS_LIBS+x}" \) -o X$have_jsapi_h != Xyes], - [AC_MSG_FAILURE([SpiderMonkey is required for Script node JavaScript support])])]) + [AC_MSG_FAILURE([SpiderMonkey is required for Script node JavaScript support. If you are trying to build --with-libjs, make sure that libjs has been built with thread safety enabled.])])]) AC_SUBST([JS_CFLAGS]) AC_SUBST([JS_LIBS]) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <br...@us...> - 2009-11-01 22:29:23
|
Revision: 4039 http://openvrml.svn.sourceforge.net/openvrml/?rev=4039&view=rev Author: braden Date: 2009-11-01 22:29:16 +0000 (Sun, 01 Nov 2009) Log Message: ----------- Don't fail on missing libpng if PNG_LIBS has been set. Modified Paths: -------------- trunk/ChangeLog trunk/configure.ac Modified: trunk/ChangeLog =================================================================== --- trunk/ChangeLog 2009-11-01 22:25:24 UTC (rev 4038) +++ trunk/ChangeLog 2009-11-01 22:29:16 UTC (rev 4039) @@ -1,5 +1,10 @@ 2009-11-01 Braden McDaniel <br...@en...> + * configure.ac: Don't fail on missing libpng if PNG_LIBS has been + set. + +2009-11-01 Braden McDaniel <br...@en...> + * configure.ac: Improve error message when no SpiderMonkey is found: account for the possibility that the installed libjs was not built with -DJS_THREADSAFE. Modified: trunk/configure.ac =================================================================== --- trunk/configure.ac 2009-11-01 22:25:24 UTC (rev 4038) +++ trunk/configure.ac 2009-11-01 22:29:16 UTC (rev 4039) @@ -248,7 +248,7 @@ [AC_HELP_STRING([--disable-png-textures], [disable support for rendering PNG textures])]) AS_IF([test X$enable_png_textures != Xno], - [AS_IF([test X$have_libpng = Xno], + [AS_IF([test X$have_libpng = Xno -a -z "${PNG_LIBS+x}"], [AC_MSG_FAILURE([libpng is required for PNG texture support])]) AC_DEFINE([OPENVRML_ENABLE_PNG_TEXTURES], [1], [Defined if support for rendering PNG textures is enabled.])]) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <br...@us...> - 2009-11-02 04:57:27
|
Revision: 4041 http://openvrml.svn.sourceforge.net/openvrml/?rev=4041&view=rev Author: braden Date: 2009-11-02 04:57:21 +0000 (Mon, 02 Nov 2009) Log Message: ----------- Require pkg-config >= 0.18.0. Modified Paths: -------------- trunk/ChangeLog trunk/configure.ac Modified: trunk/ChangeLog =================================================================== --- trunk/ChangeLog 2009-11-02 04:52:34 UTC (rev 4040) +++ trunk/ChangeLog 2009-11-02 04:57:21 UTC (rev 4041) @@ -1,5 +1,9 @@ 2009-11-01 Braden McDaniel <br...@en...> + * configure.ac: Require pkg-config >= 0.18.0. + +2009-11-01 Braden McDaniel <br...@en...> + * configure.ac: Use pkg-config to find SDL. 2009-11-01 Braden McDaniel <br...@en...> Modified: trunk/configure.ac =================================================================== --- trunk/configure.ac 2009-11-02 04:52:34 UTC (rev 4040) +++ trunk/configure.ac 2009-11-02 04:57:21 UTC (rev 4041) @@ -34,6 +34,7 @@ AC_PROG_CXX AC_PROG_CXXCPP AM_PROG_GCJ +PKG_PROG_PKG_CONFIG([0.18.0]) OV_PROG_JAVAC OV_PROG_JAVAH This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <br...@us...> - 2009-11-02 05:27:39
|
Revision: 4040 http://openvrml.svn.sourceforge.net/openvrml/?rev=4040&view=rev Author: braden Date: 2009-11-02 04:52:34 +0000 (Mon, 02 Nov 2009) Log Message: ----------- Use pkg-config to find SDL. Modified Paths: -------------- trunk/ChangeLog trunk/configure.ac Modified: trunk/ChangeLog =================================================================== --- trunk/ChangeLog 2009-11-01 22:29:16 UTC (rev 4039) +++ trunk/ChangeLog 2009-11-02 04:52:34 UTC (rev 4040) @@ -1,5 +1,9 @@ 2009-11-01 Braden McDaniel <br...@en...> + * configure.ac: Use pkg-config to find SDL. + +2009-11-01 Braden McDaniel <br...@en...> + * configure.ac: Don't fail on missing libpng if PNG_LIBS has been set. Modified: trunk/configure.ac =================================================================== --- trunk/configure.ac 2009-11-01 22:29:16 UTC (rev 4039) +++ trunk/configure.ac 2009-11-02 04:52:34 UTC (rev 4040) @@ -203,20 +203,7 @@ [OPENVRML_GL_HAVE_OPENGL_GLU_H=0]) AC_SUBST([OPENVRML_GL_HAVE_OPENGL_GLU_H]) -AC_PATH_PROG([SDL_CONFIG], [sdl-config]) -have_sdl=no -# -# sdl-config sometimes emits an rpath flag pointing at its library -# installation directory. We don't want this, as it prevents users from -# linking sdl-viewer against, for example, a locally compiled libGL when a -# version of the library also exists in SDL's library installation -# directory, typically /usr/lib. -# -AS_IF([test -n "${SDL_CONFIG}"], - [have_sdl=yes SDL_CFLAGS=`$SDL_CONFIG --cflags` SDL_LIBS=`$SDL_CONFIG --libs` - SDL_LIBS=`echo $SDL_LIBS | sed 's/-Wl,-rpath,[[^ ]]* //'`]) -AC_SUBST([SDL_CFLAGS]) -AC_SUBST([SDL_LIBS]) +PKG_CHECK_MODULES([SDL], [sdl], [have_sdl=yes], [have_sdl=no]) # # Use exception specifications? @@ -410,10 +397,10 @@ AC_ARG_ENABLE([examples], [AC_HELP_STRING([--disable-examples], [do not build the example programs])]) -AS_IF([test "X$enable_examples" != "Xno" -a "X$have_sdl" != "Xyes"], +AS_IF([test X$enable_examples != Xno -a \( X$have_sdl != Xyes -o -z "${SDL_LIBS+x}" \)], [AC_MSG_FAILURE([SDL is required for the example programs])]) AM_CONDITIONAL([ENABLE_EXAMPLES], - [test "X$enable_examples" != "Xno" -a "X$have_sdl" = "Xyes"]) + [test X$enable_examples != Xno -a X$have_sdl = Xyes]) # # Apply Rez to executables? (Only seem to need this if we're using the Apple This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <br...@us...> - 2009-11-02 08:33:51
|
Revision: 4043 http://openvrml.svn.sourceforge.net/openvrml/?rev=4043&view=rev Author: braden Date: 2009-11-02 08:33:44 +0000 (Mon, 02 Nov 2009) Log Message: ----------- Simplify addition of openvrml-gl.pc to pkgconfig_DATA. Modified Paths: -------------- trunk/ChangeLog trunk/Makefile.am Modified: trunk/ChangeLog =================================================================== --- trunk/ChangeLog 2009-11-02 05:10:28 UTC (rev 4042) +++ trunk/ChangeLog 2009-11-02 08:33:44 UTC (rev 4043) @@ -1,3 +1,8 @@ +2009-11-02 Braden McDaniel <br...@en...> + + * Makefile.am: Simplify addition of openvrml-gl.pc to + pkgconfig_DATA. + 2009-11-01 Braden McDaniel <br...@en...> * configure.ac: Require pkg-config >= 0.18.0. Modified: trunk/Makefile.am =================================================================== --- trunk/Makefile.am 2009-11-02 05:10:28 UTC (rev 4042) +++ trunk/Makefile.am 2009-11-02 08:33:44 UTC (rev 4043) @@ -6,9 +6,8 @@ openvrml.pc.in \ openvrml-gl.pc.in +pkgconfigdir = $(libdir)/pkgconfig +pkgconfig_DATA = openvrml.pc if ENABLE_GL_RENDERER -OPENVRML_GL_PC = openvrml-gl.pc +pkgconfig_DATA += openvrml-gl.pc endif - -pkgconfigdir = $(libdir)/pkgconfig -pkgconfig_DATA = openvrml.pc $(OPENVRML_GL_PC) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <br...@us...> - 2009-11-02 08:39:51
|
Revision: 4045 http://openvrml.svn.sourceforge.net/openvrml/?rev=4045&view=rev Author: braden Date: 2009-11-02 08:39:35 +0000 (Mon, 02 Nov 2009) Log Message: ----------- Updated copyright notice. Modified Paths: -------------- trunk/ChangeLog trunk/configure.ac Modified: trunk/ChangeLog =================================================================== --- trunk/ChangeLog 2009-11-02 08:38:22 UTC (rev 4044) +++ trunk/ChangeLog 2009-11-02 08:39:35 UTC (rev 4045) @@ -1,5 +1,9 @@ 2009-11-02 Braden McDaniel <br...@en...> + * configure.ac: Updated copyright notice. + +2009-11-02 Braden McDaniel <br...@en...> + * Makefile.am: Simplify addition of openvrml-gl.pc to pkgconfig_DATA. Modified: trunk/configure.ac =================================================================== --- trunk/configure.ac 2009-11-02 08:38:22 UTC (rev 4044) +++ trunk/configure.ac 2009-11-02 08:39:35 UTC (rev 4045) @@ -1,6 +1,6 @@ AC_INIT([OpenVRML], [0.18.99], [ope...@li...]) AC_PREREQ([2.59]) -AC_COPYRIGHT([Portions copyright 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 Braden McDaniel]) +AC_COPYRIGHT([Portions copyright 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 Braden McDaniel]) AC_CONFIG_MACRO_DIR([m4]) AC_CONFIG_FILES([Makefile] [doc/Makefile] This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <br...@us...> - 2009-11-23 03:38:58
|
Revision: 4047 http://openvrml.svn.sourceforge.net/openvrml/?rev=4047&view=rev Author: braden Date: 2009-11-23 03:38:49 +0000 (Mon, 23 Nov 2009) Log Message: ----------- Fixed path to avoid a double slash. Modified Paths: -------------- trunk/configure-gcc-dbg trunk/configure-gcc-opt Modified: trunk/configure-gcc-dbg =================================================================== --- trunk/configure-gcc-dbg 2009-11-02 08:45:29 UTC (rev 4046) +++ trunk/configure-gcc-dbg 2009-11-23 03:38:49 UTC (rev 4047) @@ -1,3 +1,3 @@ #!/bin/bash -./$(dirname $0)/configure -C --prefix=$HOME --disable-static CXX='g++ -pipe' CPPFLAGS="-D_GLIBCXX_DEBUG -D_GLIBCXX_DEBUG_PEDANTIC -D_GLIBCXX_CONCEPT_CHECKS -DG_ERRORCHECK_MUTEXES -I$HOME/include -I/usr/lib/jvm/java/include -I/usr/lib/jvm/java/include/linux" CXXFLAGS='-g3 -O0 -pedantic-errors -Wall -Wextra -Wno-missing-braces -Wno-missing-field-initializers -Wno-long-long' LDFLAGS="-L$HOME/lib64 -L$HOME/lib" JRE_HOME=/usr/lib/jvm/jre "$*" +$(dirname $0)/configure -C --prefix=$HOME --disable-static CXX='g++ -pipe' CPPFLAGS="-D_GLIBCXX_DEBUG -D_GLIBCXX_DEBUG_PEDANTIC -D_GLIBCXX_CONCEPT_CHECKS -DG_ERRORCHECK_MUTEXES -I$HOME/include -I/usr/lib/jvm/java/include -I/usr/lib/jvm/java/include/linux" CXXFLAGS='-g3 -O0 -pedantic-errors -Wall -Wextra -Wno-missing-braces -Wno-missing-field-initializers -Wno-long-long' LDFLAGS="-L$HOME/lib64 -L$HOME/lib" JRE_HOME=/usr/lib/jvm/jre "$*" Modified: trunk/configure-gcc-opt =================================================================== --- trunk/configure-gcc-opt 2009-11-02 08:45:29 UTC (rev 4046) +++ trunk/configure-gcc-opt 2009-11-23 03:38:49 UTC (rev 4047) @@ -1,3 +1,3 @@ #!/bin/bash -./$(dirname $0)/configure -C --prefix=$HOME --disable-static --enable-exception-specs=nothrow CXX='g++ -pipe' CPPFLAGS="-I$HOME/include -I/usr/lib/jvm/java/include -I/usr/lib/jvm/java/include/linux -DNDEBUG" CXXFLAGS='-O3 -Wall -Wextra -Wno-missing-braces -Wno-unused-variable -fvisibility=hidden -fvisibility-inlines-hidden' LDFLAGS="-L$HOME/lib64 -L$HOME/lib" JRE_HOME=/usr/lib/jvm/jre "$*" +$(dirname $0)/configure -C --prefix=$HOME --disable-static --enable-exception-specs=nothrow CXX='g++ -pipe' CPPFLAGS="-I$HOME/include -I/usr/lib/jvm/java/include -I/usr/lib/jvm/java/include/linux -DNDEBUG" CXXFLAGS='-O3 -Wall -Wextra -Wno-missing-braces -Wno-unused-variable -fvisibility=hidden -fvisibility-inlines-hidden' LDFLAGS="-L$HOME/lib64 -L$HOME/lib" JRE_HOME=/usr/lib/jvm/jre "$*" This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <br...@us...> - 2009-11-24 08:00:57
|
Revision: 4048 http://openvrml.svn.sourceforge.net/openvrml/?rev=4048&view=rev Author: braden Date: 2009-11-24 08:00:47 +0000 (Tue, 24 Nov 2009) Log Message: ----------- Use friend templates for field_value_listener and exposedfield. Modified Paths: -------------- trunk/ChangeLog trunk/src/libopenvrml/openvrml/node.h Modified: trunk/ChangeLog =================================================================== --- trunk/ChangeLog 2009-11-23 03:38:49 UTC (rev 4047) +++ trunk/ChangeLog 2009-11-24 08:00:47 UTC (rev 4048) @@ -1,3 +1,9 @@ +2009-11-24 Braden McDaniel <br...@en...> + + * src/libopenvrml/openvrml/node.h + (openvrml::node): Use friend templates for field_value_listener + and exposedfield. + 2009-11-02 Braden McDaniel <br...@en...> * configure.ac: Updated copyright notice. Modified: trunk/src/libopenvrml/openvrml/node.h =================================================================== --- trunk/src/libopenvrml/openvrml/node.h 2009-11-23 03:38:49 UTC (rev 4047) +++ trunk/src/libopenvrml/openvrml/node.h 2009-11-24 08:00:47 UTC (rev 4048) @@ -455,67 +455,11 @@ friend viewpoint_node * node_cast<viewpoint_node *>(node * n) OPENVRML_NOTHROW; - friend class field_value_listener<sfbool>; - friend class field_value_listener<sfcolor>; - friend class field_value_listener<sfcolorrgba>; - friend class field_value_listener<sffloat>; - friend class field_value_listener<sfdouble>; - friend class field_value_listener<sfimage>; - friend class field_value_listener<sfint32>; - friend class field_value_listener<sfnode>; - friend class field_value_listener<sfrotation>; - friend class field_value_listener<sfstring>; - friend class field_value_listener<sftime>; - friend class field_value_listener<sfvec2f>; - friend class field_value_listener<sfvec2d>; - friend class field_value_listener<sfvec3f>; - friend class field_value_listener<sfvec3d>; - friend class field_value_listener<mfbool>; - friend class field_value_listener<mfcolor>; - friend class field_value_listener<mfcolorrgba>; - friend class field_value_listener<mffloat>; - friend class field_value_listener<mfdouble>; - friend class field_value_listener<mfimage>; - friend class field_value_listener<mfint32>; - friend class field_value_listener<mfnode>; - friend class field_value_listener<mfrotation>; - friend class field_value_listener<mfstring>; - friend class field_value_listener<mftime>; - friend class field_value_listener<mfvec2f>; - friend class field_value_listener<mfvec2d>; - friend class field_value_listener<mfvec3f>; - friend class field_value_listener<mfvec3d>; + template <typename FieldValue> + friend class field_value_listener; - friend class exposedfield<sfbool>; - friend class exposedfield<sfcolor>; - friend class exposedfield<sfcolorrgba>; - friend class exposedfield<sffloat>; - friend class exposedfield<sfdouble>; - friend class exposedfield<sfimage>; - friend class exposedfield<sfint32>; - friend class exposedfield<sfnode>; - friend class exposedfield<sfrotation>; - friend class exposedfield<sfstring>; - friend class exposedfield<sftime>; - friend class exposedfield<sfvec2f>; - friend class exposedfield<sfvec2d>; - friend class exposedfield<sfvec3f>; - friend class exposedfield<sfvec3d>; - friend class exposedfield<mfbool>; - friend class exposedfield<mfcolor>; - friend class exposedfield<mfcolorrgba>; - friend class exposedfield<mffloat>; - friend class exposedfield<mfdouble>; - friend class exposedfield<mfimage>; - friend class exposedfield<mfint32>; - friend class exposedfield<mfnode>; - friend class exposedfield<mfrotation>; - friend class exposedfield<mfstring>; - friend class exposedfield<mftime>; - friend class exposedfield<mfvec2f>; - friend class exposedfield<mfvec2d>; - friend class exposedfield<mfvec3f>; - friend class exposedfield<mfvec3d>; + template <typename FieldValue> + friend class exposedfield; mutable boost::mutex ref_count_mutex_; mutable size_t ref_count_; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <br...@us...> - 2009-11-24 23:40:21
|
Revision: 4049 http://openvrml.svn.sourceforge.net/openvrml/?rev=4049&view=rev Author: braden Date: 2009-11-24 23:40:14 +0000 (Tue, 24 Nov 2009) Log Message: ----------- Clean up obsolete doc-comments. Modified Paths: -------------- trunk/ChangeLog trunk/src/libopenvrml/openvrml/node.cpp Modified: trunk/ChangeLog =================================================================== --- trunk/ChangeLog 2009-11-24 08:00:47 UTC (rev 4048) +++ trunk/ChangeLog 2009-11-24 23:40:14 UTC (rev 4049) @@ -1,5 +1,10 @@ 2009-11-24 Braden McDaniel <br...@en...> + * src/libopenvrml/openvrml/node.cpp: Clean up obsolete + doc-comments. + +2009-11-24 Braden McDaniel <br...@en...> + * src/libopenvrml/openvrml/node.h (openvrml::node): Use friend templates for field_value_listener and exposedfield. Modified: trunk/src/libopenvrml/openvrml/node.cpp =================================================================== --- trunk/src/libopenvrml/openvrml/node.cpp 2009-11-24 08:00:47 UTC (rev 4048) +++ trunk/src/libopenvrml/openvrml/node.cpp 2009-11-24 23:40:14 UTC (rev 4049) @@ -1401,365 +1401,26 @@ */ /** - * @var class openvrml::node::field_value_listener<sfbool> + * @internal * - * @brief @c sfbool @c field_value_listener. - */ - -/** - * @var class openvrml::node::field_value_listener<sfcolor> + * @var class openvrml::node::field_value_listener<FieldValue> * - * @brief @c sfcolor @c field_value_listener. - */ - -/** - * @var class openvrml::node::field_value_listener<sfcolorrgba> + * @brief @c field_value_listener. * - * @brief @c sfcolorrgba @c field_value_listener. + * @tparam FieldValue a concrete @c field_value. */ /** - * @var class openvrml::node::field_value_listener<sfdouble> + * @internal * - * @brief @c sfdouble @c field_value_listener. - */ - -/** - * @var class openvrml::node::field_value_listener<sffloat> + * @var class openvrml::node::exposedfield<FieldValue> * - * @brief @c sffloat @c field_value_listener. - */ - -/** - * @var class openvrml::node::field_value_listener<sfimage> + * @brief @c exposedfield<FieldValue>::do_process_event calls + * @c node::emit_event. * - * @brief @c sfimage @c field_value_listener. + * @tparam FieldValue a concrete @c field_value. */ -/** - * @var class openvrml::node::field_value_listener<sfint32> - * - * @brief @c sfint32 @c field_value_listener. - */ - -/** - * @var class openvrml::node::field_value_listener<sfnode> - * - * @brief @c sfnode @c field_value_listener. - */ - -/** - * @var class openvrml::node::field_value_listener<sfrotation> - * - * @brief @c sfrotation @c field_value_listener. - */ - -/** - * @var class openvrml::node::field_value_listener<sfstring> - * - * @brief @c sfstring @c field_value_listener. - */ - -/** - * @var class openvrml::node::field_value_listener<sftime> - * - * @brief @c sftime @c field_value_listener. - */ - -/** - * @var class openvrml::node::field_value_listener<sfvec2d> - * - * @brief <code>sfvec2d</code> <code>field_value_listener</code>. - */ - -/** - * @var class openvrml::node::field_value_listener<sfvec2f> - * - * @brief @c sfvec2f @c field_value_listener. - */ - -/** - * @var class openvrml::node::field_value_listener<sfvec3d> - * - * @brief @c sfvec3d @c field_value_listener. - */ - -/** - * @var class openvrml::node::field_value_listener<sfvec3f> - * - * @brief @c sfvec3f @c field_value_listener. - */ - -/** - * @var class openvrml::node::field_value_listener<mfbool> - * - * @brief @c mfbool @c field_value_listener. - */ - -/** - * @var class openvrml::node::field_value_listener<mfcolor> - * - * @brief @c mfcolor @c field_value_listener. - */ - -/** - * @var class openvrml::node::field_value_listener<mfcolorrgba> - * - * @brief @c mfcolorrgba @c field_value_listener. - */ - -/** - * @var class openvrml::node::field_value_listener<mfdouble> - * - * @brief @c mfdouble @c field_value_listener. - */ - -/** - * @var class openvrml::node::field_value_listener<mffloat> - * - * @brief @c mffloat @c field_value_listener. - */ - -/** - * @var class openvrml::node::field_value_listener<mfimage> - * - * @brief @c mfimage @c field_value_listener. - */ - -/** - * @var class openvrml::node::field_value_listener<mfint32> - * - * @brief @c mfint32 @c field_value_listener. - */ - -/** - * @var class openvrml::node::field_value_listener<mfnode> - * - * @brief @c mfnode @c field_value_listener. - */ - -/** - * @var class openvrml::node::field_value_listener<mfrotation> - * - * @brief @c mfrotation @c field_value_listener. - */ - -/** - * @var class openvrml::node::field_value_listener<mfstring> - * - * @brief @c mfstring @c field_value_listener. - */ - -/** - * @var class openvrml::node::field_value_listener<mftime> - * - * @brief @c mftime @c field_value_listener. - */ - -/** - * @var class openvrml::node::field_value_listener<mfvec2d> - * - * @brief @c mfvec2d @c field_value_listener. - */ - -/** - * @var class openvrml::node::field_value_listener<mfvec2f> - * - * @brief @c mfvec2f @c field_value_listener. - */ - -/** - * @var class openvrml::node::field_value_listener<mfvec3d> - * - * @brief @c mfvec3d @c field_value_listener. - */ - -/** - * @var class openvrml::node::field_value_listener<mfvec3f> - * - * @brief @c mfvec3f @c field_value_listener. - */ - -/** - * @var class openvrml::node::exposedfield<sfbool> - * - * @brief @c sfbool @c exposedfield. - */ - -/** - * @var class openvrml::node::exposedfield<sfcolor> - * - * @brief @c sfcolor @c exposedfield. - */ - -/** - * @var class openvrml::node::exposedfield<sfcolorrgba> - * - * @brief @c sfcolorrgba @c exposedfield. - */ - -/** - * @var class openvrml::node::exposedfield<sfdouble> - * - * @brief @c sfdouble @c exposedfield. - */ - -/** - * @var class openvrml::node::exposedfield<sffloat> - * - * @brief @c sffloat @c exposedfield. - */ - -/** - * @var class openvrml::node::exposedfield<sfimage> - * - * @brief @c sfimage @c exposedfield. - */ - -/** - * @var class openvrml::node::exposedfield<sfint32> - * - * @brief @c sfint32 @c exposedfield. - */ - -/** - * @var class openvrml::node::exposedfield<sfnode> - * - * @brief @c sfnode @c exposedfield. - */ - -/** - * @var class openvrml::node::exposedfield<sfrotation> - * - * @brief @c sfrotation @c exposedfield. - */ - -/** - * @var class openvrml::node::exposedfield<sfstring> - * - * @brief @c sfstring @c exposedfield. - */ - -/** - * @var class openvrml::node::exposedfield<sftime> - * - * @brief @c sftime @c exposedfield. - */ - -/** - * @var class openvrml::node::exposedfield<sfvec2d> - * - * @brief @c sfvec2d @c exposedfield. - */ - -/** - * @var class openvrml::node::exposedfield<sfvec2f> - * - * @brief @c sfvec2f @c exposedfield. - */ - -/** - * @var class openvrml::node::exposedfield<sfvec3d> - * - * @brief @c sfvec3d @c exposedfield. - */ - -/** - * @var class openvrml::node::exposedfield<sfvec3f> - * - * @brief @c sfvec3f @c exposedfield. - */ - -/** - * @var class openvrml::node::exposedfield<mfbool> - * - * @brief @c mfbool @c exposedfield. - */ - -/** - * @var class openvrml::node::exposedfield<mfcolor> - * - * @brief @c mfcolor @c exposedfield. - */ - -/** - * @var class openvrml::node::exposedfield<mfcolorrgba> - * - * @brief @c mfcolorrgba @c exposedfield. - */ - -/** - * @var class openvrml::node::exposedfield<mfdouble> - * - * @brief @c mfdouble @c exposedfield. - */ - -/** - * @var class openvrml::node::exposedfield<mffloat> - * - * @brief @c mffloat @c exposedfield. - */ - -/** - * @var class openvrml::node::exposedfield<mfimage> - * - * @brief @c mfimage @c exposedfield. - */ - -/** - * @var class openvrml::node::exposedfield<mfint32> - * - * @brief @c mfint32 @c exposedfield. - */ - -/** - * @var class openvrml::node::exposedfield<mfnode> - * - * @brief @c mfnode @c exposedfield. - */ - -/** - * @var class openvrml::node::exposedfield<mfrotation> - * - * @brief @c mfrotation @c exposedfield. - */ - -/** - * @var class openvrml::node::exposedfield<mfstring> - * - * @brief @c mfstring @c exposedfield. - */ - -/** - * @var class openvrml::node::exposedfield<mftime> - * - * @brief @c mftime @c exposedfield. - */ - -/** - * @var class openvrml::node::exposedfield<mfvec2d> - * - * @brief @c mfvec2d @c exposedfield. - */ - -/** - * @var class openvrml::node::exposedfield<mfvec2f> - * - * @brief @c mfvec2f @c exposedfield. - */ - -/** - * @var class openvrml::node::exposedfield<mfvec3d> - * - * @brief @c mfvec3d @c exposedfield. - */ - -/** - * @var class openvrml::node::exposedfield<mfvec3f> - * - * @brief @c mfvec3f @c exposedfield. - */ - namespace { class OPENVRML_LOCAL self_ref_node : public openvrml::node { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <br...@us...> - 2009-11-24 23:47:05
|
Revision: 4050 http://openvrml.svn.sourceforge.net/openvrml/?rev=4050&view=rev Author: braden Date: 2009-11-24 23:46:54 +0000 (Tue, 24 Nov 2009) Log Message: ----------- Friendship with field_value_listener does not appear to be necessary. Modified Paths: -------------- trunk/ChangeLog trunk/src/libopenvrml/openvrml/node.cpp trunk/src/libopenvrml/openvrml/node.h Modified: trunk/ChangeLog =================================================================== --- trunk/ChangeLog 2009-11-24 23:40:14 UTC (rev 4049) +++ trunk/ChangeLog 2009-11-24 23:46:54 UTC (rev 4050) @@ -1,5 +1,13 @@ 2009-11-24 Braden McDaniel <br...@en...> + * src/libopenvrml/openvrml/node.h + (openvrml::node): Friendship with field_value_listener does not + appear to be necessary. + * src/libopenvrml/openvrml/node.cpp: Removed doc-comment for + field_value_listener friend. + +2009-11-24 Braden McDaniel <br...@en...> + * src/libopenvrml/openvrml/node.cpp: Clean up obsolete doc-comments. Modified: trunk/src/libopenvrml/openvrml/node.cpp =================================================================== --- trunk/src/libopenvrml/openvrml/node.cpp 2009-11-24 23:40:14 UTC (rev 4049) +++ trunk/src/libopenvrml/openvrml/node.cpp 2009-11-24 23:46:54 UTC (rev 4050) @@ -1403,16 +1403,6 @@ /** * @internal * - * @var class openvrml::node::field_value_listener<FieldValue> - * - * @brief @c field_value_listener. - * - * @tparam FieldValue a concrete @c field_value. - */ - -/** - * @internal - * * @var class openvrml::node::exposedfield<FieldValue> * * @brief @c exposedfield<FieldValue>::do_process_event calls Modified: trunk/src/libopenvrml/openvrml/node.h =================================================================== --- trunk/src/libopenvrml/openvrml/node.h 2009-11-24 23:40:14 UTC (rev 4049) +++ trunk/src/libopenvrml/openvrml/node.h 2009-11-24 23:46:54 UTC (rev 4050) @@ -456,9 +456,6 @@ OPENVRML_NOTHROW; template <typename FieldValue> - friend class field_value_listener; - - template <typename FieldValue> friend class exposedfield; mutable boost::mutex ref_count_mutex_; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <br...@us...> - 2009-11-25 08:39:16
|
Revision: 4051 http://openvrml.svn.sourceforge.net/openvrml/?rev=4051&view=rev Author: braden Date: 2009-11-25 08:39:02 +0000 (Wed, 25 Nov 2009) Log Message: ----------- Generate openvrml::node_type::do_create_type implementations using the Boost.Preprocessor library. Modified Paths: -------------- trunk/ChangeLog trunk/src/libopenvrml/openvrml/node_impl_util.cpp trunk/src/libopenvrml/openvrml/node_impl_util.h trunk/src/node/vrml97/anchor.cpp trunk/src/node/vrml97/appearance.cpp trunk/src/node/vrml97/audio_clip.cpp trunk/src/node/vrml97/background.cpp trunk/src/node/vrml97/billboard.cpp trunk/src/node/vrml97/box.cpp trunk/src/node/vrml97/cad_assembly.cpp trunk/src/node/vrml97/cad_layer.cpp trunk/src/node/vrml97/collision.cpp trunk/src/node/vrml97/color.cpp trunk/src/node/vrml97/color_interpolator.cpp trunk/src/node/vrml97/cone.cpp trunk/src/node/vrml97/coordinate.cpp trunk/src/node/vrml97/coordinate_interpolator.cpp trunk/src/node/vrml97/cylinder.cpp trunk/src/node/vrml97/cylinder_sensor.cpp trunk/src/node/vrml97/directional_light.cpp trunk/src/node/vrml97/elevation_grid.cpp trunk/src/node/vrml97/extrusion.cpp trunk/src/node/vrml97/fog.cpp trunk/src/node/vrml97/font_style.cpp trunk/src/node/vrml97/group.cpp trunk/src/node/vrml97/image_texture.cpp trunk/src/node/vrml97/indexed_face_set.cpp trunk/src/node/vrml97/indexed_line_set.cpp trunk/src/node/vrml97/inline.cpp trunk/src/node/vrml97/lod.cpp trunk/src/node/vrml97/material.cpp trunk/src/node/vrml97/navigation_info.cpp trunk/src/node/vrml97/normal.cpp trunk/src/node/vrml97/normal_interpolator.cpp trunk/src/node/vrml97/orientation_interpolator.cpp trunk/src/node/vrml97/pixel_texture.cpp trunk/src/node/vrml97/plane_sensor.cpp trunk/src/node/vrml97/point_light.cpp trunk/src/node/vrml97/point_set.cpp trunk/src/node/vrml97/position_interpolator.cpp trunk/src/node/vrml97/proximity_sensor.cpp trunk/src/node/vrml97/scalar_interpolator.cpp trunk/src/node/vrml97/shape.cpp trunk/src/node/vrml97/sound.cpp trunk/src/node/vrml97/sphere.cpp trunk/src/node/vrml97/sphere_sensor.cpp trunk/src/node/vrml97/spot_light.cpp trunk/src/node/vrml97/switch.cpp trunk/src/node/vrml97/text.cpp trunk/src/node/vrml97/texture_coordinate.cpp trunk/src/node/vrml97/texture_transform.cpp trunk/src/node/vrml97/touch_sensor.cpp trunk/src/node/vrml97/transform.cpp trunk/src/node/vrml97/viewpoint.cpp trunk/src/node/vrml97/visibility_sensor.cpp trunk/src/node/vrml97/world_info.cpp trunk/src/node/x3d-cad-geometry/cad_face.cpp trunk/src/node/x3d-cad-geometry/indexed_quad_set.cpp trunk/src/node/x3d-core/metadata_double.cpp trunk/src/node/x3d-core/metadata_float.cpp trunk/src/node/x3d-core/metadata_integer.cpp trunk/src/node/x3d-core/metadata_set.cpp trunk/src/node/x3d-core/metadata_string.cpp trunk/src/node/x3d-dis/espdu_transform.cpp trunk/src/node/x3d-dis/receiver_pdu.cpp trunk/src/node/x3d-dis/signal_pdu.cpp trunk/src/node/x3d-dis/transmitter_pdu.cpp trunk/src/node/x3d-environmental-effects/texture_background.cpp trunk/src/node/x3d-event-utilities/boolean_filter.cpp trunk/src/node/x3d-event-utilities/boolean_sequencer.cpp trunk/src/node/x3d-event-utilities/boolean_toggle.cpp trunk/src/node/x3d-event-utilities/boolean_trigger.cpp trunk/src/node/x3d-event-utilities/integer_sequencer.cpp trunk/src/node/x3d-event-utilities/integer_trigger.cpp trunk/src/node/x3d-event-utilities/time_trigger.cpp trunk/src/node/x3d-geometry2d/arc2d.cpp trunk/src/node/x3d-geometry2d/arc_close2d.cpp trunk/src/node/x3d-geometry2d/circle2d.cpp trunk/src/node/x3d-geometry2d/disk2d.cpp trunk/src/node/x3d-geometry2d/polyline2d.cpp trunk/src/node/x3d-geometry2d/polypoint2d.cpp trunk/src/node/x3d-geometry2d/rectangle2d.cpp trunk/src/node/x3d-geometry2d/triangle_set2d.cpp trunk/src/node/x3d-geospatial/geo_coordinate.cpp trunk/src/node/x3d-geospatial/geo_elevation_grid.cpp trunk/src/node/x3d-geospatial/geo_location.cpp trunk/src/node/x3d-geospatial/geo_lod.cpp trunk/src/node/x3d-geospatial/geo_metadata.cpp trunk/src/node/x3d-geospatial/geo_origin.cpp trunk/src/node/x3d-geospatial/geo_position_interpolator.cpp trunk/src/node/x3d-geospatial/geo_touch_sensor.cpp trunk/src/node/x3d-geospatial/geo_viewpoint.cpp trunk/src/node/x3d-grouping/static_group.cpp trunk/src/node/x3d-h-anim/h_anim_displacer.cpp trunk/src/node/x3d-h-anim/h_anim_humanoid.cpp trunk/src/node/x3d-h-anim/h_anim_joint.cpp trunk/src/node/x3d-h-anim/h_anim_segment.cpp trunk/src/node/x3d-h-anim/h_anim_site.cpp trunk/src/node/x3d-interpolation/coordinate_interpolator2d.cpp trunk/src/node/x3d-interpolation/position_interpolator2d.cpp trunk/src/node/x3d-key-device-sensor/key_sensor.cpp trunk/src/node/x3d-key-device-sensor/string_sensor.cpp trunk/src/node/x3d-networking/load_sensor.cpp trunk/src/node/x3d-nurbs/contour2d.cpp trunk/src/node/x3d-nurbs/contour_polyline2d.cpp trunk/src/node/x3d-nurbs/coordinate_double.cpp trunk/src/node/x3d-nurbs/nurbs_curve.cpp trunk/src/node/x3d-nurbs/nurbs_curve2d.cpp trunk/src/node/x3d-nurbs/nurbs_orientation_interpolator.cpp trunk/src/node/x3d-nurbs/nurbs_patch_surface.cpp trunk/src/node/x3d-nurbs/nurbs_position_interpolator.cpp trunk/src/node/x3d-nurbs/nurbs_set.cpp trunk/src/node/x3d-nurbs/nurbs_surface_interpolator.cpp trunk/src/node/x3d-nurbs/nurbs_swept_surface.cpp trunk/src/node/x3d-nurbs/nurbs_swung_surface.cpp trunk/src/node/x3d-nurbs/nurbs_texture_coordinate.cpp trunk/src/node/x3d-nurbs/nurbs_trimmed_surface.cpp trunk/src/node/x3d-rendering/color_rgba.cpp trunk/src/node/x3d-rendering/indexed_triangle_fan_set.cpp trunk/src/node/x3d-rendering/indexed_triangle_set.cpp trunk/src/node/x3d-rendering/indexed_triangle_strip_set.cpp trunk/src/node/x3d-rendering/triangle_fan_set.cpp trunk/src/node/x3d-rendering/triangle_set.cpp trunk/src/node/x3d-rendering/triangle_strip_set.cpp trunk/src/node/x3d-shape/fill_properties.cpp trunk/src/node/x3d-shape/line_properties.cpp trunk/src/node/x3d-texturing/multi_texture.cpp trunk/src/node/x3d-texturing/multi_texture_coordinate.cpp trunk/src/node/x3d-texturing/multi_texture_transform.cpp Modified: trunk/ChangeLog =================================================================== --- trunk/ChangeLog 2009-11-24 23:46:54 UTC (rev 4050) +++ trunk/ChangeLog 2009-11-25 08:39:02 UTC (rev 4051) @@ -1,3 +1,140 @@ +2009-11-25 Braden McDaniel <br...@en...> + + Generate openvrml::node_type::do_create_type implementations using + the Boost.Preprocessor library. + + * src/libopenvrml/openvrml/node_impl_util.cpp: Added doc-comment + for OPENVRML_NODE_IMPL_UTIL_DEFINE_DO_CREATE_TYPE. + * src/libopenvrml/openvrml/node_impl_util.h: Added + OPENVRML_NODE_IMPL_UTIL_DEFINE_DO_CREATE_TYPE and supporting + macros. + * src/node/vrml97/anchor.cpp + * src/node/vrml97/appearance.cpp + * src/node/vrml97/audio_clip.cpp + * src/node/vrml97/background.cpp + * src/node/vrml97/billboard.cpp + * src/node/vrml97/box.cpp + * src/node/vrml97/cad_assembly.cpp + * src/node/vrml97/cad_layer.cpp + * src/node/vrml97/collision.cpp + * src/node/vrml97/color.cpp + * src/node/vrml97/color_interpolator.cpp + * src/node/vrml97/cone.cpp + * src/node/vrml97/coordinate.cpp + * src/node/vrml97/coordinate_interpolator.cpp + * src/node/vrml97/cylinder.cpp + * src/node/vrml97/cylinder_sensor.cpp + * src/node/vrml97/directional_light.cpp + * src/node/vrml97/elevation_grid.cpp + * src/node/vrml97/extrusion.cpp + * src/node/vrml97/fog.cpp + * src/node/vrml97/font_style.cpp + * src/node/vrml97/group.cpp + * src/node/vrml97/image_texture.cpp + * src/node/vrml97/indexed_face_set.cpp + * src/node/vrml97/indexed_line_set.cpp + * src/node/vrml97/inline.cpp + * src/node/vrml97/lod.cpp + * src/node/vrml97/material.cpp + * src/node/vrml97/navigation_info.cpp + * src/node/vrml97/normal.cpp + * src/node/vrml97/normal_interpolator.cpp + * src/node/vrml97/orientation_interpolator.cpp + * src/node/vrml97/pixel_texture.cpp + * src/node/vrml97/plane_sensor.cpp + * src/node/vrml97/point_light.cpp + * src/node/vrml97/point_set.cpp + * src/node/vrml97/position_interpolator.cpp + * src/node/vrml97/proximity_sensor.cpp + * src/node/vrml97/scalar_interpolator.cpp + * src/node/vrml97/shape.cpp + * src/node/vrml97/sound.cpp + * src/node/vrml97/sphere.cpp + * src/node/vrml97/sphere_sensor.cpp + * src/node/vrml97/spot_light.cpp + * src/node/vrml97/switch.cpp + * src/node/vrml97/text.cpp + * src/node/vrml97/texture_coordinate.cpp + * src/node/vrml97/texture_transform.cpp + * src/node/vrml97/touch_sensor.cpp + * src/node/vrml97/transform.cpp + * src/node/vrml97/visibility_sensor.cpp + * src/node/vrml97/world_info.cpp + * src/node/vrml97/viewpoint.cpp + * src/node/x3d-cad-geometry/cad_face.cpp + * src/node/x3d-cad-geometry/indexed_quad_set.cpp + * src/node/x3d-core/metadata_double.cpp + * src/node/x3d-core/metadata_float.cpp + * src/node/x3d-core/metadata_integer.cpp + * src/node/x3d-core/metadata_set.cpp + * src/node/x3d-core/metadata_string.cpp + * src/node/x3d-dis/espdu_transform.cpp + * src/node/x3d-dis/receiver_pdu.cpp + * src/node/x3d-dis/signal_pdu.cpp + * src/node/x3d-dis/transmitter_pdu.cpp + * src/node/x3d-environmental-effects/texture_background.cpp + * src/node/x3d-event-utilities/boolean_filter.cpp + * src/node/x3d-event-utilities/boolean_sequencer.cpp + * src/node/x3d-event-utilities/boolean_toggle.cpp + * src/node/x3d-event-utilities/boolean_trigger.cpp + * src/node/x3d-event-utilities/integer_sequencer.cpp + * src/node/x3d-event-utilities/integer_trigger.cpp + * src/node/x3d-event-utilities/time_trigger.cpp + * src/node/x3d-geometry2d/arc_close2d.cpp + * src/node/x3d-geometry2d/arc2d.cpp + * src/node/x3d-geometry2d/circle2d.cpp + * src/node/x3d-geometry2d/disk2d.cpp + * src/node/x3d-geometry2d/polyline2d.cpp + * src/node/x3d-geometry2d/polypoint2d.cpp + * src/node/x3d-geometry2d/rectangle2d.cpp + * src/node/x3d-geometry2d/triangle_set2d.cpp + * src/node/x3d-geospatial/geo_coordinate.cpp + * src/node/x3d-geospatial/geo_elevation_grid.cpp + * src/node/x3d-geospatial/geo_location.cpp + * src/node/x3d-geospatial/geo_lod.cpp + * src/node/x3d-geospatial/geo_metadata.cpp + * src/node/x3d-geospatial/geo_origin.cpp + * src/node/x3d-geospatial/geo_position_interpolator.cpp + * src/node/x3d-geospatial/geo_touch_sensor.cpp + * src/node/x3d-geospatial/geo_viewpoint.cpp + * src/node/x3d-grouping/static_group.cpp + * src/node/x3d-h-anim/h_anim_displacer.cpp + * src/node/x3d-h-anim/h_anim_humanoid.cpp + * src/node/x3d-h-anim/h_anim_joint.cpp + * src/node/x3d-h-anim/h_anim_segment.cpp + * src/node/x3d-h-anim/h_anim_site.cpp + * src/node/x3d-interpolation/coordinate_interpolator2d.cpp + * src/node/x3d-interpolation/position_interpolator2d.cpp + * src/node/x3d-key-device-sensor/key_sensor.cpp + * src/node/x3d-key-device-sensor/string_sensor.cpp + * src/node/x3d-networking/load_sensor.cpp + * src/node/x3d-nurbs/contour_polyline2d.cpp + * src/node/x3d-nurbs/contour2d.cpp + * src/node/x3d-nurbs/coordinate_double.cpp + * src/node/x3d-nurbs/nurbs_curve.cpp + * src/node/x3d-nurbs/nurbs_curve2d.cpp + * src/node/x3d-nurbs/nurbs_orientation_interpolator.cpp + * src/node/x3d-nurbs/nurbs_patch_surface.cpp + * src/node/x3d-nurbs/nurbs_position_interpolator.cpp + * src/node/x3d-nurbs/nurbs_set.cpp + * src/node/x3d-nurbs/nurbs_surface_interpolator.cpp + * src/node/x3d-nurbs/nurbs_swept_surface.cpp + * src/node/x3d-nurbs/nurbs_swung_surface.cpp + * src/node/x3d-nurbs/nurbs_texture_coordinate.cpp + * src/node/x3d-nurbs/nurbs_trimmed_surface.cpp + * src/node/x3d-rendering/color_rgba.cpp + * src/node/x3d-rendering/indexed_triangle_fan_set.cpp + * src/node/x3d-rendering/indexed_triangle_set.cpp + * src/node/x3d-rendering/indexed_triangle_strip_set.cpp + * src/node/x3d-rendering/triangle_fan_set.cpp + * src/node/x3d-rendering/triangle_set.cpp + * src/node/x3d-rendering/triangle_strip_set.cpp + * src/node/x3d-shape/fill_properties.cpp + * src/node/x3d-shape/line_properties.cpp + * src/node/x3d-texturing/multi_texture.cpp + * src/node/x3d-texturing/multi_texture_coordinate.cpp + * src/node/x3d-texturing/multi_texture_transform.cpp + 2009-11-24 Braden McDaniel <br...@en...> * src/libopenvrml/openvrml/node.h Modified: trunk/src/libopenvrml/openvrml/node_impl_util.cpp =================================================================== --- trunk/src/libopenvrml/openvrml/node_impl_util.cpp 2009-11-24 23:46:54 UTC (rev 4050) +++ trunk/src/libopenvrml/openvrml/node_impl_util.cpp 2009-11-25 08:39:02 UTC (rev 4051) @@ -27,6 +27,54 @@ */ /** + * @def OPENVRML_NODE_IMPL_UTIL_DEFINE_DO_CREATE_TYPE(namespace_scope, node_metatype_type, node_instance_type, interface_seq) + * + * @param namespace_scope the namespace scope where @p node_instance_type + * is defined. + * @param node_metatype_type the name of the concrete + * @c openvrml::node_metatype type for the node + * implementation. + * @param node_instance_type the name of the concrete @c openvrml::node type + * for the node implementation. + * @param interface_seq a <a href="http://www.boost.org/doc/libs/release/libs/preprocessor/doc/data/sequences.html"> + * Boost.Preprocessor sequence</a> of + * <a href="http://www.boost.org/doc/libs/release/libs/preprocessor/doc/data/tuples.html">tuples</a> + * defining the supported interfaces for the node + * implementation and the @p node_instance_type + * member that implements them. + * + * @p interface_seq consists of tuples of the following form: + * <pre> + * (@e interface-type, @e value-type, @e interface-id, @e handler) + * </pre> + * + * @e interface-type and @e value-type are both all lower-case; @e + * interface-id is a string literal; and @e handler is the identifier of the + * member of @p node_instance_type that implements the interface. For + * example: + * + * @code + * # define MY_NODE_INTERFACE_SEQ \ + * ((eventin, sfbool, "set_wiggly", set_wiggly_listener)) \ + * ((field, sfbool, "wiggly", wiggly)) \ + * ((exposedfield, mffloat, "heightField", height_field)) + * @endcode + * + * @c MY_NODE_INTERFACE_SEQ is then used to instantiate + * @c OPENVRML_NODE_IMPL_UTIL_DEFINE_DO_CREATE_TYPE: + * + * @code + * OPENVRML_NODE_IMPL_UTIL_DEFINE_DO_CREATE_TYPE(my_namespace, + * my_node_metatype, + * my_node, + * MY_NODE_INTERFACE_SEQ) + * @endcode + * + * In this example, @c set_wiggly_listener, @c wiggly, and @c height_field are + * all members of the @c my_node class. + */ + +/** * @namespace openvrml::node_impl_util * * @brief Utility classes to facilitate node implementations. Modified: trunk/src/libopenvrml/openvrml/node_impl_util.h =================================================================== --- trunk/src/libopenvrml/openvrml/node_impl_util.h 2009-11-24 23:46:54 UTC (rev 4050) +++ trunk/src/libopenvrml/openvrml/node_impl_util.h 2009-11-25 08:39:02 UTC (rev 4051) @@ -2,7 +2,7 @@ // // OpenVRML // -// Copyright 2005, 2006, 2007, 2008 Braden McDaniel +// Copyright 2005, 2006, 2007, 2008, 2009 Braden McDaniel // // 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 @@ -21,9 +21,86 @@ # ifndef OPENVRML_NODE_IMPL_UTIL # define OPENVRML_NODE_IMPL_UTIL +# include <openvrml/exposedfield.h> +# include <boost/preprocessor/cat.hpp> +# include <boost/preprocessor/punctuation/comma_if.hpp> +# include <boost/preprocessor/seq/for_each.hpp> +# include <boost/preprocessor/seq/for_each_i.hpp> +# include <boost/preprocessor/seq/size.hpp> +# include <boost/preprocessor/tuple/elem.hpp> # include <stack> -# include <openvrml/exposedfield.h> +# define OPENVRML_NODE_INTERFACE_TUPLE_ELEM(index, tuple) \ + BOOST_PP_TUPLE_ELEM(4, index, tuple) + +# define OPENVRML_DEFINE_NODE_INTERFACE(interface_tuple) \ + openvrml::node_interface(openvrml::node_interface::BOOST_PP_CAT(OPENVRML_NODE_INTERFACE_TUPLE_ELEM(0, interface_tuple), _id), \ + openvrml::field_value::BOOST_PP_CAT(OPENVRML_NODE_INTERFACE_TUPLE_ELEM(1, interface_tuple), _id), \ + OPENVRML_NODE_INTERFACE_TUPLE_ELEM(2, interface_tuple)) + +# define OPENVRML_DEFINE_SUPPORTED_INTERFACES_ELEM(r, data, i, elem) \ + BOOST_PP_COMMA_IF(i) OPENVRML_DEFINE_NODE_INTERFACE(elem) + +# define OPENVRML_SUPPORTED_INTERFACES_TYPE(interface_seq) \ + boost::array<openvrml::node_interface, BOOST_PP_SEQ_SIZE(interface_seq)> + +# define OPENVRML_ADD_INTERFACE(node_type_obj, interface_type, supported_interface, node, handler) \ + node_type_obj.BOOST_PP_CAT(add_, interface_type)(supported_interface->field_type, \ + supported_interface->id, \ + &node::handler) + +# define OPENVRML_ADD_INTERFACE_TUPLE(node_type_obj, node_instance_type, node_interface, interface_tuple) \ + OPENVRML_ADD_INTERFACE(node_type_obj, \ + OPENVRML_NODE_INTERFACE_TUPLE_ELEM(0, interface_tuple), \ + node_interface, \ + node_instance_type, \ + OPENVRML_NODE_INTERFACE_TUPLE_ELEM(3, interface_tuple)) + +# define OPENVRML_ADD_INTERFACE_ALTERNATIVE(r, data, elem) \ + if (*BOOST_PP_TUPLE_ELEM(4, 0, data) == *++BOOST_PP_TUPLE_ELEM(4, 1, data)) { \ + OPENVRML_ADD_INTERFACE_TUPLE(BOOST_PP_TUPLE_ELEM(4, 2, data), \ + BOOST_PP_TUPLE_ELEM(4, 3, data), \ + BOOST_PP_TUPLE_ELEM(4, 1, data), \ + elem); \ + } else + +# define OPENVRML_NODE_IMPL_UTIL_DEFINE_DO_CREATE_TYPE(namespace_scope, node_metatype_type, node_instance_type, interface_seq) \ + const boost::shared_ptr<openvrml::node_type> \ + namespace_scope::node_metatype_type:: \ + do_create_type(const std::string & id, \ + const openvrml::node_interface_set & interfaces) const \ + OPENVRML_THROW2(openvrml::unsupported_interface, std::bad_alloc) \ + { \ + typedef OPENVRML_SUPPORTED_INTERFACES_TYPE(interface_seq) \ + supported_interfaces_t; \ + static const supported_interfaces_t supported_interfaces = { \ + BOOST_PP_SEQ_FOR_EACH_I( \ + OPENVRML_DEFINE_SUPPORTED_INTERFACES_ELEM, \ + ~, \ + interface_seq) \ + }; \ + typedef openvrml::node_impl_util::node_type_impl<node_instance_type> \ + node_type_t; \ + const boost::shared_ptr<openvrml::node_type> \ + type(new node_type_t(*this, id)); \ + node_type_t & node_type = static_cast<node_type_t &>(*type); \ + for (openvrml::node_interface_set::const_iterator interface_ = \ + interfaces.begin(); \ + interface_ != interfaces.end(); \ + ++interface_) { \ + supported_interfaces_t::const_iterator supported_interface = \ + supported_interfaces.begin() - 1; \ + BOOST_PP_SEQ_FOR_EACH( \ + OPENVRML_ADD_INTERFACE_ALTERNATIVE, \ + (interface_, supported_interface, node_type, node_instance_type), \ + interface_seq) \ + { \ + throw openvrml::unsupported_interface(*interface_); \ + } \ + } \ + return type; \ + } + namespace openvrml { namespace node_impl_util { Modified: trunk/src/node/vrml97/anchor.cpp =================================================================== --- trunk/src/node/vrml97/anchor.cpp 2009-11-24 23:46:54 UTC (rev 4050) +++ trunk/src/node/vrml97/anchor.cpp 2009-11-25 08:39:02 UTC (rev 4051) @@ -3,7 +3,7 @@ // OpenVRML // // Copyright 1998 Chris Morley -// Copyright 2001, 2002, 2003, 2004, 2005, 2006, 2007 Braden McDaniel +// Copyright 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2009 Braden McDaniel // // 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 @@ -174,106 +174,18 @@ openvrml_node_vrml97::anchor_metatype::~anchor_metatype() OPENVRML_NOTHROW {} -/** - * @brief Create a node_type. - * - * @param id the name for the new node_type. - * @param interfaces the interfaces for the new node_type. - * - * @return a node_type_ptr to a node_type capable of creating Anchor nodes. - * - * @exception openvrml::unsupported_interface if @p interfaces includes an interface - * not supported by anchor_metatype. - * @exception std::bad_alloc if memory allocation fails. - */ -const boost::shared_ptr<openvrml::node_type> -openvrml_node_vrml97::anchor_metatype:: -do_create_type(const std::string & id, - const openvrml::node_interface_set & interfaces) const - OPENVRML_THROW2(openvrml::unsupported_interface, std::bad_alloc) -{ - using namespace openvrml; - using namespace openvrml::node_impl_util; +# define ANCHOR_INTERFACE_SEQ \ + ((eventin, mfnode, "addChildren", add_children_listener_)) \ + ((eventin, mfnode, "removeChildren", remove_children_listener_)) \ + ((exposedfield, mfnode, "children", children_)) \ + ((exposedfield, sfstring, "description", description_)) \ + ((exposedfield, mfstring, "parameter", parameter_)) \ + ((exposedfield, mfstring, "url", url_)) \ + ((field, sfvec3f, "bboxCenter", bbox_center_)) \ + ((field, sfvec3f, "bboxSize", bbox_size_)) \ + ((exposedfield, sfnode, "metadata", metadata)) - typedef boost::array<node_interface, 9> supported_interfaces_t; - static const supported_interfaces_t supported_interfaces = { - node_interface(node_interface::eventin_id, - field_value::mfnode_id, - "addChildren"), - node_interface(node_interface::eventin_id, - field_value::mfnode_id, - "removeChildren"), - node_interface(node_interface::exposedfield_id, - field_value::mfnode_id, - "children"), - node_interface(node_interface::exposedfield_id, - field_value::sfstring_id, - "description"), - node_interface(node_interface::exposedfield_id, - field_value::mfstring_id, - "parameter"), - node_interface(node_interface::exposedfield_id, - field_value::mfstring_id, - "url"), - node_interface(node_interface::field_id, - field_value::sfvec3f_id, - "bboxCenter"), - node_interface(node_interface::field_id, - field_value::sfvec3f_id, - "bboxSize"), - node_interface(node_interface::exposedfield_id, - field_value::sfnode_id, - "metadata") - }; - - typedef node_impl_util::node_type_impl<anchor_node> node_type_t; - - const boost::shared_ptr<node_type> type(new node_type_t(*this, id)); - node_type_t & anchorNodeType = static_cast<node_type_t &>(*type); - for (node_interface_set::const_iterator interface_ = interfaces.begin(); - interface_ != interfaces.end(); - ++interface_) { - supported_interfaces_t::const_iterator supported_interface = - supported_interfaces.begin() - 1; - if (*interface_ == *++supported_interface) { - anchorNodeType.add_eventin(supported_interface->field_type, - supported_interface->id, - &anchor_node::add_children_listener_); - } else if (*interface_ == *++supported_interface) { - anchorNodeType.add_eventin(supported_interface->field_type, - supported_interface->id, - &anchor_node::remove_children_listener_); - } else if (*interface_ == *++supported_interface) { - anchorNodeType.add_exposedfield(supported_interface->field_type, - supported_interface->id, - &anchor_node::children_); - } else if (*interface_ == *++supported_interface) { - anchorNodeType.add_exposedfield(supported_interface->field_type, - supported_interface->id, - &anchor_node::description_); - } else if (*interface_ == *++supported_interface) { - anchorNodeType.add_exposedfield(supported_interface->field_type, - supported_interface->id, - &anchor_node::parameter_); - } else if (*interface_ == *++supported_interface) { - anchorNodeType.add_exposedfield(supported_interface->field_type, - supported_interface->id, - &anchor_node::url_); - } else if (*interface_ == *++supported_interface) { - anchorNodeType.add_field(supported_interface->field_type, - supported_interface->id, - &anchor_node::bbox_center_); - } else if (*interface_ == *++supported_interface) { - anchorNodeType.add_field(supported_interface->field_type, - supported_interface->id, - &anchor_node::bbox_size_); - } else if (*interface_ == *++supported_interface) { - anchorNodeType.add_exposedfield(supported_interface->field_type, - supported_interface->id, - &anchor_node::metadata); - } else { - throw unsupported_interface(*interface_); - } - } - return type; -} +OPENVRML_NODE_IMPL_UTIL_DEFINE_DO_CREATE_TYPE(openvrml_node_vrml97, + anchor_metatype, + anchor_node, + ANCHOR_INTERFACE_SEQ) Modified: trunk/src/node/vrml97/appearance.cpp =================================================================== --- trunk/src/node/vrml97/appearance.cpp 2009-11-24 23:46:54 UTC (rev 4050) +++ trunk/src/node/vrml97/appearance.cpp 2009-11-25 08:39:02 UTC (rev 4051) @@ -3,7 +3,7 @@ // OpenVRML // // Copyright 1998 Chris Morley -// Copyright 2001, 2002, 2003, 2004, 2005, 2006, 2007 Braden McDaniel +// Copyright 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2009 Braden McDaniel // // 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 @@ -269,94 +269,15 @@ OPENVRML_NOTHROW {} -/** - * @brief Create a node_type. - * - * @param id the name for the new node_type. - * @param interfaces the interfaces for the new node_type. - * - * @return a boost::shared_ptr<node_type> to a node_type capable of - * creating Appearance nodes. - * - * @exception openvrml::unsupported_interface if @p interfaces includes an interface - * not supported by appearance_metatype. - * @exception std::bad_alloc if memory allocation fails. - */ -const boost::shared_ptr<openvrml::node_type> -openvrml_node_vrml97::appearance_metatype:: -do_create_type(const std::string & id, - const openvrml::node_interface_set & interfaces) const - OPENVRML_THROW2(openvrml::unsupported_interface, std::bad_alloc) -{ - using openvrml::node_interface; - using openvrml::node_interface_set; - using openvrml::node_type; - using openvrml::field_value; - using openvrml::sfnode; - using openvrml::unsupported_interface; - using namespace openvrml::node_impl_util; +# define APPEARANCE_INTERFACE_SEQ \ + ((exposedfield, sfnode, "material", material_)) \ + ((exposedfield, sfnode, "texture", texture_)) \ + ((exposedfield, sfnode, "textureTransform", texture_transform_)) \ + ((exposedfield, sfnode, "metadata", metadata)) \ + ((exposedfield, sfnode, "fillProperties", fill_properties_)) \ + ((exposedfield, sfnode, "lineProperties", line_properties_)) - typedef boost::array<node_interface, 6> supported_interfaces_t; - static const supported_interfaces_t supported_interfaces = { - node_interface(node_interface::exposedfield_id, - field_value::sfnode_id, - "material"), - node_interface(node_interface::exposedfield_id, - field_value::sfnode_id, - "texture"), - node_interface(node_interface::exposedfield_id, - field_value::sfnode_id, - "textureTransform"), - node_interface(node_interface::exposedfield_id, - field_value::sfnode_id, - "metadata"), - node_interface(node_interface::exposedfield_id, - field_value::sfnode_id, - "fillProperties"), - node_interface(node_interface::exposedfield_id, - field_value::sfnode_id, - "lineProperties") - }; - - typedef node_type_impl<appearance_node> node_type_t; - - const boost::shared_ptr<node_type> type(new node_type_t(*this, id)); - node_type_t & appearanceNodeType = static_cast<node_type_t &>(*type); - for (node_interface_set::const_iterator interface_ = interfaces.begin(); - interface_ != interfaces.end(); - ++interface_) { - supported_interfaces_t::const_iterator supported_interface = - supported_interfaces.begin() - 1; - if (*interface_ == *++supported_interface) { - appearanceNodeType.add_exposedfield(supported_interface->field_type, - supported_interface->id, - &appearance_node::material_); - } else if (*interface_ == *++supported_interface) { - appearanceNodeType.add_exposedfield(supported_interface->field_type, - supported_interface->id, - &appearance_node::texture_); - } else if (*interface_ == *++supported_interface) { - appearanceNodeType.add_exposedfield( - supported_interface->field_type, - supported_interface->id, - &appearance_node::texture_transform_); - } else if (*interface_ == *++supported_interface) { - appearanceNodeType.add_exposedfield(supported_interface->field_type, - supported_interface->id, - &appearance_node::metadata); - } else if (*interface_ == *++supported_interface) { - appearanceNodeType.add_exposedfield( - supported_interface->field_type, - supported_interface->id, - &appearance_node::fill_properties_); - } else if (*interface_ == *++supported_interface) { - appearanceNodeType.add_exposedfield( - supported_interface->field_type, - supported_interface->id, - &appearance_node::line_properties_); - } else { - throw unsupported_interface(*interface_); - } - } - return type; -} +OPENVRML_NODE_IMPL_UTIL_DEFINE_DO_CREATE_TYPE(openvrml_node_vrml97, + appearance_metatype, + appearance_node, + APPEARANCE_INTERFACE_SEQ) Modified: trunk/src/node/vrml97/audio_clip.cpp =================================================================== --- trunk/src/node/vrml97/audio_clip.cpp 2009-11-24 23:46:54 UTC (rev 4050) +++ trunk/src/node/vrml97/audio_clip.cpp 2009-11-25 08:39:02 UTC (rev 4051) @@ -3,7 +3,7 @@ // OpenVRML // // Copyright 1998 Chris Morley -// Copyright 2001, 2002, 2003, 2004, 2005, 2006, 2007 Braden McDaniel +// Copyright 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2009 Braden McDaniel // Copyright 2002 S. K. Bose // // This library is free software; you can redistribute it and/or modify it @@ -236,148 +236,22 @@ OPENVRML_NOTHROW {} -/** - * @brief Create a node_type. - * - * @param id the name for the new node_type. - * @param interfaces the interfaces for the new node_type. - * - * @return a boost::shared_ptr<node_type> to a node_type capable of - * creating AudioClip nodes. - * - * @exception openvrml::unsupported_interface if @p interfaces includes an interface - * not supported by audio_clip_metatype. - * @exception std::bad_alloc if memory allocation fails. - */ -const boost::shared_ptr<openvrml::node_type> -openvrml_node_vrml97::audio_clip_metatype:: -do_create_type(const std::string & id, - const openvrml::node_interface_set & interfaces) const - OPENVRML_THROW2(openvrml::unsupported_interface, std::bad_alloc) -{ - using namespace openvrml; - using namespace openvrml::node_impl_util; +# define AUDIO_CLIP_INTERFACE_SEQ \ + ((exposedfield, sfstring, "description", description_)) \ + ((exposedfield, sfbool, "loop", loop_)) \ + ((exposedfield, sffloat, "pitch", pitch_)) \ + ((exposedfield, sftime, "startTime", start_time_)) \ + ((exposedfield, sftime, "stopTime", stop_time_)) \ + ((exposedfield, mfstring, "url", url_)) \ + ((eventout, sftime, "duration_changed", duration_changed_emitter_)) \ + ((eventout, sfbool, "isActive", is_active_emitter_)) \ + ((exposedfield, sfnode, "metadata", metadata)) \ + ((exposedfield, sftime, "pauseTime", pause_time_)) \ + ((exposedfield, sftime, "resumeTime", resume_time_)) \ + ((eventout, sftime, "elapsedTime", elapsed_time_emitter_)) \ + ((eventout, sfbool, "isPaused", is_paused_emitter_)) - typedef boost::array<node_interface, 13> supported_interfaces_t; - static const supported_interfaces_t supported_interfaces = { - node_interface(node_interface::exposedfield_id, - field_value::sfstring_id, - "description"), - node_interface(node_interface::exposedfield_id, - field_value::sfbool_id, - "loop"), - node_interface(node_interface::exposedfield_id, - field_value::sffloat_id, - "pitch"), - node_interface(node_interface::exposedfield_id, - field_value::sftime_id, - "startTime"), - node_interface(node_interface::exposedfield_id, - field_value::sftime_id, - "stopTime"), - node_interface(node_interface::exposedfield_id, - field_value::mfstring_id, - "url"), - node_interface(node_interface::eventout_id, - field_value::sftime_id, - "duration_changed"), - node_interface(node_interface::eventout_id, - field_value::sfbool_id, - "isActive"), - node_interface(node_interface::exposedfield_id, - field_value::sfnode_id, - "metadata"), - node_interface(node_interface::exposedfield_id, - field_value::sftime_id, - "pauseTime"), - node_interface(node_interface::exposedfield_id, - field_value::sftime_id, - "resumeTime"), - node_interface(node_interface::eventout_id, - field_value::sftime_id, - "elapsedTime"), - node_interface(node_interface::eventout_id, - field_value::sfbool_id, - "isPaused") - }; - - typedef node_impl_util::node_type_impl<audio_clip_node> node_type_t; - - const boost::shared_ptr<node_type> type(new node_type_t(*this, id)); - node_type_t & audioClipNodeType = static_cast<node_type_t &>(*type); - for (node_interface_set::const_iterator interface_ = interfaces.begin(); - interface_ != interfaces.end(); - ++interface_) { - supported_interfaces_t::const_iterator supported_interface = - supported_interfaces.begin() - 1; - if (*interface_ == *++supported_interface) { - audioClipNodeType.add_exposedfield( - supported_interface->field_type, - supported_interface->id, - &audio_clip_node::description_); - } else if (*interface_ == *++supported_interface) { - audioClipNodeType.add_exposedfield( - supported_interface->field_type, - supported_interface->id, - &audio_clip_node::loop_); - } else if (*interface_ == *++supported_interface) { - audioClipNodeType.add_exposedfield( - supported_interface->field_type, - supported_interface->id, - &audio_clip_node::pitch_); - } else if (*interface_ == *++supported_interface) { - audioClipNodeType.add_exposedfield( - supported_interface->field_type, - supported_interface->id, - &audio_clip_node::start_time_); - } else if (*interface_ == *++supported_interface) { - audioClipNodeType.add_exposedfield( - supported_interface->field_type, - supported_interface->id, - &audio_clip_node::stop_time_); - } else if (*interface_ == *++supported_interface) { - audioClipNodeType.add_exposedfield( - supported_interface->field_type, - supported_interface->id, - &audio_clip_node::url_); - } else if (*interface_ == *++supported_interface) { - audioClipNodeType.add_eventout( - supported_interface->field_type, - supported_interface->id, - &audio_clip_node::duration_changed_emitter_); - } else if (*interface_ == *++supported_interface) { - audioClipNodeType.add_eventout( - supported_interface->field_type, - supported_interface->id, - &audio_clip_node::is_active_emitter_); - } else if (*interface_ == *++supported_interface) { - audioClipNodeType.add_exposedfield( - supported_interface->field_type, - supported_interface->id, - &audio_clip_node::metadata); - } else if (*interface_ == *++supported_interface) { - audioClipNodeType.add_exposedfield( - supported_interface->field_type, - supported_interface->id, - &audio_clip_node::pause_time_); - } else if (*interface_ == *++supported_interface) { - audioClipNodeType.add_exposedfield( - supported_interface->field_type, - supported_interface->id, - &audio_clip_node::resume_time_); - } else if (*interface_ == *++supported_interface) { - audioClipNodeType.add_eventout( - supported_interface->field_type, - supported_interface->id, - &audio_clip_node::elapsed_time_emitter_); - } else if (*interface_ == *++supported_interface) { - audioClipNodeType.add_eventout( - supported_interface->field_type, - supported_interface->id, - &audio_clip_node::is_paused_emitter_); - } else { - throw unsupported_interface(*interface_); - } - } - return type; -} +OPENVRML_NODE_IMPL_UTIL_DEFINE_DO_CREATE_TYPE(openvrml_node_vrml97, + audio_clip_metatype, + audio_clip_node, + AUDIO_CLIP_INTERFACE_SEQ) Modified: trunk/src/node/vrml97/background.cpp =================================================================== --- trunk/src/node/vrml97/background.cpp 2009-11-24 23:46:54 UTC (rev 4050) +++ trunk/src/node/vrml97/background.cpp 2009-11-25 08:39:02 UTC (rev 4051) @@ -3,7 +3,7 @@ // OpenVRML // // Copyright 1998 Chris Morley -// Copyright 2001, 2002, 2003, 2004, 2005, 2006, 2007 Braden McDaniel +// Copyright 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2009 Braden McDaniel // Copyright 2002 S. K. Bose // // This library is free software; you can redistribute it and/or modify it @@ -244,160 +244,27 @@ } } -/** - * @brief Create a node_type. - * - * @param id the name for the new @c node_type. - * @param interfaces the interfaces for the new @c node_type. - * - * @return a @c boost::shared_ptr<node_type> to a @c node_type capable of - * creating Background nodes. - * - * @exception openvrml::unsupported_interface if @p interfaces includes an interface - * not supported by @c background_metatype. - * @exception std::bad_alloc if memory allocation fails. - */ -const boost::shared_ptr<openvrml::node_type> -openvrml_node_vrml97::background_metatype:: -do_create_type(const std::string & id, - const openvrml::node_interface_set & interfaces) const - OPENVRML_THROW2(openvrml::unsupported_interface, std::bad_alloc) -{ - using namespace openvrml; - using namespace openvrml::node_impl_util; +# define BACKGROUND_INTERFACE_SEQ \ + ((eventin, sfbool, "set_bind", set_bind_listener_)) \ + ((exposedfield, mffloat, "groundAngle", ground_angle_)) \ + ((exposedfield, mfcolor, "groundColor", ground_color_)) \ + ((exposedfield, mfstring, "backUrl", back_url_)) \ + ((exposedfield, mfstring, "bottomUrl", bottom_url_)) \ + ((exposedfield, mfstring, "frontUrl", front_url_)) \ + ((exposedfield, mfstring, "leftUrl", left_url_)) \ + ((exposedfield, mfstring, "rightUrl", right_url_)) \ + ((exposedfield, mfstring, "topUrl", top_url_)) \ + ((exposedfield, mffloat, "skyAngle", sky_angle_)) \ + ((exposedfield, mfcolor, "skyColor", sky_color_)) \ + ((eventout, sfbool, "isBound", is_bound_emitter_)) \ + ((exposedfield, sfnode, "metadata", metadata)) \ + ((eventout, sftime, "bindTime", bind_time_emitter_)) - typedef boost::array<node_interface, 14> supported_interfaces_t; - static const supported_interfaces_t supported_interfaces = { - node_interface(node_interface::eventin_id, - field_value::sfbool_id, - "set_bind"), - node_interface(node_interface::exposedfield_id, - field_value::mffloat_id, - "groundAngle"), - node_interface(node_interface::exposedfield_id, - field_value::mfcolor_id, - "groundColor"), - node_interface(node_interface::exposedfield_id, - field_value::mfstring_id, - "backUrl"), - node_interface(node_interface::exposedfield_id, - field_value::mfstring_id, - "bottomUrl"), - node_interface(node_interface::exposedfield_id, - field_value::mfstring_id, - "frontUrl"), - node_interface(node_interface::exposedfield_id, - field_value::mfstring_id, - "leftUrl"), - node_interface(node_interface::exposedfield_id, - field_value::mfstring_id, - "rightUrl"), - node_interface(node_interface::exposedfield_id, - field_value::mfstring_id, - "topUrl"), - node_interface(node_interface::exposedfield_id, - field_value::mffloat_id, - "skyAngle"), - node_interface(node_interface::exposedfield_id, - field_value::mfcolor_id, - "skyColor"), - node_interface(node_interface::eventout_id, - field_value::sfbool_id, - "isBound"), - node_interface(node_interface::exposedfield_id, - field_value::sfnode_id, - "metadata"), - node_interface(node_interface::eventout_id, - field_value::sftime_id, - "bindTime") - }; +OPENVRML_NODE_IMPL_UTIL_DEFINE_DO_CREATE_TYPE(openvrml_node_vrml97, + background_metatype, + background_node, + BACKGROUND_INTERFACE_SEQ) - typedef node_impl_util::node_type_impl<background_node> node_type_t; - - const boost::shared_ptr<node_type> type(new node_type_t(*this, id)); - node_type_t & backgroundNodeType = static_cast<node_type_t &>(*type); - for (node_interface_set::const_iterator interface_(interfaces.begin()); - interface_ != interfaces.end(); - ++interface_) { - supported_interfaces_t::const_iterator supported_interface = - supported_interfaces.begin() - 1; - if (*interface_ == *++supported_interface) { - backgroundNodeType.add_eventin( - supported_interface->field_type, - supported_interface->id, - &background_node::set_bind_listener_); - } else if (*interface_ == *++supported_interface) { - backgroundNodeType.add_exposedfield( - supported_interface->field_type, - supported_interface->id, - &background_node::ground_angle_); - } else if (*interface_ == *++supported_interface) { - backgroundNodeType.add_exposedfield( - supported_interface->field_type, - supported_interface->id, - &background_node::ground_color_); - } else if (*interface_ == *++supported_interface) { - backgroundNodeType.add_exposedfield( - supported_interface->field_type, - supported_interface->id, - &background_node::back_url_); - } else if (*interface_ == *++supported_interface) { - backgroundNodeType.add_exposedfield( - supported_interface->field_type, - supported_interface->id, - &background_node::bottom_url_); - } else if (*interface_ == *++supported_interface) { - backgroundNodeType.add_exposedfield( - supported_interface->field_type, - supported_interface->id, - &background_node::front_url_); - } else if (*interface_ == *++supported_interface) { - backgroundNodeType.add_exposedfield( - supported_interface->field_type, - supported_interface->id, - &background_node::left_url_); - } else if (*interface_ == *++supported_interface) { - backgroundNodeType.add_exposedfield( - supported_interface->field_type, - supported_interface->id, - &background_node::right_url_); - } else if (*interface_ == *++supported_interface) { - backgroundNodeType.add_exposedfield( - supported_interface->field_type, - supported_interface->id, - &background_node::top_url_); - } else if (*interface_ == *++supported_interface) { - backgroundNodeType.add_exposedfield( - supported_interface->field_type, - supported_interface->id, - &background_node::sky_angle_); - } else if (*interface_ == *++supported_interface) { - backgroundNodeType.add_exposedfield( - supported_interface->field_type, - supported_interface->id, - &background_node::sky_color_); - } else if (*interface_ == *++supported_interface) { - backgroundNodeType.add_eventout( - supported_interface->field_type, - supported_interface->id, - &background_node::is_bound_emitter_); - } else if (*interface_ == *++supported_interface) { - backgroundNodeType.add_exposedfield( - supported_interface->field_type, - supported_interface->id, - &background_node::metadata); - } else if (*interface_ == *++supported_interface) { - backgroundNodeType.add_eventout( - supported_interface->field_type, - supported_interface->id, - &background_node::bind_time_emitter_); - } else { - throw unsupported_interface(*interface_); - } - } - return type; -} - /** * @class openvrml_node_vrml97::background_node * Modified: trunk/src/node/vrml97/billboard.cpp =================================================================== --- trunk/src/node/vrml97/billboard.cpp 2009-11-24 23:46:54 UTC (rev 4050) +++ trunk/src/node/vrml97/billboard.cpp 2009-11-25 08:39:02 UTC (rev 4051) @@ -3,7 +3,7 @@ // OpenVRML // // Copyright 1998 Chris Morley -// Copyright 2001, 2002, 2003, 2004, 2005, 2006, 2007 Braden McDaniel +// Copyright 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2009 Braden McDaniel // Copyright 2002 S. K. Bose // // This library is free software; you can redistribute it and/or modify it @@ -240,97 +240,16 @@ OPENVRML_NOTHROW {} -/** - * @brief Create a node_type. - * - * @param id the name for the new node_type. - * @param interfaces the interfaces for the new node_type. - * - * @return a boost::shared_ptr<node_type> to a node_type capable of - * creating Billboard nodes. - * - * @exception openvrml::unsupported_interface if @p interfaces includes an - * interface not supported by - * @c billboard_metatype. - * @exception std::bad_alloc if memory allocation fails. - */ -const boost::shared_ptr<openvrml::node_type> -openvrml_node_vrml97::billboard_metatype:: -do_create_type(const std::string & id, - const openvrml::node_interface_set & interfaces) const - OPENVRML_THROW2(openvrml::unsupported_interface, std::bad_alloc) -{ - using namespace openvrml; - using namespace openvrml::node_impl_util; +# define BILLBOARD_INTERFACE_SEQ \ + ((eventin, mfnode, "addChildren", add_children_listener_)) \ + ((eventin, mfnode, "removeChildren", remove_children_listener_)) \ + ((exposedfield, sfvec3f, "axisOfRotation", axis_of_rotation_)) \ + ((exposedfield, mfnode, "children", children_)) \ + ((field, sfvec3f, "bboxCenter", bbox_center_)) \ + ((field, sfvec3f, "bboxSize", bbox_size_)) \ + ((exposedfield, sfnode, "metadata", metadata)) - typedef boost::array<node_interface, 7> supported_interfaces_t; - static const supported_interfaces_t supported_interfaces = { - node_interface(node_interface::eventin_id, - field_value::mfnode_id, - "addChildren"), - node_interface(node_interface::eventin_id, - field_value::mfnode_id, - "removeChildren"), - node_interface(node_interface::exposedfield_id, - field_value::sfvec3f_id, - "axisOfRotation"), - node_interface(node_interface::exposedfield_id, - field_value::mfnode_id, - "children"), - node_interface(node_interface::field_id, - field_value::sfvec3f_id, - "bboxCenter"), - node_interface(node_interface::field_id, - field_value::sfvec3f_id, - "bboxSize"), - node_interface(node_interface::exposedfield_id, - field_value::sfnode_id, - "metadata") - }; - - typedef node_impl_util::node_type_impl<billboard_node> node_type_t; - - const boost::shared_ptr<node_type> type(new node_type_t(*this, id)); - node_type_t & billboardNodeType = static_cast<node_type_t &>(*type); - for (node_interface_set::const_iterator interface_(interfaces.begin()); - interface_ != interfaces.end(); - ++interface_) { - supported_interfaces_t::const_iterator supported_interface = - supported_interfaces.begin() - 1; - if (*interface_ == *++supported_interface) { - billboardNodeType.add_eventin( - supported_interface->field_type, - supported_interface->id, - &billboard_node::add_children_listener_); - } else if (*interface_ == *++supported_interface) { - billboardNodeType.add_eventin( - supported_interface->field_type, - supported_interface->id, - &billboard_node::remove_children_listener_); - } else if (*interface_ == *++supported_interface) { - billboardNodeType.add_exposedfield( - supported_interface->field_type, - supported_interface->id, - &billboard_node::axis_of_rotation_); - } else if (*interface_ == *++supported_interface) { - billboardNodeType.add_exposedfield(supported_interface->field_type, - supported_interface->id, - &billboard_node::children_); - } else if (*interface_ == *++supported_interface) { - billboardNodeType.add_field(supported_interface->field_type, - supported_interface->id, - &billboard_node::bbox_center_); - } else if (*interface_ == *++supported_interface) { - billboardNodeType.add_field(supported_interface->field_type, - supported_interface->id, - &billboard_node::bbox_size_); - } else if (*interface_ == *++supported_interface) { - billboardNodeType.add_exposedfield(supported_interface->field_type, - supported_interface->id, - &billboard_node::metadata); - } else { - throw unsupported_interface(*interface_); - } - } - return type; -} +OPENVRML_NODE_IMPL_UTIL_DEFINE_DO_CREATE_TYPE(openvrml_node_vrml97, + billboard_metatype, + billboard_node, + BILLBOARD_INTERFACE_SEQ) Modified: trunk/src/node/vrml97/box.cpp =================================================================== --- trunk/src/node/vrml97/box.cpp 2009-11-24 23:46:54 UTC (rev 4050) +++ trunk/src/node/vrml97/box.cpp 2009-11-25 08:39:02 UTC (rev 4051) @@ -3,7 +3,7 @@ // OpenVRML // // Copyright 1998 Chris Morley -// Copyright 2001, 2002, 2003, 2004, 2005, 2006, 2007 Braden McDaniel +// Copyright 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2009 Braden McDaniel // // 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 @@ -154,66 +154,12 @@ openvrml_node_vrml97::box_metatype::~box_metatype() OPENVRML_NOTHROW {} -/** - * @brief Create a node_type. - * - * @param id the name for the new node_type. - * @param interfaces the interfaces for the new node_type. - * - * @return a boost::shared_ptr<node_type> to a node_type capable of - * creating Box nodes. - * - * @exception openvrml::unsupported_interface if @p interfaces includes an - * interface not supported by - * @c box_metatype. - * @exception std::bad_alloc if memory allocation fails. - */ -const boost::shared_ptr<openvrml::node_type> -openvrml_node_vrml97::box_metatype:: -do_create_type(const std::string & id, - const openvrml::node_interface_set & interfaces) const - OPENVRML_THROW2(openvrml::unsupported_interface, std::bad_alloc) -{ - using namespace openvrml; - using namespace openvrml::node_impl_util; +# define BOX_INTERFACE_SEQ \ + ((field, sfvec3f, "size", size)) \ + ((exposedfield, sfnode, "metadata", metadata)) \ + ((field, sfbool, "solid", solid_)) - typedef boost::array<node_interface, 3> supported_interfaces_t; - static const supported_interfaces_t supported_interfaces = { - node_interface(node_interface::field_id, - field_value::sfvec3f_id, - "size"), - node_interface(node_interface::exposedfield_id, - field_value::sfnode_id, - "metadata"), - node_interface(node_interface::field_id, - field_value::sfbool_id, - "solid") - }; - - typedef node_impl_util::node_type_impl<box_node> node_type_t; - - const boost::shared_ptr<node_type> type(new node_type_t(*this, id)); - node_type_t & boxNodeType = static_cast<node_type_t &>(*type); - for (node_interface_set::const_iterator interface_(interfaces.begin... [truncated message content] |
From: <br...@us...> - 2009-11-25 09:37:01
|
Revision: 4052 http://openvrml.svn.sourceforge.net/openvrml/?rev=4052&view=rev Author: braden Date: 2009-11-25 09:36:54 +0000 (Wed, 25 Nov 2009) Log Message: ----------- Fixed typo in "visibilityLimit". Modified Paths: -------------- trunk/ChangeLog trunk/src/node/vrml97/navigation_info.cpp Modified: trunk/ChangeLog =================================================================== --- trunk/ChangeLog 2009-11-25 08:39:02 UTC (rev 4051) +++ trunk/ChangeLog 2009-11-25 09:36:54 UTC (rev 4052) @@ -1,5 +1,10 @@ 2009-11-25 Braden McDaniel <br...@en...> + * src/node/vrml97/navigation_info.cpp + (NAVIGATION_INFO_INTERFACE_SEQ): Fixed typo in "visibilityLimit". + +2009-11-25 Braden McDaniel <br...@en...> + Generate openvrml::node_type::do_create_type implementations using the Boost.Preprocessor library. Modified: trunk/src/node/vrml97/navigation_info.cpp =================================================================== --- trunk/src/node/vrml97/navigation_info.cpp 2009-11-25 08:39:02 UTC (rev 4051) +++ trunk/src/node/vrml97/navigation_info.cpp 2009-11-25 09:36:54 UTC (rev 4052) @@ -183,16 +183,16 @@ } # define NAVIGATION_INFO_INTERFACE_SEQ \ - ((eventin, sfbool, "set_bind", set_bind_listener_)) \ - ((exposedfield, mffloat, "avatarSize", avatar_size_)) \ - ((exposedfield, sfbool, "headlight", headlight_)) \ - ((exposedfield, sffloat, "speed", speed_)) \ - ((exposedfield, mfstring, "type", type_)) \ - ((exposedfield, sffloat, "visibiltyLimit", visibility_limit_)) \ - ((eventout, sfbool, "isBound", is_bound_emitter_)) \ - ((exposedfield, sfnode, "metadata", metadata)) \ - ((exposedfield, mfstring, "transitionType", transition_type_)) \ - ((eventout, sftime, "bindTime", bind_time_emitter_)) + ((eventin, sfbool, "set_bind", set_bind_listener_)) \ + ((exposedfield, mffloat, "avatarSize", avatar_size_)) \ + ((exposedfield, sfbool, "headlight", headlight_)) \ + ((exposedfield, sffloat, "speed", speed_)) \ + ((exposedfield, mfstring, "type", type_)) \ + ((exposedfield, sffloat, "visibilityLimit", visibility_limit_)) \ + ((eventout, sfbool, "isBound", is_bound_emitter_)) \ + ((exposedfield, sfnode, "metadata", metadata)) \ + ((exposedfield, mfstring, "transitionType", transition_type_)) \ + ((eventout, sftime, "bindTime", bind_time_emitter_)) OPENVRML_NODE_IMPL_UTIL_DEFINE_DO_CREATE_TYPE(openvrml_node_vrml97, navigation_info_metatype, This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <br...@us...> - 2009-11-26 06:36:07
|
Revision: 4053 http://openvrml.svn.sourceforge.net/openvrml/?rev=4053&view=rev Author: braden Date: 2009-11-26 06:36:00 +0000 (Thu, 26 Nov 2009) Log Message: ----------- Upgraded for Doxygen 1.6.1. Modified Paths: -------------- trunk/ChangeLog trunk/doc/Doxyfile Modified: trunk/ChangeLog =================================================================== --- trunk/ChangeLog 2009-11-25 09:36:54 UTC (rev 4052) +++ trunk/ChangeLog 2009-11-26 06:36:00 UTC (rev 4053) @@ -1,3 +1,7 @@ +2009-11-26 Braden McDaniel <br...@en...> + + * doc/Doxyfile: Upgraded for Doxygen 1.6.1. + 2009-11-25 Braden McDaniel <br...@en...> * src/node/vrml97/navigation_info.cpp Modified: trunk/doc/Doxyfile =================================================================== --- trunk/doc/Doxyfile 2009-11-25 09:36:54 UTC (rev 4052) +++ trunk/doc/Doxyfile 2009-11-26 06:36:00 UTC (rev 4053) @@ -1,4 +1,4 @@ -# Doxyfile 1.5.5 +# Doxyfile 1.6.1 #--------------------------------------------------------------------------- # Project related configuration options @@ -6,36 +6,38 @@ DOXYFILE_ENCODING = UTF-8 PROJECT_NAME = OpenVRML PROJECT_NUMBER = 0.18.3 -OUTPUT_DIRECTORY = +OUTPUT_DIRECTORY = CREATE_SUBDIRS = NO OUTPUT_LANGUAGE = English BRIEF_MEMBER_DESC = YES REPEAT_BRIEF = YES -ABBREVIATE_BRIEF = +ABBREVIATE_BRIEF = ALWAYS_DETAILED_SEC = YES INLINE_INHERITED_MEMB = NO FULL_PATH_NAMES = NO -STRIP_FROM_PATH = -STRIP_FROM_INC_PATH = +STRIP_FROM_PATH = +STRIP_FROM_INC_PATH = SHORT_NAMES = NO JAVADOC_AUTOBRIEF = NO QT_AUTOBRIEF = NO MULTILINE_CPP_IS_BRIEF = NO -DETAILS_AT_TOP = YES INHERIT_DOCS = NO SEPARATE_MEMBER_PAGES = NO TAB_SIZE = 8 -ALIASES = +ALIASES = OPTIMIZE_OUTPUT_FOR_C = NO OPTIMIZE_OUTPUT_JAVA = NO OPTIMIZE_FOR_FORTRAN = NO OPTIMIZE_OUTPUT_VHDL = NO +EXTENSION_MAPPING = BUILTIN_STL_SUPPORT = YES CPP_CLI_SUPPORT = NO SIP_SUPPORT = NO +IDL_PROPERTY_SUPPORT = YES DISTRIBUTE_GROUP_DOC = NO SUBGROUPING = YES TYPEDEF_HIDES_STRUCT = NO +SYMBOL_CACHE_SIZE = 0 #--------------------------------------------------------------------------- # Build related configuration options #--------------------------------------------------------------------------- @@ -56,17 +58,21 @@ INLINE_INFO = YES SORT_MEMBER_DOCS = NO SORT_BRIEF_DOCS = NO +SORT_MEMBERS_CTORS_1ST = NO SORT_GROUP_NAMES = NO SORT_BY_SCOPE_NAME = YES GENERATE_TODOLIST = YES GENERATE_TESTLIST = YES GENERATE_BUGLIST = YES GENERATE_DEPRECATEDLIST= YES -ENABLED_SECTIONS = +ENABLED_SECTIONS = MAX_INITIALIZER_LINES = 30 SHOW_USED_FILES = NO SHOW_DIRECTORIES = NO -FILE_VERSION_FILTER = +SHOW_FILES = YES +SHOW_NAMESPACES = YES +FILE_VERSION_FILTER = +LAYOUT_FILE = #--------------------------------------------------------------------------- # configuration options related to warning and progress messages #--------------------------------------------------------------------------- @@ -76,7 +82,7 @@ WARN_IF_DOC_ERROR = YES WARN_NO_PARAMDOC = NO WARN_FORMAT = "$file:$line: $text " -WARN_LOGFILE = +WARN_LOGFILE = #--------------------------------------------------------------------------- # configuration options related to the input files #--------------------------------------------------------------------------- @@ -95,13 +101,14 @@ RECURSIVE = YES EXCLUDE = ../src/libopenvrml/openvrml/local EXCLUDE_SYMLINKS = NO -EXCLUDE_SYMBOLS = +EXCLUDE_PATTERNS = +EXCLUDE_SYMBOLS = EXAMPLE_PATH = ../examples -EXAMPLE_PATTERNS = +EXAMPLE_PATTERNS = EXAMPLE_RECURSIVE = NO -IMAGE_PATH = -INPUT_FILTER = -FILTER_PATTERNS = +IMAGE_PATH = +INPUT_FILTER = +FILTER_PATTERNS = FILTER_SOURCE_FILES = NO #--------------------------------------------------------------------------- # configuration options related to source browsing @@ -119,7 +126,7 @@ #--------------------------------------------------------------------------- ALPHABETICAL_INDEX = NO COLS_IN_ALPHA_INDEX = 5 -IGNORE_PREFIX = +IGNORE_PREFIX = #--------------------------------------------------------------------------- # configuration options related to the HTML output #--------------------------------------------------------------------------- @@ -128,22 +135,35 @@ HTML_FILE_EXTENSION = .html HTML_HEADER = doxygen-header HTML_FOOTER = doxygen-footer -HTML_STYLESHEET = +HTML_TIMESTAMP = NO +HTML_STYLESHEET = HTML_ALIGN_MEMBERS = YES -GENERATE_HTMLHELP = NO +HTML_DYNAMIC_SECTIONS = NO GENERATE_DOCSET = NO DOCSET_FEEDNAME = "Doxygen generated docs" DOCSET_BUNDLE_ID = org.doxygen.Project -HTML_DYNAMIC_SECTIONS = NO -CHM_FILE = -HHC_LOCATION = +GENERATE_HTMLHELP = NO +CHM_FILE = +HHC_LOCATION = GENERATE_CHI = NO +CHM_INDEX_ENCODING = BINARY_TOC = NO TOC_EXPAND = NO +GENERATE_QHP = NO +QCH_FILE = +QHP_NAMESPACE = +QHP_VIRTUAL_FOLDER = doc +QHP_CUST_FILTER_NAME = +QHP_CUST_FILTER_ATTRS = +QHP_SECT_FILTER_ATTRS = +QHG_LOCATION = DISABLE_INDEX = NO ENUM_VALUES_PER_LINE = 1 GENERATE_TREEVIEW = NO +USE_INLINE_TREES = NO TREEVIEW_WIDTH = 250 +FORMULA_FONTSIZE = 10 +SEARCHENGINE = NO #--------------------------------------------------------------------------- # configuration options related to the LaTeX output #--------------------------------------------------------------------------- @@ -153,12 +173,13 @@ MAKEINDEX_CMD_NAME = makeindex COMPACT_LATEX = NO PAPER_TYPE = a4wide -EXTRA_PACKAGES = -LATEX_HEADER = +EXTRA_PACKAGES = +LATEX_HEADER = PDF_HYPERLINKS = NO USE_PDFLATEX = NO LATEX_BATCHMODE = NO LATEX_HIDE_INDICES = NO +LATEX_SOURCE_CODE = NO #--------------------------------------------------------------------------- # configuration options related to the RTF output #--------------------------------------------------------------------------- @@ -166,8 +187,8 @@ RTF_OUTPUT = rtf COMPACT_RTF = NO RTF_HYPERLINKS = NO -RTF_STYLESHEET_FILE = -RTF_EXTENSIONS_FILE = +RTF_STYLESHEET_FILE = +RTF_EXTENSIONS_FILE = #--------------------------------------------------------------------------- # configuration options related to the man page output #--------------------------------------------------------------------------- @@ -180,8 +201,8 @@ #--------------------------------------------------------------------------- GENERATE_XML = NO XML_OUTPUT = xml -XML_SCHEMA = -XML_DTD = +XML_SCHEMA = +XML_DTD = XML_PROGRAMLISTING = YES #--------------------------------------------------------------------------- # configuration options for the AutoGen Definitions output @@ -193,16 +214,16 @@ GENERATE_PERLMOD = NO PERLMOD_LATEX = NO PERLMOD_PRETTY = YES -PERLMOD_MAKEVAR_PREFIX = +PERLMOD_MAKEVAR_PREFIX = #--------------------------------------------------------------------------- -# Configuration options related to the preprocessor +# Configuration options related to the preprocessor #--------------------------------------------------------------------------- ENABLE_PREPROCESSING = YES MACRO_EXPANSION = YES EXPAND_ONLY_PREDEF = NO SEARCH_INCLUDES = YES -INCLUDE_PATH = -INCLUDE_FILE_PATTERNS = +INCLUDE_PATH = +INCLUDE_FILE_PATTERNS = PREDEFINED = BOOST_CLASS_REQUIRE(a,b,c)= \ OPENVRML_ENABLE_RENDER_TEXT_NODE= \ OPENVRML_API= \ @@ -214,23 +235,26 @@ "OPENVRML_THROW3(a,b,c)=throw (a, b, c) " \ "OPENVRML_THROW4(a,b,c,d)=throw (a, b, c, d) " \ "OPENVRML_THROW5(a,b,c,d,e)=throw (a, b, c, d, e) " -EXPAND_AS_DEFINED = +EXPAND_AS_DEFINED = SKIP_FUNCTION_MACROS = YES #--------------------------------------------------------------------------- -# Configuration::additions related to external references +# Configuration::additions related to external references #--------------------------------------------------------------------------- -TAGFILES = -GENERATE_TAGFILE = +TAGFILES = +GENERATE_TAGFILE = ALLEXTERNALS = NO EXTERNAL_GROUPS = YES PERL_PATH = /usr/bin/perl #--------------------------------------------------------------------------- -# Configuration options related to the dot tool +# Configuration options related to the dot tool #--------------------------------------------------------------------------- CLASS_DIAGRAMS = YES -MSCGEN_PATH = +MSCGEN_PATH = HIDE_UNDOC_RELATIONS = YES HAVE_DOT = YES +DOT_FONTNAME = FreeSans +DOT_FONTSIZE = 10 +DOT_FONTPATH = CLASS_GRAPH = YES COLLABORATION_GRAPH = NO GROUP_GRAPHS = YES @@ -243,15 +267,11 @@ GRAPHICAL_HIERARCHY = YES DIRECTORY_GRAPH = NO DOT_IMAGE_FORMAT = png -DOT_PATH = -DOTFILE_DIRS = +DOT_PATH = +DOTFILE_DIRS = DOT_GRAPH_MAX_NODES = 50 MAX_DOT_GRAPH_DEPTH = 0 DOT_TRANSPARENT = YES DOT_MULTI_TARGETS = YES GENERATE_LEGEND = YES DOT_CLEANUP = YES -#--------------------------------------------------------------------------- -# Configuration::additions related to the search engine -#--------------------------------------------------------------------------- -SEARCHENGINE = NO This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <br...@us...> - 2009-11-28 04:01:13
|
Revision: 4055 http://openvrml.svn.sourceforge.net/openvrml/?rev=4055&view=rev Author: braden Date: 2009-11-28 04:01:04 +0000 (Sat, 28 Nov 2009) Log Message: ----------- Improved error messages when loading libjvm fails. Modified Paths: -------------- trunk/ChangeLog trunk/src/script/java.cpp Modified: trunk/ChangeLog =================================================================== --- trunk/ChangeLog 2009-11-26 06:45:48 UTC (rev 4054) +++ trunk/ChangeLog 2009-11-28 04:01:04 UTC (rev 4055) @@ -1,3 +1,8 @@ +2009-11-27 Braden McDaniel <br...@en...> + + * src/script/java.cpp (load_libjvm::load_libjvm()): Improved error + messages when loading libjvm fails. + 2009-11-26 Braden McDaniel <br...@en...> * doc/Doxyfile: Upgraded for Doxygen 1.6.1. Modified: trunk/src/script/java.cpp =================================================================== --- trunk/src/script/java.cpp 2009-11-26 06:45:48 UTC (rev 4054) +++ trunk/src/script/java.cpp 2009-11-28 04:01:04 UTC (rev 4055) @@ -176,14 +176,16 @@ } libjvm_handle = dl::open("libjvm"); if (!libjvm_handle) { - std::cerr << lt_dlerror() << std::endl; + std::cerr << "failed to load libjvm.so: " << dl::error() + << std::endl; return; } CreateJavaVM = reinterpret_cast<jint (*)(JavaVM **, void **, void *)>( dl::sym(libjvm_handle, "JNI_CreateJavaVM")); if (!CreateJavaVM) { - std::cerr << dl::error() << std::endl; + std::cerr << "symbol \"JNI_CreateJavaVM\" not found in libjvm.so: " + << dl::error() << std::endl; } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <br...@us...> - 2009-11-28 06:33:47
|
Revision: 4057 http://openvrml.svn.sourceforge.net/openvrml/?rev=4057&view=rev Author: braden Date: 2009-11-28 06:33:34 +0000 (Sat, 28 Nov 2009) Log Message: ----------- Only install openvrml-player.ui if we were configured to build openvrml-player. Modified Paths: -------------- trunk/ChangeLog trunk/src/Makefile.am Modified: trunk/ChangeLog =================================================================== --- trunk/ChangeLog 2009-11-28 04:03:07 UTC (rev 4056) +++ trunk/ChangeLog 2009-11-28 06:33:34 UTC (rev 4057) @@ -1,3 +1,8 @@ +2009-11-28 Braden McDaniel <br...@en...> + + * src/Makefile.am: Only install openvrml-player.ui if we were + configured to build openvrml-player. + 2009-11-27 Braden McDaniel <br...@en...> * src/script/java.cpp (load_libjvm::load_libjvm()): Improved error Modified: trunk/src/Makefile.am =================================================================== --- trunk/src/Makefile.am 2009-11-28 04:03:07 UTC (rev 4056) +++ trunk/src/Makefile.am 2009-11-28 06:33:34 UTC (rev 4057) @@ -814,12 +814,14 @@ openvrml-xembed/org.openvrml.BrowserControl.service: $(srcdir)/openvrml-xembed/org.openvrml.BrowserControl.service.in +openvrml_player_uidir = $(datadir)/openvrml-player/ui if ENABLE_PLAYER bin_PROGRAMS = openvrml-player/openvrml-player BUILT_SOURCES += \ openvrml-player/browser-host-server-glue.h \ openvrml-player/browser-factory-client-glue.h \ openvrml-player/browser-client-glue.h +dist_openvrml_player_ui_DATA = openvrml-player/openvrml-player.ui endif openvrml_player_openvrml_player_CPPFLAGS = \ @@ -843,9 +845,6 @@ $(DBUS_G_LIBS) \ $(CURL_LIBS) -openvrml_player_uidir = $(datadir)/openvrml-player/ui -dist_openvrml_player_ui_DATA = openvrml-player/openvrml-player.ui - openvrml_player_openvrml_player_SOURCES = \ openvrml-player/filechooserdialog.cpp \ openvrml-player/player.cpp \ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <br...@us...> - 2010-01-23 05:38:32
|
Revision: 4059 http://openvrml.svn.sourceforge.net/openvrml/?rev=4059&view=rev Author: braden Date: 2010-01-23 05:38:24 +0000 (Sat, 23 Jan 2010) Log Message: ----------- Escape control characters for doxygen. Modified Paths: -------------- trunk/ChangeLog trunk/doc/conformance.doc trunk/doc/gpl.doc Modified: trunk/ChangeLog =================================================================== --- trunk/ChangeLog 2009-11-28 06:37:23 UTC (rev 4058) +++ trunk/ChangeLog 2010-01-23 05:38:24 UTC (rev 4059) @@ -1,3 +1,10 @@ +2010-01-23 Braden McDaniel <br...@en...> + + Escape control characters for doxygen. + + * doc/gpl.doc + * doc/conformance.doc + 2009-11-28 Braden McDaniel <br...@en...> * src/Makefile.am: Only install openvrml-player.ui if we were Modified: trunk/doc/conformance.doc =================================================================== --- trunk/doc/conformance.doc 2009-11-28 06:37:23 UTC (rev 4058) +++ trunk/doc/conformance.doc 2010-01-23 05:38:24 UTC (rev 4059) @@ -2159,10 +2159,10 @@ <sup id="note6">6</sup> Expected results incorrect for top, bottom, left and right views. -<sup id="note7">7</sup> Comments for world state, "THE +<sup id="note7">7</sup> Comments for world state, "THE SECOND BACKGROUND IS NOT FORCED TO BE THE ACTIVE BACKGROUND BY SENDING A TRUE EVENT TO IT, BUT BY SENDING A FALSE EVENT TO THE BACKGROUND AT THE TOP OF THE -STACK." The problem is that the second background should @e never be bound +STACK." The problem is that the second background should @e never be bound unless a true event is sent to it as only the first background is bound by default. See comments on <a href="http://sourceforge.net/tracker/?func=detail&atid=107151&aid=210036&group_id=7151"> Modified: trunk/doc/gpl.doc =================================================================== --- trunk/doc/gpl.doc 2009-11-28 06:37:23 UTC (rev 4058) +++ trunk/doc/gpl.doc 2010-01-23 05:38:24 UTC (rev 4059) @@ -620,7 +620,7 @@ * * <pre> * <one line to give the program's name and a brief idea of what it does.> - * Copyright (C) <year> <name of author@> + * Copyright (C) <year@> <name of author@> * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -642,7 +642,7 @@ * like this when it starts in an interactive mode: * * <pre> - * <program> Copyright (C) <year> <name of author@> + * <program@> Copyright (C) <year@> <name of author@> * This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. * This is free software, and you are welcome to redistribute it * under certain conditions; type `show c' for details. This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <br...@us...> - 2010-01-23 05:49:24
|
Revision: 4061 http://openvrml.svn.sourceforge.net/openvrml/?rev=4061&view=rev Author: braden Date: 2010-01-23 05:49:14 +0000 (Sat, 23 Jan 2010) Log Message: ----------- Doc-comment fixes and improvements. Modified Paths: -------------- trunk/ChangeLog trunk/src/libopenvrml/openvrml/browser.cpp trunk/src/libopenvrml/openvrml/event.cpp trunk/src/libopenvrml/openvrml/field_value.cpp trunk/src/libopenvrml/openvrml/node.cpp trunk/src/libopenvrml/openvrml/node_impl_util.h trunk/src/libopenvrml/openvrml/scope.cpp trunk/src/libopenvrml/openvrml/script.cpp Modified: trunk/ChangeLog =================================================================== --- trunk/ChangeLog 2010-01-23 05:43:08 UTC (rev 4060) +++ trunk/ChangeLog 2010-01-23 05:49:14 UTC (rev 4061) @@ -1,5 +1,17 @@ 2010-01-23 Braden McDaniel <br...@en...> + Doc-comment fixes and improvements. + + * src/libopenvrml/openvrml/event.cpp + * src/libopenvrml/openvrml/node.cpp + * src/libopenvrml/openvrml/script.cpp + * src/libopenvrml/openvrml/node_impl_util.h + * src/libopenvrml/openvrml/scope.cpp + * src/libopenvrml/openvrml/field_value.cpp + * src/libopenvrml/openvrml/browser.cpp + +2010-01-23 Braden McDaniel <br...@en...> + Escape control characters for doxygen. * doc/gpl.doc Modified: trunk/src/libopenvrml/openvrml/browser.cpp =================================================================== --- trunk/src/libopenvrml/openvrml/browser.cpp 2010-01-23 05:43:08 UTC (rev 4060) +++ trunk/src/libopenvrml/openvrml/browser.cpp 2010-01-23 05:49:14 UTC (rev 4061) @@ -1502,8 +1502,8 @@ * likelihood any preexisting entry in the map with the same * implementation identifier as @p id will have been removed. * - * @param[in] id a @c node_metatype identifier. - * @param[in] nc a @c boost::shared_ptr to a @c node_metatype + * @param[in] id a @c node_metatype identifier. + * @param[in] metatype a @c boost::shared_ptr to a @c node_metatype * * @exception std::invalid_argument if @p nc is null. * @exception std::bad_alloc if memory allocation fails. Modified: trunk/src/libopenvrml/openvrml/event.cpp =================================================================== --- trunk/src/libopenvrml/openvrml/event.cpp 2010-01-23 05:43:08 UTC (rev 4060) +++ trunk/src/libopenvrml/openvrml/event.cpp 2010-01-23 05:49:14 UTC (rev 4061) @@ -549,6 +549,8 @@ * * @brief Emit an event. * + * @tparam FieldValue a @link FieldValueConcept Field Value@endlink. + * * @param[in] timestamp the current time. * * @exception std::bad_alloc if memory allocation fails. @@ -559,8 +561,6 @@ * * @brief Emit an event. * - * @tparam FieldValue a @link FieldValueConcept Field Value@endlink. - * * @param[in] timestamp the current time. * * @exception std::bad_alloc if memory allocation fails. Modified: trunk/src/libopenvrml/openvrml/field_value.cpp =================================================================== --- trunk/src/libopenvrml/openvrml/field_value.cpp 2010-01-23 05:43:08 UTC (rev 4060) +++ trunk/src/libopenvrml/openvrml/field_value.cpp 2010-01-23 05:49:14 UTC (rev 4061) @@ -38,6 +38,8 @@ */ /** + * @relatesalso openvrml::field_value + * * @brief Stream output. * * @param[in,out] out an output stream. Modified: trunk/src/libopenvrml/openvrml/node.cpp =================================================================== --- trunk/src/libopenvrml/openvrml/node.cpp 2010-01-23 05:43:08 UTC (rev 4060) +++ trunk/src/libopenvrml/openvrml/node.cpp 2010-01-23 05:49:14 UTC (rev 4061) @@ -687,7 +687,7 @@ } /** - * @relates openvrml::node_metatype_id + * @relatesalso openvrml::node_metatype_id * * @param[in] lhs * @param[in] rhs @@ -702,7 +702,7 @@ } /** - * @relates openvrml::node_metatype_id + * @relatesalso openvrml::node_metatype_id * * @param[in] lhs * @param[in] rhs @@ -1121,7 +1121,7 @@ */ /** - * @relates openvrml::node_type + * @relatesalso openvrml::node_type * * @brief Compare for equality. * @@ -1156,7 +1156,7 @@ } /** - * @relates openvrml::node_type + * @relatesalso openvrml::node_type * * @brief Compare for inequality. * @@ -3018,7 +3018,7 @@ } /** - * @fn const boost::intrusive_ptr<openvrml::node> & openvrml::appearance_node::material() const + * @fn const boost::intrusive_ptr<openvrml::node> & openvrml::appearance_node::do_material() const * * @brief Get the material node associated with this appearance node. * @@ -3037,7 +3037,7 @@ } /** - * @fn const boost::intrusive_ptr<openvrml::node> & openvrml::appearance_node::texture() const + * @fn const boost::intrusive_ptr<openvrml::node> & openvrml::appearance_node::do_texture() const * * @brief Get the texture node associated with this appearance node. * @@ -3057,7 +3057,7 @@ } /** - * @fn const boost::intrusive_ptr<openvrml::node> & openvrml::appearance_node::texture_transform() const + * @fn const boost::intrusive_ptr<openvrml::node> & openvrml::appearance_node::do_texture_transform() const * * @brief Get the texture transform node associated with this appearance node. * @@ -3517,7 +3517,7 @@ /** * @brief Right texture. * - * This function delegates to @c @do_right. + * This function delegates to @c #do_right. * * @return the right texture. */ @@ -3674,7 +3674,7 @@ /** * @brief Get the @c color_rgba array encapsulated by this @c node. * - * This function delegates to @c #do_color. + * This function delegates to @c #do_color_rgba. * * @return the @c color_rgba array for this @c node. */ @@ -4167,7 +4167,8 @@ * @brief Called in response to user interaction to activate any child pointing * device sensor nodes. * - * Delegates to @c #do_activate. + * Calls @c pointing_device_sendor_node::activate for child + * @c pointing_device_sensor_node%s, recursively. * * @param[in] timestamp the current time. * @param[in] over whether the pointer is over sensitive geometry. Modified: trunk/src/libopenvrml/openvrml/node_impl_util.h =================================================================== --- trunk/src/libopenvrml/openvrml/node_impl_util.h 2010-01-23 05:43:08 UTC (rev 4060) +++ trunk/src/libopenvrml/openvrml/node_impl_util.h 2010-01-23 05:49:14 UTC (rev 4061) @@ -945,11 +945,11 @@ } template <typename Node> - template <typename EventListenerMember, typename DeducedNode> + template <typename EventEmitterMember, typename DeducedNode> void node_type_impl<Node>:: add_eventout(const openvrml::field_value::type_id type, const std::string & id, - EventListenerMember DeducedNode::* event_emitter) + EventEmitterMember DeducedNode::* event_emitter) OPENVRML_THROW2(std::invalid_argument, std::bad_alloc) { using openvrml::node_interface; Modified: trunk/src/libopenvrml/openvrml/scope.cpp =================================================================== --- trunk/src/libopenvrml/openvrml/scope.cpp 2010-01-23 05:43:08 UTC (rev 4060) +++ trunk/src/libopenvrml/openvrml/scope.cpp 2010-01-23 05:49:14 UTC (rev 4061) @@ -237,7 +237,7 @@ } /** - * @relates openvrml::scope + * @relatesalso openvrml::scope * * @param[in] s a @c scope. * Modified: trunk/src/libopenvrml/openvrml/script.cpp =================================================================== --- trunk/src/libopenvrml/openvrml/script.cpp 2010-01-23 05:43:08 UTC (rev 4060) +++ trunk/src/libopenvrml/openvrml/script.cpp 2010-01-23 05:49:14 UTC (rev 4061) @@ -581,6 +581,12 @@ } /** + * @var boost::scoped_ptr<openvrml::script_factory_registry::impl> openvrml::script_factory_registry::impl_ + * + * @brief A pointer to the implementation instance. + */ + +/** * @internal * * @brief Construct. @@ -901,11 +907,12 @@ /** * @brief Add an interface. * - * @param[in] interface + * @param[in] interface_ * * @exception std::bad_alloc if memory allocation fails. * @exception std::invalid_argument if the @c script_node_type already has an - * interface that conflicts with @p interface. + * interface that conflicts with + * @p interface_. */ void openvrml::script_node::script_node_type:: This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <br...@us...> - 2010-01-23 07:06:49
|
Revision: 4063 http://openvrml.svn.sourceforge.net/openvrml/?rev=4063&view=rev Author: braden Date: 2010-01-23 07:06:42 +0000 (Sat, 23 Jan 2010) Log Message: ----------- Doxygen formatting improvements. Modified Paths: -------------- trunk/ChangeLog trunk/doc/doxygen-header trunk/doc/index.doc Modified: trunk/ChangeLog =================================================================== --- trunk/ChangeLog 2010-01-23 05:55:26 UTC (rev 4062) +++ trunk/ChangeLog 2010-01-23 07:06:42 UTC (rev 4063) @@ -1,5 +1,12 @@ 2010-01-23 Braden McDaniel <br...@en...> + Doxygen formatting improvements. + + * doc/doxygen-header + * doc/index.doc + +2010-01-23 Braden McDaniel <br...@en...> + Doc-comment fixes and improvements. * src/libopenvrml/openvrml/event.cpp Modified: trunk/doc/doxygen-header =================================================================== --- trunk/doc/doxygen-header 2010-01-23 05:55:26 UTC (rev 4062) +++ trunk/doc/doxygen-header 2010-01-23 07:06:42 UTC (rev 4063) @@ -15,10 +15,6 @@ @import url("tabs.css"); @import url("http://openvrml.org/openvrml.css"); -table { - width: 100%; -} - h2 { border-bottom-style: solid; border-bottom-width: 1px; @@ -150,10 +146,12 @@ .memitem { padding: 0; + margin-top: 1em; + margin-bottom: 1em; } -.memitem table { - width: auto; +.memitem .memname { + margin-left: 0; } .memproto, .memdoc { @@ -172,6 +170,7 @@ -webkit-border-top-right-radius: 0.6em; -moz-border-radius-topleft: 0.6em; -moz-border-radius-topright: 0.6em; + white-space: nowrap; } .memdoc { @@ -216,6 +215,22 @@ margin-left: 10%; margin-right: 10%; } + +.contents h3 { + text-align: center; +} + +.contents table { + width: 70%; + margin-left: auto; + margin-right: auto; +} + +.contents table p { + font-size: medium; + margin: 0; + padding: 0; +} </style> </head> <body> Modified: trunk/doc/index.doc =================================================================== --- trunk/doc/index.doc 2010-01-23 05:55:26 UTC (rev 4062) +++ trunk/doc/index.doc 2010-01-23 07:06:42 UTC (rev 4063) @@ -8,7 +8,6 @@ * * @section contents Contents * - * <center> * <table border="0"> * <tr><td>@subpage intro</td></tr> * <tr><td>@ref license</td></tr> @@ -30,5 +29,4 @@ * <tr><td>@subpage lgpl</td></tr> * <tr><td>@subpage conformance</td><td>NIST VRML Test Suite results</td></tr> * </table> - * </center> */ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <br...@us...> - 2010-01-23 07:17:05
|
Revision: 4065 http://openvrml.svn.sourceforge.net/openvrml/?rev=4065&view=rev Author: braden Date: 2010-01-23 07:16:59 +0000 (Sat, 23 Jan 2010) Log Message: ----------- Move documentation concerning rotation normalization from openvrml::sfrotation to openvrml::rotation. Modified Paths: -------------- trunk/ChangeLog trunk/src/libopenvrml/openvrml/basetypes.cpp trunk/src/libopenvrml/openvrml/field_value.cpp Modified: trunk/ChangeLog =================================================================== --- trunk/ChangeLog 2010-01-23 07:09:42 UTC (rev 4064) +++ trunk/ChangeLog 2010-01-23 07:16:59 UTC (rev 4065) @@ -1,5 +1,13 @@ 2010-01-23 Braden McDaniel <br...@en...> + Move documentation concerning rotation normalization from + openvrml::sfrotation to openvrml::rotation. + + * src/libopenvrml/openvrml/basetypes.cpp + * src/libopenvrml/openvrml/field_value.cpp + +2010-01-23 Braden McDaniel <br...@en...> + Doxygen formatting improvements. * doc/doxygen-header Modified: trunk/src/libopenvrml/openvrml/basetypes.cpp =================================================================== --- trunk/src/libopenvrml/openvrml/basetypes.cpp 2010-01-23 07:09:42 UTC (rev 4064) +++ trunk/src/libopenvrml/openvrml/basetypes.cpp 2010-01-23 07:16:59 UTC (rev 4065) @@ -2589,6 +2589,19 @@ * VRML rotations are represented with four single-precision floating point * components. The first three are an axis of rotation, and the last is * rotation in radians. + * + * Per the VRML97 specification, the axis of a @c rotation is a normalized + * vector (5.8). The specification leaves undefined how to deal with an + * attempt to construct a @c rotation from an axis vector that is not + * normalized. In order to allow users of the library to minimize the number + * of normalizations, OpenVRML takes the following approach: + * + * - Attempts to construct a @c rotation axis from a vector that is not + * normalized will yield an assertion failure (abort) unless @c NDEBUG is + * defined when compiling the library (in which case truly wacky behavior + * could result). + * - Assignment to individual components of the axis will result in the + * axis being renormalized upon each assignment. */ /** Modified: trunk/src/libopenvrml/openvrml/field_value.cpp =================================================================== --- trunk/src/libopenvrml/openvrml/field_value.cpp 2010-01-23 07:09:42 UTC (rev 4064) +++ trunk/src/libopenvrml/openvrml/field_value.cpp 2010-01-23 07:16:59 UTC (rev 4065) @@ -2274,20 +2274,20 @@ /** * @class openvrml::sfrotation openvrml/field_value.h * - * @brief A rotation node field value. + * @brief A %rotation node field value. * - * Per the VRML97 specification, the axis of an sfrotation is a normalized - * vector (5.8). The specification leaves undefined how to deal with an - * attempt to construct an sfrotation from an axis vector that is not - * normalized. In order to allow users of the library to minimize the number + * Per the VRML97 specification, the axis of an @c sfrotation is a normalized + * vector (5.8). The specification leaves undefined how to deal with an + * attempt to construct an @c sfrotation from an axis vector that is not + * normalized. In order to allow users of the library to minimize the number * of normalizations, openvrml takes the following approach: * * - Attempts to construct an sfrotation axis from a vector that is not - * normalized will yield an assertion failure (abort) unless NDEBUG is + * normalized will yield an assertion failure (abort) unless @c NDEBUG is * defined when compiling the library (in which case truly wacky behavior * could result). * - Assignment to individual components of the axis will result in the - * axis being re-normalized upon each assignment. + * axis being renormalized upon each assignment. * * @par Model of * @link openvrml::FieldValueConcept Field Value@endlink This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <br...@us...> - 2010-01-24 02:51:15
|
Revision: 4069 http://openvrml.svn.sourceforge.net/openvrml/?rev=4069&view=rev Author: braden Date: 2010-01-24 02:51:07 +0000 (Sun, 24 Jan 2010) Log Message: ----------- Just center the h3 text on the main page (that is, the version text). Modified Paths: -------------- trunk/ChangeLog trunk/doc/doxygen-header Modified: trunk/ChangeLog =================================================================== --- trunk/ChangeLog 2010-01-23 07:42:07 UTC (rev 4068) +++ trunk/ChangeLog 2010-01-24 02:51:07 UTC (rev 4069) @@ -1,5 +1,10 @@ 2010-01-23 Braden McDaniel <br...@en...> + * doc/doxygen-header: Just center the h3 text on the main + page (that is, the version text). + +2010-01-23 Braden McDaniel <br...@en...> + Move documentation concerning rotation normalization from openvrml::sfrotation to openvrml::rotation. Modified: trunk/doc/doxygen-header =================================================================== --- trunk/doc/doxygen-header 2010-01-23 07:42:07 UTC (rev 4068) +++ trunk/doc/doxygen-header 2010-01-24 02:51:07 UTC (rev 4069) @@ -216,7 +216,7 @@ margin-right: 10%; } -.contents h3 { +h1 + h3 { text-align: center; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |