Blender V2.61 - r43446
Classes | Defines | Functions | Variables

reorganize.h File Reference

#include <float.h>
#include <math.h>
#include <stdio.h>
#include <algorithm>
#include <queue>
#include <vector>
#include "BKE_global.h"

Go to the source code of this file.

Classes

struct  OVBVHNode
struct  VBVH_optimalPackSIMD< Node, TestCost >
struct  VBVH_optimalPackSIMD< Node, TestCost >::calc_best

Defines

#define MAX_CUT_SIZE   4
#define MAX_OPTIMIZE_CHILDS   MAX_CUT_SIZE

Functions

template<class Node >
bool node_fits_inside (Node *a, Node *b)
template<class Node >
void reorganize_find_fittest_parent (Node *tree, Node *node, std::pair< float, Node * > &cost)
template<class Node >
void reorganize (Node *root)
template<class Node >
void remove_useless (Node *node, Node **new_node)
template<class Node >
void pushup (Node *parent)
template<class Node , int SSize>
void pushup_simd (Node *parent)
template<class Node >
void pushdown (Node *parent)
template<class Node >
float bvh_refit (Node *node)

Variables

int tot_pushup
int tot_pushdown
static int tot_moves = 0

Detailed Description

Definition in file reorganize.h.


Define Documentation

#define MAX_CUT_SIZE   4
#define MAX_OPTIMIZE_CHILDS   MAX_CUT_SIZE

Function Documentation

template<class Node >
float bvh_refit ( Node node)

Definition at line 284 of file reorganize.h.

References bb_area(), DO_MAX, DO_MIN, INIT_MINMAX, and is_leaf().

Referenced by bvh_done< VBVHTree >().

template<class Node >
bool node_fits_inside ( Node a,
Node b 
)

Definition at line 58 of file reorganize.h.

References bb_fits_inside().

Referenced by reorganize_find_fittest_parent().

template<class Node >
void pushdown ( Node parent)

Definition at line 244 of file reorganize.h.

References bb_fits_inside(), i, next, RE_rayobject_isAligned, and tot_pushdown.

Referenced by bvh_done< VBVHTree >().

template<class Node >
void pushup ( Node parent)
template<class Node , int SSize>
void pushup_simd ( Node parent)
template<class Node >
void remove_useless ( Node node,
Node **  new_node 
)

Definition at line 138 of file reorganize.h.

References next, RenderLayer::prev, and RE_rayobject_isAligned.

Referenced by bvh_done< VBVHTree >().

template<class Node >
void reorganize ( Node root)
template<class Node >
void reorganize_find_fittest_parent ( Node tree,
Node node,
std::pair< float, Node * > &  cost 
)

Definition at line 64 of file reorganize.h.

References bb_area(), min, node_fits_inside(), and RE_rayobject_isAligned.

Referenced by reorganize().


Variable Documentation

int tot_moves = 0 [static]

Definition at line 85 of file reorganize.h.

Referenced by bfree(), and reorganize().

Definition at line 34 of file rayobject_vbvh.cpp.

Referenced by bfree(), and pushdown().

Definition at line 33 of file rayobject_vbvh.cpp.

Referenced by bfree(), and pushup().