rasdaman client API  10.6.3
The Array Analytics Engine: Datacubes at Your Fingertips
Public Member Functions | Protected Attributes | List of all members
r_Dimension_Tiling Class Referenceabstract

#include <tiling.hh>

Inheritance diagram for r_Dimension_Tiling:
r_Size_Tiling r_Tiling r_Aligned_Tiling r_Dir_Tiling r_Interest_Tiling r_Stat_Tiling

Public Member Functions

 r_Dimension_Tiling (r_Dimension dim, r_Bytes ts=r_Tiling::defaultTileSize)
 Constructor for this object (Takes dim (no of dimension) and tile size as parameter) More...
 
virtual ~r_Dimension_Tiling ()=default
 
void print_status (std::ostream &os) const override
 Prints the current status of the object. More...
 
bool is_compatible (const r_Minterval &obj_domain, r_Bytes cellTypeSize) const override
 returns true if the cellTypeSize is smaller or equal to the tile size and the dimension fits the obj_domain More...
 
r_Dimension get_dimension () const
 
std::vector< r_Mintervalcompute_tiles (const r_Minterval &obj_domain, r_Bytes cellTypeSize) const override=0
 Decompose an object in tiles. More...
 
r_Tilingclone () const override=0
 This method provides the core funcionality of this class. More...
 
- Public Member Functions inherited from r_Size_Tiling
 r_Size_Tiling (const char *encoded)
 Constructor that reads everything from a string e.g."100". More...
 
 r_Size_Tiling (r_Bytes ts=r_Tiling::defaultTileSize)
 
virtual ~r_Size_Tiling ()=default
 
r_Bytes get_tile_size () const
 
r_Tiling_Scheme get_tiling_scheme () const override
 This method is similar to a copy constructor, this is, is returns a copy of the current object. More...
 
- Public Member Functions inherited from r_Tiling
virtual ~r_Tiling ()=default
 

Protected Attributes

r_Dimension dimension {}
 dimension the mdd must have More...
 
- Protected Attributes inherited from r_Size_Tiling
r_Bytes tile_size {}
 Tile size. More...
 

Additional Inherited Members

- Static Public Attributes inherited from r_Size_Tiling
static const char * description
 
- Static Public Attributes inherited from r_Tiling
static const char * ASTERIX
 return the type of tiling scheme More...
 
static const char * TCOLON
 
static const char * TCOMMA
 
static const char * LSQRBRA
 
static const char * RSQRBRA
 
static const int DefaultBase
 
static const r_Bytes defaultTileSize
 
- Protected Member Functions inherited from r_Tiling
void check_nonempty_tiling (const char *encoded) const
 
void check_premature_stream_end (const char *currPos, const char *endPos) const
 
r_Minterval parse_minterval (const char *encoded) const
 
unsigned int parse_unsigned (const char *encoded) const
 
unsigned long parse_unsigned_long (const char *encoded) const
 
long parse_long (const char *encoded) const
 
double parse_double (const char *encoded) const
 
std::unique_ptr< char[]> copy_buffer (const char *buf, size_t len) const
 
const char * advance_to_next_char (const char *p, const char *search) const
 

Constructor & Destructor Documentation

◆ r_Dimension_Tiling()

r_Dimension_Tiling::r_Dimension_Tiling ( r_Dimension  dim,
r_Bytes  ts = r_Tiling::defaultTileSize 
)

Constructor for this object (Takes dim (no of dimension) and tile size as parameter)

◆ ~r_Dimension_Tiling()

virtual r_Dimension_Tiling::~r_Dimension_Tiling ( )
virtualdefault

Member Function Documentation

◆ clone()

r_Tiling* r_Dimension_Tiling::clone ( ) const
overridepure virtual

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. Clones this object

Reimplemented from r_Size_Tiling.

Implemented in r_Stat_Tiling, r_Dir_Tiling, r_Interest_Tiling, and r_Aligned_Tiling.

◆ compute_tiles()

std::vector<r_Minterval> r_Dimension_Tiling::compute_tiles ( const r_Minterval obj_domain,
r_Bytes  cell_size 
) const
overridepure virtual

Decompose an object in tiles.

Reimplemented from r_Size_Tiling.

Implemented in r_Stat_Tiling, r_Dir_Tiling, r_Interest_Tiling, and r_Aligned_Tiling.

◆ get_dimension()

r_Dimension r_Dimension_Tiling::get_dimension ( ) const

◆ is_compatible()

bool r_Dimension_Tiling::is_compatible ( const r_Minterval obj_domain,
r_Bytes  cellTypeSize 
) const
overridevirtual

returns true if the cellTypeSize is smaller or equal to the tile size and the dimension fits the obj_domain

Reimplemented from r_Size_Tiling.

◆ print_status()

void r_Dimension_Tiling::print_status ( std::ostream &  os) const
overridevirtual

Prints the current status of the object.

Reimplemented from r_Size_Tiling.

Member Data Documentation

◆ dimension

r_Dimension r_Dimension_Tiling::dimension {}
protected

dimension the mdd must have


The documentation for this class was generated from the following file: