rasdaman API
|
#include <stattiling.hh>
Public Member Functions | |
r_Stat_Tiling (const char *encoded) throw (r_Error) | |
read everything from an encoded string e.g. "2;[0:9,0:9],3;[100:109,0:9],2;2;0.3;100" More... | |
r_Stat_Tiling (r_Dimension dim, const std::vector< r_Access > &stat_info, r_Bytes ts=RMInit::clientTileSize, r_Area border_threshold=DEF_BORDER_THR, r_Double interesting_threshold=DEF_INTERESTING_THR) throw (r_Error) | |
Class constructor. More... | |
virtual | ~r_Stat_Tiling () |
virtual const std::vector < r_Minterval > & | get_interesting_areas () const |
Gets the statistical information. More... | |
r_Area | get_border_threshold () const |
Gets the threshold at which to intervals are considered the same. More... | |
r_Double | get_interesting_threshold () const |
Gets the threshold at which an area is considered to be interesting. More... | |
virtual void | print_status (std::ostream &os) const |
virtual std::vector < r_Minterval > * | compute_tiles (const r_Minterval &obj_domain, r_Bytes cell_size) const throw (r_Error) |
returns true if the cellTypeSize is smaller or equal to the tile size and the dimension fits the obj_domain More... | |
virtual r_Tiling * | clone () const |
Clones this object. More... | |
virtual r_Tiling_Scheme | get_tiling_scheme () const |
![]() | |
r_Dimension_Tiling (r_Dimension dim, r_Bytes ts=RMInit::clientTileSize) | |
Constructor for this object (Takes dim (no of dimension) and tile size as parameter) More... | |
virtual | ~r_Dimension_Tiling () |
does not do anything More... | |
r_Dimension | get_dimension () const |
Gets the current dimension. More... | |
virtual bool | is_compatible (const r_Minterval &obj_domain, r_Bytes cellTypeSize) const |
returns true if the cellTypeSize is smaller or equal to the tile size and obj_domain has more than 0 dimensions More... | |
![]() | |
r_Size_Tiling (const char *encoded) throw (r_Error) | |
Constructor that reads everything from a string e.g."100". More... | |
r_Size_Tiling (r_Bytes ts=RMInit::clientTileSize) | |
Constructor for this object (Takes tile size as parameter) More... | |
virtual | ~r_Size_Tiling () |
does not do anything More... | |
r_Bytes | get_tile_size () const |
Gets the current tile size. More... | |
![]() | |
virtual | ~r_Tiling () |
does not do anything More... | |
Static Public Attributes | |
static const r_Area | DEF_BORDER_THR |
Default threshold for two borders being considered the same. More... | |
static const r_Double | DEF_INTERESTING_THR |
Default threshold for considering an area interesting when tiling. More... | |
static const char * | description |
![]() | |
static const char * | description |
![]() | |
static const char * | ASTERIX |
static const char * | TCOLON |
static const char * | TCOMMA |
static const char * | LSQRBRA |
static const char * | RSQRBRA |
static const long | DefaultBase |
Protected Member Functions | |
void | filter (std::vector< r_Access > &patterns) const throw (r_Error) |
Filters and access pattern table (list) throws exception if dimensions of access patterns are not the same. More... | |
r_Access | merge (const std::vector< r_Access > &patterns) const |
Merges a list of access patterns. More... | |
Protected Attributes | |
r_Double | interesting_thr |
The "interesting area" threshold. More... | |
r_Area | border_thr |
The "same border" threshold. More... | |
std::vector< r_Minterval > | iareas |
Current interest areas. More... | |
std::vector< r_Access > | stat_info |
Statistical data. More... | |
![]() | |
r_Dimension | dimension |
dimension the mdd must have More... | |
![]() | |
r_Bytes | tile_size |
Tile size. More... | |
r_Stat_Tiling::r_Stat_Tiling | ( | const char * | encoded | ) | |
throw | ( | r_Error | |||
) |
read everything from an encoded string e.g. "2;[0:9,0:9],3;[100:109,0:9],2;2;0.3;100"
r_Stat_Tiling::r_Stat_Tiling | ( | r_Dimension | dim, |
const std::vector< r_Access > & | stat_info, | ||
r_Bytes | ts = RMInit::clientTileSize , |
||
r_Area | border_threshold = DEF_BORDER_THR , |
||
r_Double | interesting_threshold = DEF_INTERESTING_THR |
||
) | |||
throw | ( | r_Error | |
) |
Class constructor.
|
virtual |
This is the "Statistic Tiling" class constructor. It takes as parameters the threshold for, when performing filtering, considering two borders the same, and also, the threshold at which an area is considered interesting and should be taken in account when performing tiling. Finally, the tilesize is considered as a parameter. stat_info inputs the statistic information into the class and calculates the new interest areas that will be used to perform tiling on the object. An exception is thrown when the statistical data does not fit the dimension.
|
virtual |
Clones this object.
This method provides the core funcionality of this class. All derived classes must implement it. As input parameters it takes the big object to be decomposed and returns a set of tiles that compose the big object. This method throws an exeception when the dimension specified, extend or the cell_size are incompatible with the current tiling. You can check compatibility by invoking is_compatible.
Implements r_Dimension_Tiling.
|
virtual |
returns true if the cellTypeSize is smaller or equal to the tile size and the dimension fits the obj_domain
Implements r_Dimension_Tiling.
Filters and access pattern table (list) throws exception if dimensions of access patterns are not the same.
r_Area r_Stat_Tiling::get_border_threshold | ( | ) | const |
Gets the threshold at which to intervals are considered the same.
|
virtual |
Gets the statistical information.
r_Double r_Stat_Tiling::get_interesting_threshold | ( | ) | const |
Gets the threshold at which an area is considered to be interesting.
This method gets the number of points (pixels/cells) at which two intervals are considered to be the same, in the access patterns.
|
virtual |
This method is similar to a copy constructor, this is, is returns a copy of the current object. Derived classes must explicitly implement this method.
Reimplemented from r_Size_Tiling.
Merges a list of access patterns.
|
virtual |
This method gets the threshold at which an area is considered to be interesting. All the areas that are accessed above the specified threshold, will be considered interest areas when performing tiling.
Reimplemented from r_Dimension_Tiling.
|
protected |
The "same border" threshold.
|
static |
Default threshold for two borders being considered the same.
|
static |
Default threshold for considering an area interesting when tiling.
|
static |
|
protected |
Current interest areas.
|
protected |
The "interesting area" threshold.
|
protected |
Statistical data.