Text archives Help
- From: "Thiago Ize" <thiago@sci.utah.edu>
- To: manta@sci.utah.edu
- Subject: [Manta] r2170 - trunk/Model/Groups
- Date: Tue, 8 Apr 2008 15:17:41 -0600 (MDT)
Author: thiago
Date: Tue Apr 8 15:17:40 2008
New Revision: 2170
Modified:
trunk/Model/Groups/Mesh.cc
trunk/Model/Groups/Mesh.h
Log:
inlining the Mesh::get() functions just like in Group. Now Mesh::get()
is just as fast Group::get().
Modified: trunk/Model/Groups/Mesh.cc
==============================================================================
--- trunk/Model/Groups/Mesh.cc (original)
+++ trunk/Model/Groups/Mesh.cc Tue Apr 8 15:17:40 2008
@@ -178,17 +178,6 @@
throw InternalError(string("Illegal call to ") + MANTA_FUNC);
}
-MeshTriangle* Mesh::get( size_t i ) {
- ASSERT( i < objs.size() );
- return static_cast<MeshTriangle*>(objs[i]);
-}
-
-const MeshTriangle* Mesh::get(size_t i) const
-{
- ASSERT( i < objs.size() );
- return static_cast<MeshTriangle*>(objs[i]);
-}
-
void Mesh::addTriangle(MeshTriangle *meshTri)
{
meshTri->attachMesh(this, objs.size());
Modified: trunk/Model/Groups/Mesh.h
==============================================================================
--- trunk/Model/Groups/Mesh.h (original)
+++ trunk/Model/Groups/Mesh.h Tue Apr 8 15:17:40 2008
@@ -74,8 +74,16 @@
virtual void add(Object* obj);
virtual void set( int i, Object *obj );
- MeshTriangle* get( size_t i );
- const MeshTriangle* get( size_t i ) const;
+ inline MeshTriangle* get( size_t i ) {
+ ASSERT( i < objs.size() );
+ //For some reason static_cast doesn't work when I inline this
+ return reinterpret_cast<MeshTriangle*>(objs[i]);
+ }
+ inline const MeshTriangle* get( size_t i ) const {
+ ASSERT( i < objs.size() );
+ //For some reason static_cast doesn't work when I inline this
+ return reinterpret_cast<MeshTriangle* const>(objs[i]);
+ }
virtual inline Vector getVertex( size_t tri_id, size_t which_vert, Real
t = 0 ) const {
return vertices[vertex_indices[3*tri_id + which_vert]];
- [Manta] r2170 - trunk/Model/Groups, Thiago Ize, 04/08/2008
Archive powered by MHonArc 2.6.16.