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  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::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

#define DBVT_CHECKTYPE

Definition at line 91 of file btDbvt.h.

#define DBVT_ENABLE_BENCHMARK   0

Definition at line 52 of file btDbvt.h.

#define DBVT_IMPL_GENERIC   0

btDbvt implementation by Nathanael Presson

Definition at line 31 of file btDbvt.h.

#define DBVT_IMPL_SSE   1

Definition at line 32 of file btDbvt.h.

#define DBVT_INLINE   SIMD_FORCE_INLINE

Definition at line 55 of file btDbvt.h.

#define DBVT_INT0_IMPL   DBVT_IMPL_GENERIC

Definition at line 67 of file btDbvt.h.

#define DBVT_IPOLICY   ICollide& policy

Definition at line 90 of file btDbvt.h.

#define DBVT_MERGE_IMPL   DBVT_IMPL_GENERIC

Definition at line 66 of file btDbvt.h.

#define DBVT_PREFIX

Definition at line 89 of file btDbvt.h.

#define DBVT_SELECT_IMPL   DBVT_IMPL_GENERIC

Definition at line 65 of file btDbvt.h.

#define DBVT_USE_INTRINSIC_SSE   1

Definition at line 46 of file btDbvt.h.

#define DBVT_USE_MEMMOVE   1

Definition at line 49 of file btDbvt.h.

#define DBVT_USE_TEMPLATE   0

Definition at line 39 of file btDbvt.h.

#define DBVT_VIRTUAL   virtual

Definition at line 88 of file btDbvt.h.

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

Definition at line 87 of file btDbvt.h.

Typedef Documentation

Definition at line 175 of file btDbvt.h.

Definition at line 192 of file btDbvt.h.

Function Documentation

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

Definition at line 534 of file btDbvt.h.

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

Definition at line 559 of file btDbvt.h.

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

Definition at line 667 of file btDbvt.h.

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

Definition at line 690 of file btDbvt.h.

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

Definition at line 578 of file btDbvt.h.

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

Definition at line 588 of file btDbvt.h.