Index: /trunk/nv/interface/mesh_data.hh
===================================================================
--- /trunk/nv/interface/mesh_data.hh	(revision 296)
+++ /trunk/nv/interface/mesh_data.hh	(revision 297)
@@ -235,4 +235,24 @@
 			if ( i >= m_count ) return nullptr;
 			return &m_nodes[i];
+		}
+
+		const mesh_node_data* get_node( const std::string& name ) const 
+		{
+			for ( uint32 i = 0; i < m_count; ++i )
+			{
+				if ( m_nodes[ i ].name == name )
+					return &m_nodes[ i ];
+			}
+			return nullptr;
+		}
+
+		int get_node_index( const std::string& name ) const 
+		{
+			for ( uint32 i = 0; i < m_count; ++i )
+			{
+				if ( m_nodes[ i ].name == name )
+					return (int)i;
+			}
+			return -1;
 		}
 
@@ -281,4 +301,13 @@
 			return &m_meshes[ index ];
 		}
+		const mesh_data* get_mesh( const std::string& name ) const
+		{
+			for ( uint32 i = 0; i < m_count; ++i )
+			{
+				if ( m_meshes[ i ].get_name() == name )
+					return &m_meshes[ i ];
+			}
+			return nullptr;
+		}
 		uint32 get_count() const { return m_count; }
 		const mesh_nodes_data* get_nodes() const { return m_nodes; }
