Clarisse 5.0 SP8 SDK  5.0.5.8.0
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
Public Types | Public Member Functions | Friends | List of all members
GasCompressedTree Class Reference

Inherited by DisplacedPrimitiveGas, and GasGridSubTree.

Public Types

typedef void(* LeafRayHitCallback )(void *data, const unsigned int &index, const CtxEval &eval_ctx, CtxShader &shader_ctx, GeometryRaytraceCtx &raytrace_ctx)
 
typedef void(* LeafFrustumHitCallback )(void *data, const unsigned int &index, const CtxEval &eval_ctx, CtxShader &shader_ctx, GeometryFrustumCtx &frustum_ctx)
 
typedef void(* LeafRayFrustumHitCallback )(void *data, const unsigned int &index, const CtxEval &eval_ctx, CtxShader &shader_ctx, GeometryRayFrustumCtx &ray_frustum_ctx)
 

Public Member Functions

void create (const CoreBasicArray< GMathBbox3d > &bboxes, AppProgressBar *progress_bar=0)
 
void create (const CoreBasicArray< GMathBbox3f > &bboxes, AppProgressBar *progress_bar=0)
 
void create (const CoreBasicArray< GMathBbox3d > &bboxes, const CoreBasicArray< unsigned int > &bbox_indices, AppProgressBar *progress_bar=0)
 
void create (const CoreBasicArray< GMathBbox3f > &bboxes, const CoreBasicArray< unsigned int > &bbox_indices, AppProgressBar *progress_bar=0)
 
void create (const GMathBbox3f *bboxes, const unsigned int &bbox_count, AppProgressBar *progress_bar=0)
 
void create (const GMathBbox3f *bboxes, const unsigned int *bbox_indices, const unsigned int &index_count, AppProgressBar *progress_bar=0)
 
void set_leaf_indices (const unsigned int *indices)
 
CoreBasicArray< unsigned int > get_leaf_indices () const
 
bool is_empty () const
 
const unsigned int & get_leaf_count () const
 
const unsigned int & get_node_count () const
 
const unsigned int & get_depth () const
 
const unsigned int & get_root_index () const
 
unsigned int get_leaf_index (const unsigned int &index) const
 
const GMathBbox3f & get_bbox () const
 
void clear ()
 
virtual size_t get_memory_size () const
 
void set_leaf_raytrace_callbacks (LeafRayHitCallback ray_hit_callback, LeafRayHitCallback ray_hit_nearest_callback, void *data=0)
 
void set_leaf_frustum_callback (LeafFrustumHitCallback frustum_hit_callback, void *data=0)
 
void set_leaf_ray_frustum_callback (LeafRayFrustumHitCallback ray_frustum_hit_callback, void *data)
 
void ray_hit (const CtxEval &eval_ctx, CtxShader &shader_ctx, GeometryRaytraceCtx &raytrace_ctx) const
 
void ray_hit_nearest (const CtxEval &eval_ctx, CtxShader &shader_ctx, GeometryRaytraceCtx &raytrace_ctx) const
 
void frustum_hit (const CtxEval &eval_ctx, CtxShader &shader_ctx, GeometryFrustumCtx &frustum_ctx) const
 
void ray_frustum_hit (const CtxEval &eval_ctx, CtxShader &shader_ctx, GeometryRayFrustumCtx &ray_frustum_ctx) const
 
void ray_hit (const CtxEval &eval_ctx, CtxShader &shader_ctx, GeometryRaytraceCtx &raytrace_ctx, void *leaf_data) const
 
void ray_hit_nearest (const CtxEval &eval_ctx, CtxShader &shader_ctx, GeometryRaytraceCtx &raytrace_ctx, void *leaf_data) const
 
void frustum_hit (const CtxEval &eval_ctx, CtxShader &shader_ctx, GeometryFrustumCtx &frustum_ctx, void *leaf_data) const
 
void ray_query (CtxShader &shader_ctx, const GMathBasicRay<> &ray, const double &tnear, const double &tfar, CoreVector< GasLeafHit > &hits) const
 

Friends

class GasCompressedTreeRaytracer
 
class GasTreeRaytracer< GasCompressedTree >
 
class GasCompressedTreeMotion