Stxxl
1.4.0
|
A static_quadtree holds 4^Level elements arranged in a quad tree. More...
#include <matrix_arithmetic.h>
Public Types | |
typedef static_quadtree < ValueType, Level-1 > | smaller_static_quadtree |
Public Member Functions | |
static_quadtree (smaller_static_quadtree ul, smaller_static_quadtree ur, smaller_static_quadtree dl, smaller_static_quadtree dr) | |
static_quadtree () | |
static_quadtree & | operator&= (const static_quadtree &right) |
static_quadtree & | operator+= (const static_quadtree &right) |
static_quadtree & | operator-= (const static_quadtree &right) |
static_quadtree | operator& (const static_quadtree &right) const |
static_quadtree | operator+ (const static_quadtree &right) const |
static_quadtree | operator- (const static_quadtree &right) const |
Public Attributes | |
smaller_static_quadtree | ul |
smaller_static_quadtree | ur |
smaller_static_quadtree | dl |
smaller_static_quadtree | dr |
A static_quadtree holds 4^Level elements arranged in a quad tree.
Static quad trees are useful for recursive algorithms with fixed depth that partition the in- and output and perform pre- and postcalculations on the partitions. The four children of one node are denoted as ul (up left), ur (up right), dl (down left), and dr (down right).
Definition at line 122 of file matrix_arithmetic.h.
typedef static_quadtree<ValueType, Level - 1> stxxl::static_quadtree< ValueType, Level >::smaller_static_quadtree |
Definition at line 124 of file matrix_arithmetic.h.
stxxl::static_quadtree< ValueType, Level >::static_quadtree | ( | smaller_static_quadtree< ValueType, Level > | ul, |
smaller_static_quadtree< ValueType, Level > | ur, | ||
smaller_static_quadtree< ValueType, Level > | dl, | ||
smaller_static_quadtree< ValueType, Level > | dr | ||
) | [inline] |
Definition at line 128 of file matrix_arithmetic.h.
stxxl::static_quadtree< ValueType, Level >::static_quadtree | ( | ) | [inline] |
Definition at line 132 of file matrix_arithmetic.h.
static_quadtree stxxl::static_quadtree< ValueType, Level >::operator& | ( | const static_quadtree< ValueType, Level > & | right | ) | const [inline] |
Definition at line 152 of file matrix_arithmetic.h.
References stxxl::static_quadtree< ValueType, Level >::dl, stxxl::static_quadtree< ValueType, Level >::dr, stxxl::static_quadtree< ValueType, Level >::ul, and stxxl::static_quadtree< ValueType, Level >::ur.
static_quadtree& stxxl::static_quadtree< ValueType, Level >::operator&= | ( | const static_quadtree< ValueType, Level > & | right | ) | [inline] |
Definition at line 134 of file matrix_arithmetic.h.
References stxxl::static_quadtree< ValueType, Level >::dl, stxxl::static_quadtree< ValueType, Level >::dr, stxxl::static_quadtree< ValueType, Level >::ul, and stxxl::static_quadtree< ValueType, Level >::ur.
static_quadtree stxxl::static_quadtree< ValueType, Level >::operator+ | ( | const static_quadtree< ValueType, Level > & | right | ) | const [inline] |
Definition at line 155 of file matrix_arithmetic.h.
References stxxl::static_quadtree< ValueType, Level >::dl, stxxl::static_quadtree< ValueType, Level >::dr, stxxl::static_quadtree< ValueType, Level >::ul, and stxxl::static_quadtree< ValueType, Level >::ur.
static_quadtree& stxxl::static_quadtree< ValueType, Level >::operator+= | ( | const static_quadtree< ValueType, Level > & | right | ) | [inline] |
Definition at line 140 of file matrix_arithmetic.h.
References stxxl::static_quadtree< ValueType, Level >::dl, stxxl::static_quadtree< ValueType, Level >::dr, stxxl::static_quadtree< ValueType, Level >::ul, and stxxl::static_quadtree< ValueType, Level >::ur.
static_quadtree stxxl::static_quadtree< ValueType, Level >::operator- | ( | const static_quadtree< ValueType, Level > & | right | ) | const [inline] |
Definition at line 158 of file matrix_arithmetic.h.
References stxxl::static_quadtree< ValueType, Level >::dl, stxxl::static_quadtree< ValueType, Level >::dr, stxxl::static_quadtree< ValueType, Level >::ul, and stxxl::static_quadtree< ValueType, Level >::ur.
static_quadtree& stxxl::static_quadtree< ValueType, Level >::operator-= | ( | const static_quadtree< ValueType, Level > & | right | ) | [inline] |
Definition at line 146 of file matrix_arithmetic.h.
References stxxl::static_quadtree< ValueType, Level >::dl, stxxl::static_quadtree< ValueType, Level >::dr, stxxl::static_quadtree< ValueType, Level >::ul, and stxxl::static_quadtree< ValueType, Level >::ur.
smaller_static_quadtree stxxl::static_quadtree< ValueType, Level >::dl |
Definition at line 126 of file matrix_arithmetic.h.
Referenced by stxxl::feedable_strassen_winograd< ValueType, BlockSideLength, Level, AExists, BExists >::begin_feeding_a_block(), stxxl::feedable_strassen_winograd< ValueType, BlockSideLength, Level, AExists, BExists >::begin_feeding_b_block(), stxxl::matrix_to_quadtree< ValueType, BlockSideLength, Level >::begin_feeding_block(), stxxl::feedable_strassen_winograd< ValueType, BlockSideLength, Level, AExists, BExists >::begin_reading_block(), stxxl::matrix_to_quadtree< ValueType, BlockSideLength, Level >::begin_reading_block(), stxxl::feedable_strassen_winograd< ValueType, BlockSideLength, Level, AExists, BExists >::end_feeding_a_block(), stxxl::feedable_strassen_winograd< ValueType, BlockSideLength, Level, AExists, BExists >::end_feeding_b_block(), stxxl::matrix_to_quadtree< ValueType, BlockSideLength, Level >::end_feeding_block(), stxxl::feedable_strassen_winograd< ValueType, BlockSideLength, Level, AExists, BExists >::end_reading_block(), stxxl::matrix_to_quadtree< ValueType, BlockSideLength, Level >::end_reading_block(), stxxl::feedable_strassen_winograd< ValueType, BlockSideLength, Level, AExists, BExists >::feed_a_element(), stxxl::matrix_to_quadtree< ValueType, BlockSideLength, Level >::feed_and_add_element(), stxxl::feedable_strassen_winograd< ValueType, BlockSideLength, Level, AExists, BExists >::feed_b_element(), stxxl::matrix_to_quadtree< ValueType, BlockSideLength, Level >::feed_element(), stxxl::static_quadtree< ValueType, Level >::operator&(), stxxl::static_quadtree< ValueType, Level >::operator&=(), stxxl::static_quadtree< ValueType, Level >::operator+(), stxxl::static_quadtree< ValueType, Level >::operator+=(), stxxl::static_quadtree< ValueType, Level >::operator-(), stxxl::static_quadtree< ValueType, Level >::operator-=(), stxxl::feedable_strassen_winograd< ValueType, BlockSideLength, Level, AExists, BExists >::read_element(), and stxxl::matrix_to_quadtree< ValueType, BlockSideLength, Level >::read_element().
smaller_static_quadtree stxxl::static_quadtree< ValueType, Level >::dr |
Definition at line 126 of file matrix_arithmetic.h.
Referenced by stxxl::feedable_strassen_winograd< ValueType, BlockSideLength, Level, AExists, BExists >::begin_feeding_a_block(), stxxl::feedable_strassen_winograd< ValueType, BlockSideLength, Level, AExists, BExists >::begin_feeding_b_block(), stxxl::matrix_to_quadtree< ValueType, BlockSideLength, Level >::begin_feeding_block(), stxxl::feedable_strassen_winograd< ValueType, BlockSideLength, Level, AExists, BExists >::begin_reading_block(), stxxl::matrix_to_quadtree< ValueType, BlockSideLength, Level >::begin_reading_block(), stxxl::feedable_strassen_winograd< ValueType, BlockSideLength, Level, AExists, BExists >::end_feeding_a_block(), stxxl::feedable_strassen_winograd< ValueType, BlockSideLength, Level, AExists, BExists >::end_feeding_b_block(), stxxl::matrix_to_quadtree< ValueType, BlockSideLength, Level >::end_feeding_block(), stxxl::feedable_strassen_winograd< ValueType, BlockSideLength, Level, AExists, BExists >::end_reading_block(), stxxl::matrix_to_quadtree< ValueType, BlockSideLength, Level >::end_reading_block(), stxxl::feedable_strassen_winograd< ValueType, BlockSideLength, Level, AExists, BExists >::feed_a_element(), stxxl::matrix_to_quadtree< ValueType, BlockSideLength, Level >::feed_and_add_element(), stxxl::feedable_strassen_winograd< ValueType, BlockSideLength, Level, AExists, BExists >::feed_b_element(), stxxl::matrix_to_quadtree< ValueType, BlockSideLength, Level >::feed_element(), stxxl::static_quadtree< ValueType, Level >::operator&(), stxxl::static_quadtree< ValueType, Level >::operator&=(), stxxl::static_quadtree< ValueType, Level >::operator+(), stxxl::static_quadtree< ValueType, Level >::operator+=(), stxxl::static_quadtree< ValueType, Level >::operator-(), stxxl::static_quadtree< ValueType, Level >::operator-=(), stxxl::feedable_strassen_winograd< ValueType, BlockSideLength, Level, AExists, BExists >::read_element(), and stxxl::matrix_to_quadtree< ValueType, BlockSideLength, Level >::read_element().
smaller_static_quadtree stxxl::static_quadtree< ValueType, Level >::ul |
Definition at line 126 of file matrix_arithmetic.h.
Referenced by stxxl::feedable_strassen_winograd< ValueType, BlockSideLength, Level, AExists, BExists >::begin_feeding_a_block(), stxxl::feedable_strassen_winograd< ValueType, BlockSideLength, Level, AExists, BExists >::begin_feeding_b_block(), stxxl::matrix_to_quadtree< ValueType, BlockSideLength, Level >::begin_feeding_block(), stxxl::feedable_strassen_winograd< ValueType, BlockSideLength, Level, AExists, BExists >::begin_reading_block(), stxxl::matrix_to_quadtree< ValueType, BlockSideLength, Level >::begin_reading_block(), stxxl::feedable_strassen_winograd< ValueType, BlockSideLength, Level, AExists, BExists >::end_feeding_a_block(), stxxl::feedable_strassen_winograd< ValueType, BlockSideLength, Level, AExists, BExists >::end_feeding_b_block(), stxxl::matrix_to_quadtree< ValueType, BlockSideLength, Level >::end_feeding_block(), stxxl::feedable_strassen_winograd< ValueType, BlockSideLength, Level, AExists, BExists >::end_reading_block(), stxxl::matrix_to_quadtree< ValueType, BlockSideLength, Level >::end_reading_block(), stxxl::feedable_strassen_winograd< ValueType, BlockSideLength, Level, AExists, BExists >::feed_a_element(), stxxl::matrix_to_quadtree< ValueType, BlockSideLength, Level >::feed_and_add_element(), stxxl::feedable_strassen_winograd< ValueType, BlockSideLength, Level, AExists, BExists >::feed_b_element(), stxxl::matrix_to_quadtree< ValueType, BlockSideLength, Level >::feed_element(), stxxl::static_quadtree< ValueType, Level >::operator&(), stxxl::static_quadtree< ValueType, Level >::operator&=(), stxxl::static_quadtree< ValueType, Level >::operator+(), stxxl::static_quadtree< ValueType, Level >::operator+=(), stxxl::static_quadtree< ValueType, Level >::operator-(), stxxl::static_quadtree< ValueType, Level >::operator-=(), stxxl::feedable_strassen_winograd< ValueType, BlockSideLength, Level, AExists, BExists >::read_element(), and stxxl::matrix_to_quadtree< ValueType, BlockSideLength, Level >::read_element().
smaller_static_quadtree stxxl::static_quadtree< ValueType, Level >::ur |
Definition at line 126 of file matrix_arithmetic.h.
Referenced by stxxl::feedable_strassen_winograd< ValueType, BlockSideLength, Level, AExists, BExists >::begin_feeding_a_block(), stxxl::feedable_strassen_winograd< ValueType, BlockSideLength, Level, AExists, BExists >::begin_feeding_b_block(), stxxl::matrix_to_quadtree< ValueType, BlockSideLength, Level >::begin_feeding_block(), stxxl::feedable_strassen_winograd< ValueType, BlockSideLength, Level, AExists, BExists >::begin_reading_block(), stxxl::matrix_to_quadtree< ValueType, BlockSideLength, Level >::begin_reading_block(), stxxl::feedable_strassen_winograd< ValueType, BlockSideLength, Level, AExists, BExists >::end_feeding_a_block(), stxxl::feedable_strassen_winograd< ValueType, BlockSideLength, Level, AExists, BExists >::end_feeding_b_block(), stxxl::matrix_to_quadtree< ValueType, BlockSideLength, Level >::end_feeding_block(), stxxl::feedable_strassen_winograd< ValueType, BlockSideLength, Level, AExists, BExists >::end_reading_block(), stxxl::matrix_to_quadtree< ValueType, BlockSideLength, Level >::end_reading_block(), stxxl::feedable_strassen_winograd< ValueType, BlockSideLength, Level, AExists, BExists >::feed_a_element(), stxxl::matrix_to_quadtree< ValueType, BlockSideLength, Level >::feed_and_add_element(), stxxl::feedable_strassen_winograd< ValueType, BlockSideLength, Level, AExists, BExists >::feed_b_element(), stxxl::matrix_to_quadtree< ValueType, BlockSideLength, Level >::feed_element(), stxxl::static_quadtree< ValueType, Level >::operator&(), stxxl::static_quadtree< ValueType, Level >::operator&=(), stxxl::static_quadtree< ValueType, Level >::operator+(), stxxl::static_quadtree< ValueType, Level >::operator+=(), stxxl::static_quadtree< ValueType, Level >::operator-(), stxxl::static_quadtree< ValueType, Level >::operator-=(), stxxl::feedable_strassen_winograd< ValueType, BlockSideLength, Level, AExists, BExists >::read_element(), and stxxl::matrix_to_quadtree< ValueType, BlockSideLength, Level >::read_element().