lux::TaBRecKdTreeAccel Class Reference

#include <tabreckdtreeaccel.h>

Inheritance diagram for lux::TaBRecKdTreeAccel:

lux::Aggregate lux::Primitive

List of all members.

Public Member Functions

 TaBRecKdTreeAccel (const vector< Primitive * > &p, int icost, int scost, float ebonus, int maxp, int maxDepth)
BBox WorldBound () const
bool CanIntersect () const
 ~TaBRecKdTreeAccel ()
void buildTree (int nodeNum, const BBox &bounds, const vector< BBox > &primBounds, int *primNums, int nprims, int depth, TaBRecBoundEdge *edges[3], int *prims0, int *prims1, int badRefines=0)
bool Intersect (const Ray &ray, Intersection *isect) const
bool IntersectP (const Ray &ray) const

Static Public Member Functions

static PrimitiveCreateAccelerator (const vector< Primitive * > &prims, const ParamSet &ps)

Private Attributes

BBox bounds
int isectCost
int traversalCost
int maxPrims
float emptyBonus
u_int nPrims
Primitive ** prims
TaBRecKdAccelNodenodes
int nAllocedNodes
int nextFreeNode
MemoryArena arena


Detailed Description

Definition at line 164 of file tabreckdtreeaccel.h.


Constructor & Destructor Documentation

TaBRecKdTreeAccel::TaBRecKdTreeAccel ( const vector< Primitive * > &  p,
int  icost,
int  scost,
float  ebonus,
int  maxp,
int  maxDepth 
)

TaBRecKdTreeAccel::~TaBRecKdTreeAccel (  ) 

Definition at line 104 of file tabreckdtree.cpp.

References lux::FreeAligned(), nodes, and prims.


Member Function Documentation

void TaBRecKdTreeAccel::buildTree ( int  nodeNum,
const BBox bounds,
const vector< BBox > &  primBounds,
int *  primNums,
int  nprims,
int  depth,
TaBRecBoundEdge edges[3],
int *  prims0,
int *  prims1,
int  badRefines = 0 
)

bool lux::TaBRecKdTreeAccel::CanIntersect (  )  const [inline, virtual]

Reimplemented from lux::Primitive.

Definition at line 171 of file tabreckdtreeaccel.h.

Primitive * TaBRecKdTreeAccel::CreateAccelerator ( const vector< Primitive * > &  prims,
const ParamSet ps 
) [static]

bool TaBRecKdTreeAccel::Intersect ( const Ray ray,
Intersection isect 
) const [virtual]

bool TaBRecKdTreeAccel::IntersectP ( const Ray ray  )  const [virtual]

BBox lux::TaBRecKdTreeAccel::WorldBound (  )  const [inline, virtual]

Implements lux::Primitive.

Definition at line 170 of file tabreckdtreeaccel.h.

References bounds.


Member Data Documentation

Definition at line 194 of file tabreckdtreeaccel.h.

Referenced by buildTree().

Definition at line 185 of file tabreckdtreeaccel.h.

Referenced by Intersect(), IntersectP(), TaBRecKdTreeAccel(), and WorldBound().

Definition at line 187 of file tabreckdtreeaccel.h.

Referenced by buildTree(), and CreateAccelerator().

Definition at line 186 of file tabreckdtreeaccel.h.

Referenced by buildTree(), and CreateAccelerator().

Definition at line 186 of file tabreckdtreeaccel.h.

Referenced by buildTree(), and CreateAccelerator().

Definition at line 192 of file tabreckdtreeaccel.h.

Referenced by buildTree(), and TaBRecKdTreeAccel().

Definition at line 192 of file tabreckdtreeaccel.h.

Referenced by buildTree(), and TaBRecKdTreeAccel().

Definition at line 191 of file tabreckdtreeaccel.h.

Referenced by buildTree(), Intersect(), IntersectP(), and ~TaBRecKdTreeAccel().

Definition at line 189 of file tabreckdtreeaccel.h.

Referenced by TaBRecKdTreeAccel().

Definition at line 186 of file tabreckdtreeaccel.h.

Referenced by buildTree().


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

Generated on Sat Aug 15 14:16:50 2009 for lux by  doxygen 1.5.9