Bullet Collision Detection & Physics Library
Classes | Macros | Typedefs | Functions
btDbvt.h File Reference
#include "LinearMath/btAlignedObjectArray.h"
#include "LinearMath/btVector3.h"
#include "LinearMath/btTransform.h"
#include "LinearMath/btAabbUtil2.h"
#include <memory.h>
#include <string.h>
Include dependency graph for btDbvt.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  btDbvtAabbMm
 
struct  btDbvtNode
 
struct  btDbvntNode
 
struct  btDbvt
 The btDbvt class implements a fast dynamic bounding volume tree based on axis aligned bounding boxes (aabb tree). More...
 
struct  btDbvt::sStkNN
 
struct  btDbvt::sStkNP
 
struct  btDbvt::sStkNPS
 
struct  btDbvt::sStkCLN
 
struct  btDbvt::sStknNN
 
struct  btDbvt::ICollide
 
struct  btDbvt::IWriter
 
struct  btDbvt::IClone
 

Macros

#define DBVT_IMPL_GENERIC   0
 btDbvt implementation by Nathanael Presson More...
 
#define DBVT_IMPL_SSE   1
 
#define DBVT_USE_TEMPLATE   0
 
#define DBVT_USE_INTRINSIC_SSE   1
 
#define DBVT_USE_MEMMOVE   1
 
#define DBVT_ENABLE_BENCHMARK   0
 
#define DBVT_INLINE   SIMD_FORCE_INLINE
 
#define DBVT_SELECT_IMPL   DBVT_IMPL_GENERIC
 
#define DBVT_MERGE_IMPL   DBVT_IMPL_GENERIC
 
#define DBVT_INT0_IMPL   DBVT_IMPL_GENERIC
 
#define DBVT_VIRTUAL_DTOR(a)    virtual ~a() {}
 
#define DBVT_VIRTUAL   virtual
 
#define DBVT_PREFIX
 
#define DBVT_IPOLICY   ICollide& policy
 
#define DBVT_CHECKTYPE
 

Typedefs

typedef btDbvtAabbMm btDbvtVolume
 
typedef btAlignedObjectArray< const btDbvtNode * > btNodeStack
 

Functions

DBVT_INLINE bool Intersect (const btDbvtAabbMm &a, const btDbvtAabbMm &b)
 
DBVT_INLINE bool Intersect (const btDbvtAabbMm &a, const btVector3 &b)
 
DBVT_INLINE btScalar Proximity (const btDbvtAabbMm &a, const btDbvtAabbMm &b)
 
DBVT_INLINE int Select (const btDbvtAabbMm &o, const btDbvtAabbMm &a, const btDbvtAabbMm &b)
 
DBVT_INLINE void Merge (const btDbvtAabbMm &a, const btDbvtAabbMm &b, btDbvtAabbMm &r)
 
DBVT_INLINE bool NotEqual (const btDbvtAabbMm &a, const btDbvtAabbMm &b)
 

Macro Definition Documentation

◆ DBVT_CHECKTYPE

#define DBVT_CHECKTYPE

Definition at line 92 of file btDbvt.h.

◆ DBVT_ENABLE_BENCHMARK

#define DBVT_ENABLE_BENCHMARK   0

Definition at line 50 of file btDbvt.h.

◆ DBVT_IMPL_GENERIC

#define DBVT_IMPL_GENERIC   0

btDbvt implementation by Nathanael Presson

Definition at line 29 of file btDbvt.h.

◆ DBVT_IMPL_SSE

#define DBVT_IMPL_SSE   1

Definition at line 30 of file btDbvt.h.

◆ DBVT_INLINE

#define DBVT_INLINE   SIMD_FORCE_INLINE

Definition at line 53 of file btDbvt.h.

◆ DBVT_INT0_IMPL

#define DBVT_INT0_IMPL   DBVT_IMPL_GENERIC

Definition at line 65 of file btDbvt.h.

◆ DBVT_IPOLICY

#define DBVT_IPOLICY   ICollide& policy

Definition at line 91 of file btDbvt.h.

◆ DBVT_MERGE_IMPL

#define DBVT_MERGE_IMPL   DBVT_IMPL_GENERIC

Definition at line 64 of file btDbvt.h.

◆ DBVT_PREFIX

#define DBVT_PREFIX

Definition at line 90 of file btDbvt.h.

◆ DBVT_SELECT_IMPL

#define DBVT_SELECT_IMPL   DBVT_IMPL_GENERIC

Definition at line 63 of file btDbvt.h.

◆ DBVT_USE_INTRINSIC_SSE

#define DBVT_USE_INTRINSIC_SSE   1

Definition at line 44 of file btDbvt.h.

◆ DBVT_USE_MEMMOVE

#define DBVT_USE_MEMMOVE   1

Definition at line 47 of file btDbvt.h.

◆ DBVT_USE_TEMPLATE

#define DBVT_USE_TEMPLATE   0

Definition at line 37 of file btDbvt.h.

◆ DBVT_VIRTUAL

#define DBVT_VIRTUAL   virtual

Definition at line 89 of file btDbvt.h.

◆ DBVT_VIRTUAL_DTOR

#define DBVT_VIRTUAL_DTOR (   a)     virtual ~a() {}

Definition at line 87 of file btDbvt.h.

Typedef Documentation

◆ btDbvtVolume

Definition at line 177 of file btDbvt.h.

◆ btNodeStack

Definition at line 223 of file btDbvt.h.

Function Documentation

◆ Intersect() [1/2]

DBVT_INLINE bool Intersect ( const btDbvtAabbMm a,
const btDbvtAabbMm b 
)

Definition at line 621 of file btDbvt.h.

◆ Intersect() [2/2]

DBVT_INLINE bool Intersect ( const btDbvtAabbMm a,
const btVector3 b 
)

Definition at line 644 of file btDbvt.h.

◆ Merge()

DBVT_INLINE void Merge ( const btDbvtAabbMm a,
const btDbvtAabbMm b,
btDbvtAabbMm r 
)

Definition at line 745 of file btDbvt.h.

◆ NotEqual()

DBVT_INLINE bool NotEqual ( const btDbvtAabbMm a,
const btDbvtAabbMm b 
)

Definition at line 774 of file btDbvt.h.

◆ Proximity()

DBVT_INLINE btScalar Proximity ( const btDbvtAabbMm a,
const btDbvtAabbMm b 
)

Definition at line 658 of file btDbvt.h.

◆ Select()

DBVT_INLINE int Select ( const btDbvtAabbMm o,
const btDbvtAabbMm a,
const btDbvtAabbMm b 
)

Definition at line 666 of file btDbvt.h.