From: <br...@us...> - 2010-07-09 16:22:21
|
Revision: 4158 http://openvrml.svn.sourceforge.net/openvrml/?rev=4158&view=rev Author: braden Date: 2010-07-09 16:22:15 +0000 (Fri, 09 Jul 2010) Log Message: ----------- Added semantic action for mfdouble. Modified Paths: -------------- trunk/ChangeLog trunk/src/libopenvrml/openvrml/local/parse_vrml.h Modified: trunk/ChangeLog =================================================================== --- trunk/ChangeLog 2010-07-09 06:41:24 UTC (rev 4157) +++ trunk/ChangeLog 2010-07-09 16:22:15 UTC (rev 4158) @@ -1,5 +1,11 @@ 2010-07-09 Braden McDaniel <br...@en...> + * src/libopenvrml/openvrml/local/parse_vrml.h + (openvrml::local::x3d_vrml_parse_actions::on_mfdouble): Added + semantic action for mfdouble. + +2010-07-09 Braden McDaniel <br...@en...> + * src/node/vrml97/image_texture.cpp (image_texture_node::do_render_texture(openvrml::viewer &)): Lock the image_mutex_ before rendering the texture. Modified: trunk/src/libopenvrml/openvrml/local/parse_vrml.h =================================================================== --- trunk/src/libopenvrml/openvrml/local/parse_vrml.h 2010-07-09 06:41:24 UTC (rev 4157) +++ trunk/src/libopenvrml/openvrml/local/parse_vrml.h 2010-07-09 16:22:15 UTC (rev 4158) @@ -1205,6 +1205,7 @@ on_sfvec3d(*this), on_mfbool(*this), on_mfcolorrgba(*this), + on_mfdouble(*this), on_mfimage(*this), on_mfvec2d(*this), on_mfvec3d(*this), @@ -1370,6 +1371,23 @@ vrml97_parse_actions & actions_; } on_mfcolorrgba; + struct on_mfdouble_t { + explicit on_mfdouble_t(vrml97_parse_actions & actions): + actions_(actions) + {} + + void operator()(const std::vector<double> & val) const + { + assert(!actions_.ps.empty()); + assert(!actions_.ps.top().node_data_.empty()); + actions_.ps.top().node_data_.top() + .current_field_value->second->assign(mfdouble(val)); + } + + private: + vrml97_parse_actions & actions_; + } on_mfdouble; + struct on_mfimage_t { explicit on_mfimage_t(vrml97_parse_actions & actions): actions_(actions) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |