1 #ifndef GfxTL__FACENEIGHBORAACUBETREESTRATEGY_HEADER__
2 #define GfxTL__FACENEIGHBORAACUBETREESTRATEGY_HEADER__
8 template <
class InheritedStrategyT>
11 typedef typename InheritedStrategyT::value_type
value_type;
13 class CellData :
public InheritedStrategyT::CellData
17 template <
class BaseT>
42 const CellType* parent = BaseType::CellParent(cell);
50 if (((childRelation >> (
Dim - 1 - axis)) & 1) ^ (dir & 1))
52 unsigned int faceNeighborRelation =
53 childRelation ^ (1 << (
Dim - 1 - axis));
54 if (BaseType::ExistChild(*parent, faceNeighborRelation))
57 return &(*parent)[faceNeighborRelation];
78 unsigned int faceNeighborRelation =
79 childRelation ^ (1 << (
Dim - 1 - axis));
80 if (BaseType::ExistChild(*
n, faceNeighborRelation))
83 return &(*n)[faceNeighborRelation];
99 unsigned int childRelation = 0;
100 for (
unsigned int i = 0; i <
Dim; ++i)
102 if (cell.Center()[i] > parent.Center()[i])
104 childRelation |= 1 << (
Dim - 1 - i);
107 return childRelation;