51 #define COAL_PRETTY_FUNCTION __FUNCSIG__
53 #define COAL_PRETTY_FUNCTION __PRETTY_FUNCTION__
56 #define COAL_UNUSED_VARIABLE(var) (void)(var)
59 #define COAL_ONLY_USED_FOR_DEBUG(var) COAL_UNUSED_VARIABLE(var)
61 #define COAL_ONLY_USED_FOR_DEBUG(var)
64 #define COAL_THROW_PRETTY(message, exception) \
66 std::stringstream ss; \
67 ss << "From file: " << __FILE__ << "\n"; \
68 ss << "in function: " << COAL_PRETTY_FUNCTION << "\n"; \
69 ss << "at line: " << __LINE__ << "\n"; \
70 ss << "message: " << message << "\n"; \
71 throw exception(ss.str()); \
74 #ifdef COAL_TURN_ASSERT_INTO_EXCEPTION
75 #define COAL_ASSERT(check, message, exception) \
78 COAL_THROW_PRETTY(message, exception); \
82 #define COAL_ASSERT(check, message, exception) \
84 assert((check) && message); \
88 #if (__cplusplus >= 201103L || (defined(_MSC_VER) && _MSC_VER >= 1600))
89 #define COAL_WITH_CXX11_SUPPORT
92 #if defined(__GNUC__) || defined(__clang__)
93 #define COAL_COMPILER_DIAGNOSTIC_PUSH _Pragma("GCC diagnostic push")
94 #define COAL_COMPILER_DIAGNOSTIC_POP _Pragma("GCC diagnostic pop")
95 #define COAL_COMPILER_DIAGNOSTIC_IGNORED_DEPRECECATED_DECLARATIONS \
96 _Pragma("GCC diagnostic ignored \"-Wdeprecated-declarations\"")
99 #if (defined(__GNUC__) && \
100 ((__GNUC__ > 4) || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6)))
101 #define COAL_COMPILER_DIAGNOSTIC_IGNORED_MAYBE_UNINITIALIZED \
102 _Pragma("GCC diagnostic ignored \"-Wmaybe-uninitialized\"")
104 #elif (defined(__clang__) && defined(__has_warning) && \
105 __has_warning("-Wmaybe-uninitialized"))
106 #define COAL_COMPILER_DIAGNOSTIC_IGNORED_MAYBE_UNINITIALIZED \
107 _Pragma("clang diagnostic ignored \"-Wmaybe-uninitialized\"")
109 #define COAL_COMPILER_DIAGNOSTIC_IGNORED_MAYBE_UNINITIALIZED
112 #define COAL_COMPILER_DIAGNOSTIC_PUSH _Pragma("warning(push)")
113 #define COAL_COMPILER_DIAGNOSTIC_POP _Pragma("warning(pop)")
114 #define COAL_COMPILER_DIAGNOSTIC_IGNORED_DEPRECECATED_DECLARATIONS \
115 _Pragma("warning(disable : 4996)")
116 #define COAL_COMPILER_DIAGNOSTIC_IGNORED_MAYBE_UNINITIALIZED \
117 _Pragma("warning(disable : 4700)")
119 #define COAL_COMPILER_DIAGNOSTIC_PUSH
120 #define COAL_COMPILER_DIAGNOSTIC_POP
121 #define COAL_COMPILER_DIAGNOSTIC_IGNORED_DEPRECECATED_DECLARATIONS
122 #define COAL_COMPILER_DIAGNOSTIC_IGNORED_MAYBE_UNINITIALIZED
126 using std::dynamic_pointer_cast;
127 using std::make_shared;
128 using std::shared_ptr;
130 class CollisionObject;
148 #ifdef COAL_BACKWARD_COMPATIBILITY_WITH_HPP_FCL
151 using namespace coal;
A class describing the AABB collision structure, which is a box in 3D space determined by two diagona...
Definition: AABB.h:55
A base class describing the bounding hierarchy of a mesh model or a point cloud model (which is viewe...
Definition: BVH_model.h:66
The geometry for the object for collision or distance computation.
Definition: collision_object.h:96
Octree is one type of collision geometry which can encode uncertainty information in the sensor data.
Definition: octree.h:53
Main namespace.
Definition: broadphase_bruteforce.h:44
shared_ptr< CollisionObject > CollisionObjectPtr_t
Definition: fwd.hh:130
shared_ptr< const CollisionObject > CollisionObjectConstPtr_t
Definition: fwd.hh:132
shared_ptr< CollisionGeometry > CollisionGeometryPtr_t
Definition: fwd.hh:133
shared_ptr< const OcTree > OcTreeConstPtr_t
Definition: fwd.hh:145
shared_ptr< OcTree > OcTreePtr_t
Definition: fwd.hh:143
shared_ptr< const CollisionGeometry > CollisionGeometryConstPtr_t
Definition: fwd.hh:135
shared_ptr< BVHModelBase > BVHModelPtr_t
Definition: fwd.hh:140