sofa::core::componentmodel::collision::IntersectorMap Class Reference

Table storing associations between types of collision models and intersectors implementing intersection tests. More...

#include <Intersection.h>

Inheritance diagram for sofa::core::componentmodel::collision::IntersectorMap:

Inheritance graph
[legend]
Collaboration diagram for sofa::core::componentmodel::collision::IntersectorMap:

Collaboration graph
[legend]

Public Member Functions

template<class Model1 , class Model2 , class T >
void add (T *ptr)
template<class Model1 , class Model2 >
void ignore ()
helper::TypeInfo getType (core::CollisionModel *model)
ElementIntersector * get (core::CollisionModel *model1, core::CollisionModel *model2, bool &swapModels)

Protected Attributes

std::map< helper::TypeInfo,
helper::TypeInfo > 
castMap
std::set< const
objectmodel::ClassInfo * > 
classes

Detailed Description

Table storing associations between types of collision models and intersectors implementing intersection tests.

This class uses the new ClassInfo metaclass to be able to recognize derived classes. So it is no longer necessary to register all derived collision models (i.e. an intersector registered for RayModel will also be used for RayPickIntersector).

Definition at line 72 of file Intersection.h.


Member Function Documentation

template<class Model1 , class Model2 , class T >
void sofa::core::componentmodel::collision::IntersectorMap::add ( T *  ptr  )  [inline]

ElementIntersector * sofa::core::componentmodel::collision::IntersectorMap::get ( core::CollisionModel *  model1,
core::CollisionModel *  model2,
bool &  swapModels 
)

helper::TypeInfo sofa::core::componentmodel::collision::IntersectorMap::getType ( core::CollisionModel *  model  ) 

Definition at line 45 of file Intersection.cpp.

References castMap, and classes.

Referenced by get().

template<class Model1 , class Model2 >
void sofa::core::componentmodel::collision::IntersectorMap::ignore (  )  [inline]


Field Documentation

Definition at line 87 of file Intersection.h.

Referenced by add(), getType(), and ignore().

Definition at line 88 of file Intersection.h.

Referenced by add(), getType(), and ignore().


The documentation for this class was generated from the following files:

Generated on Sun Nov 23 04:23:36 2008 for Sofa by  doxygen 1.5.7.1