|
From: Braden M. <br...@us...> - 2005-12-11 04:23:44
|
Update of /cvsroot/openvrml/openvrml/src/libopenvrml/openvrml In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv2220/src/libopenvrml/openvrml Modified Files: field_value.cpp node.cpp script.cpp vrml97node.cpp Log Message: Use boost::array. Index: field_value.cpp =================================================================== RCS file: /cvsroot/openvrml/openvrml/src/libopenvrml/openvrml/field_value.cpp,v retrieving revision 1.20 retrieving revision 1.21 diff -C2 -d -r1.20 -r1.21 *** field_value.cpp 8 Dec 2005 06:50:14 -0000 1.20 --- field_value.cpp 11 Dec 2005 04:23:28 -0000 1.21 *************** *** 27,30 **** --- 27,31 ---- # include <algorithm> # include <numeric> + # include <boost/array.hpp> # include <private.h> # include "field_value.h" *************** *** 588,592 **** namespace { ! const char * const field_value_type_id_[] = { "<invalid field type>", "SFBool", --- 589,594 ---- namespace { ! typedef boost::array<const char *, 31> field_value_type_id; ! const field_value_type_id field_value_type_id_ = { "<invalid field type>", "SFBool", *************** *** 662,672 **** std::string str; in >> str; ! static const char * const * const begin = ! field_value_type_id_ + field_value::sfbool_id; ! static const char * const * const end = ! field_value_type_id_ + field_value::mfvec3f_id + 1; ! const char * const * const pos = std::find(begin, end, str); ! if (pos != end) { ! type_id = field_value::type_id(pos - begin); } else { in.setstate(std::ios_base::failbit); --- 664,673 ---- std::string str; in >> str; ! const field_value_type_id::const_iterator pos = ! std::find(field_value_type_id_.begin(), ! field_value_type_id_.end(), ! str); ! if (pos != field_value_type_id_.end()) { ! type_id = field_value::type_id(pos - field_value_type_id_.begin()); } else { in.setstate(std::ios_base::failbit); Index: vrml97node.cpp =================================================================== RCS file: /cvsroot/openvrml/openvrml/src/libopenvrml/openvrml/vrml97node.cpp,v retrieving revision 1.88 retrieving revision 1.89 diff -C2 -d -r1.88 -r1.89 *** vrml97node.cpp 29 Nov 2005 05:58:09 -0000 1.88 --- vrml97node.cpp 11 Dec 2005 04:23:28 -0000 1.89 *************** *** 37,40 **** --- 37,41 ---- # include <limits> # include <boost/algorithm/string/predicate.hpp> + # include <boost/array.hpp> # ifdef OPENVRML_ENABLE_RENDER_TEXT_NODE # include <ft2build.h> *************** *** 4192,4196 **** throw (unsupported_interface, std::bad_alloc) { [...6053 lines suppressed...] node_type_t::field_ptr_ptr( new node_type_t::field_ptr<sfstring>( --- 25056,25072 ---- interface != interfaces.end(); ++interface) { ! supported_interfaces_t::const_iterator supported_interface = ! supported_interfaces.begin() - 1; ! if (*interface == *++supported_interface) { worldInfoNodeType.add_field( ! supported_interface->field_type, ! supported_interface->id, node_type_t::field_ptr_ptr( new node_type_t::field_ptr<mfstring>( &world_info_node::info))); ! } else if (*interface == *++supported_interface) { worldInfoNodeType.add_field( ! supported_interface->field_type, ! supported_interface->id, node_type_t::field_ptr_ptr( new node_type_t::field_ptr<sfstring>( Index: node.cpp =================================================================== RCS file: /cvsroot/openvrml/openvrml/src/libopenvrml/openvrml/node.cpp,v retrieving revision 1.71 retrieving revision 1.72 diff -C2 -d -r1.71 -r1.72 *** node.cpp 8 Dec 2005 09:18:00 -0000 1.71 --- node.cpp 11 Dec 2005 04:23:28 -0000 1.72 *************** *** 27,30 **** --- 27,31 ---- # include <algorithm> # include <sstream> + # include <boost/array.hpp> # include <boost/bind.hpp> # include <boost/lexical_cast.hpp> *************** *** 143,147 **** namespace { ! const char * const node_interface_type_id_[] = { "<invalid interface type>", "eventIn", --- 144,149 ---- namespace { ! typedef boost::array<const char *, 5> node_interface_type_id; ! const node_interface_type_id node_interface_type_id_ = { "<invalid interface type>", "eventIn", *************** *** 194,204 **** in >> interface_type_id; ! static const char * const * const begin = ! node_interface_type_id_ + node_interface::eventin_id; ! static const char * const * const end = ! node_interface_type_id_ + node_interface::field_id + 1; ! const char * const * const pos = find(begin, end, interface_type_id); ! if (pos != end) { ! type = node_interface::type_id(pos - begin); } else { in.setstate(std::ios_base::failbit); --- 196,205 ---- in >> interface_type_id; ! const node_interface_type_id::const_iterator pos = ! find(node_interface_type_id_.begin(), ! node_interface_type_id_.end(), ! interface_type_id); ! if (pos != node_interface_type_id_.end()) { ! type = node_interface::type_id(pos - node_interface_type_id_.begin()); } else { in.setstate(std::ios_base::failbit); Index: script.cpp =================================================================== RCS file: /cvsroot/openvrml/openvrml/src/libopenvrml/openvrml/script.cpp,v retrieving revision 1.59 retrieving revision 1.60 diff -C2 -d -r1.59 -r1.60 *** script.cpp 8 Dec 2005 09:21:13 -0000 1.59 --- script.cpp 11 Dec 2005 04:23:28 -0000 1.60 *************** *** 25,28 **** --- 25,29 ---- # endif + # include <boost/array.hpp> # include <private.h> # include "browser.h" *************** *** 629,633 **** // lexicographically increasing order according to their "id" member. // ! const openvrml::node_interface built_in_script_interfaces_[] = { openvrml::node_interface(openvrml::node_interface::field_id, openvrml::field_value::sfbool_id, --- 630,635 ---- // lexicographically increasing order according to their "id" member. // ! const boost::array<openvrml::node_interface, 3> ! built_in_script_interfaces_ = { openvrml::node_interface(openvrml::node_interface::field_id, openvrml::field_value::sfbool_id, *************** *** 651,655 **** node_type(class_, "Script") { ! for (size_t i = 0; i < 3; ++i) { bool succeeded = this->interfaces_.insert(built_in_script_interfaces_[i]).second; --- 653,657 ---- node_type(class_, "Script") { ! for (size_t i = 0; i < built_in_script_interfaces_.size(); ++i) { bool succeeded = this->interfaces_.insert(built_in_script_interfaces_[i]).second; *************** *** 744,749 **** set_difference(this->interfaces_.begin(), this->interfaces_.end(), ! built_in_script_interfaces_, ! built_in_script_interfaces_ + 3, interface_inserter, node_interface_set::key_compare()); --- 746,751 ---- set_difference(this->interfaces_.begin(), this->interfaces_.end(), ! built_in_script_interfaces_.begin(), ! built_in_script_interfaces_.end(), interface_inserter, node_interface_set::key_compare()); |