Collision Checker
solver_entity_fcl_factory.h
Go to the documentation of this file.
1 #pragma once
2 
9 
10 namespace collision {
11 namespace solvers {
12 namespace solverFCL {
14  const ISolverEntity_FCL *entity = obj->getFclInterface();
15  if (!entity) return nullptr;
16  switch (entity->getFclEntityType()) {
18  return new FCLCollisionObjectGroup(
19  obj->getContainerInterface(), obj,
20  static_cast<const IFCLCollisionObjectGroup *>(entity));
21  break;
23  return new FCLCollisionObject(
24  static_cast<const CollisionObject *>(obj),
25  static_cast<const IFCLCollisionObject *>(entity));
26  break;
27  default:
28  return nullptr;
29  break;
30  }
31 }
32 } // namespace solverFCL
33 } // namespace solvers
34 } // namespace collision
virtual FCL_COLLISION_ENTITY_TYPE getFclEntityType(void) const
SolverEntity_FCL * createFCLSolverEntity(const CollisionObjectEx *obj)
virtual const solvers::solverFCL::ISolverEntity_FCL * getFclInterface(void) const
virtual const ICollisionContainer * getContainerInterface(void) const
Provides functionality to use different collision solvers.