EMAN2
|
a general data structure for a matrix with variable x dim size for different y More...
#include <polardata.h>
Classes | |
struct | Xdim |
struct to define x dimension size for each y, x0 is inclusive, x1 is one after the maximum, [x0, x1), so the corresponding x dim size is (x1-x0) More... | |
Public Member Functions | |
UnevenMatrix () | |
virtual | ~UnevenMatrix () |
int | get_xsize (int y) |
get the x dim size for a given y More... | |
int | get_xmin (int y) |
get the minimal x dim value for a given y More... | |
int | get_xmax (int y) |
get the maximal x dim value for a given y, note: x1 is one out of the max More... | |
int | get_size () |
get the total size of the data block More... | |
Protected Member Functions | |
void | alloc_data () |
allocation memory for data array More... | |
Protected Attributes | |
float * | data |
store all data in one dimension float array for cache efficiency, we calculate the offset for x, y dimension More... | |
map< int, Xdim > | desc_data |
describe for each y, the x dimension's size and range More... | |
int | tot_size |
the total size of the data More... | |
a general data structure for a matrix with variable x dim size for different y
Definition at line 49 of file polardata.h.
|
inline |
Definition at line 52 of file polardata.h.
|
inlinevirtual |
|
protected |
allocation memory for data array
InvalidValueException | if the desc_data map size is zero |
Definition at line 55 of file polardata.cpp.
References data, desc_data, get_xsize(), InvalidValueException, LOGERR, tot_size, and y.
|
inline |
get the total size of the data block
Definition at line 92 of file polardata.h.
References tot_size.
|
inline |
get the maximal x dim value for a given y, note: x1 is one out of the max
y | int the y value for which we need the corresponding maximal x dim value |
Definition at line 86 of file polardata.h.
|
inline |
|
inline |
get the x dim size for a given y
y | int the y value for which we need the x dim size |
Definition at line 66 of file polardata.h.
References desc_data, InvalidValueException, and y.
Referenced by alloc_data().
|
protected |
store all data in one dimension float array for cache efficiency, we calculate the offset for x, y dimension
Definition at line 123 of file polardata.h.
Referenced by alloc_data(), and ~UnevenMatrix().
|
protected |
describe for each y, the x dimension's size and range
Definition at line 126 of file polardata.h.
Referenced by alloc_data(), get_xmax(), get_xmin(), and get_xsize().
|
protected |
the total size of the data
Definition at line 129 of file polardata.h.
Referenced by alloc_data(), and get_size().