rasdaman API
Public Member Functions | Static Public Attributes | List of all members
r_Tiling Class Referenceabstract

#include <tiling.hh>

Inheritance diagram for r_Tiling:
r_No_Tiling r_Size_Tiling r_Dimension_Tiling r_Aligned_Tiling r_Dir_Tiling r_Interest_Tiling r_Stat_Tiling

Public Member Functions

virtual ~r_Tiling ()
 does not do anything More...
 
virtual void print_status (std::ostream &os) const =0
 Prints the current status of the object. More...
 
virtual bool is_compatible (const r_Minterval &obj_domain, r_Bytes cellTypeSize) const =0
 Check compatibility of object domain with this tiling. More...
 
virtual std::vector
< r_Minterval > * 
compute_tiles (const r_Minterval &obj_domain, r_Bytes cell_size) const =0 throw (r_Error)
 Decompose an object in tiles. More...
 
virtual r_Tilingclone () const =0
 Clones this object. More...
 
virtual r_Tiling_Scheme get_tiling_scheme () const =0
 

Static Public Attributes

static const char * ASTERIX
 
static const char * TCOLON
 
static const char * TCOMMA
 
static const char * LSQRBRA
 
static const char * RSQRBRA
 
static const long DefaultBase
 

Constructor & Destructor Documentation

virtual r_Tiling::~r_Tiling ( )
virtual

does not do anything

Member Function Documentation

virtual r_Tiling* r_Tiling::clone ( ) const
pure 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.

Implemented in r_No_Tiling, r_Stat_Tiling, r_Dimension_Tiling, r_Size_Tiling, r_Aligned_Tiling, r_Interest_Tiling, and r_Dir_Tiling.

virtual std::vector<r_Minterval>* r_Tiling::compute_tiles ( const r_Minterval obj_domain,
r_Bytes  cell_size 
) const
throw (r_Error
)
pure virtual
virtual r_Tiling_Scheme r_Tiling::get_tiling_scheme ( ) const
pure 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.

Implemented in r_No_Tiling, r_Stat_Tiling, r_Aligned_Tiling, r_Size_Tiling, r_Interest_Tiling, and r_Dir_Tiling.

virtual bool r_Tiling::is_compatible ( const r_Minterval obj_domain,
r_Bytes  cellTypeSize 
) const
pure virtual

Check compatibility of object domain with this tiling.

Implemented in r_No_Tiling, r_Dimension_Tiling, r_Size_Tiling, and r_Dir_Tiling.

virtual void r_Tiling::print_status ( std::ostream &  os) const
pure virtual

Prints the current status of the object.

Implemented in r_No_Tiling, r_Stat_Tiling, r_Dimension_Tiling, r_Aligned_Tiling, r_Size_Tiling, r_Interest_Tiling, and r_Dir_Tiling.

Member Data Documentation

const char* r_Tiling::ASTERIX
static

return the type of tiling scheme

const long r_Tiling::DefaultBase
static
const char* r_Tiling::LSQRBRA
static
const char* r_Tiling::RSQRBRA
static
const char* r_Tiling::TCOLON
static
const char* r_Tiling::TCOMMA
static

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