![]() |
rasdaman client API
10.6.3
The Array Analytics Engine: Datacubes at Your Fingertips
|
The central class of the library for representing an MDD object is named r_Marray. More...
#include <marray.hh>
Public Types | |
| typedef T(* | r_InitFunction) (const r_Point &) |
| function type for initialization function More... | |
Public Types inherited from r_Object | |
| enum | ObjectStatus { no_status, deleted, created, modified, read, transient } |
| object life status More... | |
| enum | ObjectType { no_object, persistent_object, transient_object } |
| created - The object was created in the current transaction and has to be stored in the database. More... | |
Public Member Functions | |
| r_Marray () | |
| default constructor (no memory is allocated!) More... | |
| r_Marray (const r_Minterval &, r_Storage_Layout *stl=0) | |
| constructor for uninitialized MDD objects More... | |
| r_Marray (const r_Minterval &, const T &, r_Storage_Layout *stl=0) | |
| If a storage layout pointer is provided, the object refered to is taken and memory control moves to the r_Marray class. More... | |
| r_Marray (const r_Minterval &, r_InitFunction, r_Storage_Layout *stl=0) | |
| If a storage layout pointer is provided, the object refered to is taken and memory control moves to the r_Marray class. More... | |
| r_Marray (const r_Marray< T > &) | |
| If a storage layout pointer is provided, the object refered to is taken and memory control moves to the r_Marray class. More... | |
| r_Marray (r_GMarray &) | |
| constructor getting an object of type r_GMarray More... | |
| virtual | ~r_Marray () |
| destructor More... | |
| const r_Marray & | operator= (const r_Marray &) |
| assignment: cleanup + copy More... | |
| r_Marray< T > | operator[] (long) const |
| subscript operator for projection in the 1st dimension More... | |
| r_Marray< T > | operator[] (const r_Minterval &) const |
| subscript operator for restriction/extension combination More... | |
| const T & | operator[] (const r_Point &) const |
| subscript operator for read access of a cell More... | |
| T & | operator[] (const r_Point &) |
| subscript operator for write access of a cell More... | |
| operator T () | |
| cast operator for converting to base type for cell access More... | |
| virtual void | print_status (std::ostream &s) |
| writes the state of the object to the specified stream More... | |
Public Member Functions inherited from r_GMarray | |
| r_GMarray (r_Transaction *transaction=NULL) | |
| default constructor (no memory is allocated!) More... | |
| r_GMarray (const r_Minterval &init_domain, r_Bytes type_length, r_Storage_Layout *stl=0, r_Transaction *transaction=NULL, bool initialize=true) | |
| constructor for uninitialized MDD objects More... | |
| r_GMarray (const r_GMarray &) | |
| If a storage layout pointer is provided, the object refered to is taken and memory control moves to the r_GMarray class. More... | |
| r_GMarray (r_GMarray &) | |
| constructor which doesn't copy the data More... | |
| virtual | ~r_GMarray () |
| destructor More... | |
| virtual void | r_deactivate () |
| it is called when an object leaves transient memory (internal use only) More... | |
| r_GMarray & | operator= (const r_GMarray &) |
| assignment: cleanup + copy More... | |
| const char * | operator[] (const r_Point &) const |
| subscript operator for read access of a cell. More... | |
| r_GMarray * | intersect (const r_Minterval &where) const |
| Returns a r_GMarray that is the intersection of the current domain with the specified interval. More... | |
| const r_Storage_Layout * | get_storage_layout () const |
| gets a pointer to the storage layout object More... | |
| const r_Minterval & | spatial_domain () const |
| getting the spatial domain More... | |
| char * | get_array () |
| get the internal representation of the array More... | |
| const char * | get_array () const |
| get the internal representation of the array for reading More... | |
| r_Set< r_GMarray * > * | get_tiled_array () |
| get the internal representation of the array More... | |
| const r_Set< r_GMarray * > * | get_tiled_array () const |
| get the internal representation of the array for reading More... | |
| r_Bytes | get_array_size () const |
| get size of internal array representation in byets More... | |
| r_Bytes | get_type_length () const |
| get length of cell type in bytes More... | |
| r_Data_Format | get_current_format () const |
| get current data format More... | |
| const r_Base_Type * | get_base_type_schema () |
| get base type schema More... | |
| r_Band_Iterator | get_band_iterator (unsigned int band) |
| get a band iterator More... | |
| r_Band_Linearization | get_band_linearization () const |
| r_Cell_Linearization | get_cell_linearization () const |
| void | set_storage_layout (r_Storage_Layout *) |
| sets the storage layout object and checks compatibility with the domain More... | |
| void | set_spatial_domain (const r_Minterval &domain) |
| set spatial domain More... | |
| void | set_array (char *) |
| set the internal representation of the array More... | |
| void | set_tiled_array (r_Set< r_GMarray * > *newData) |
| set the internal representation of the array More... | |
| void | set_array_size (r_Bytes) |
| set size of internal memory representation in bytes More... | |
| void | set_type_length (r_Bytes) |
| set length of cell type in bytes More... | |
| void | set_current_format (r_Data_Format) |
| set current data format More... | |
| void | set_band_linearization (r_Band_Linearization) |
| set band linearization to pixel-interleaved or channel-interleaved in case of multi-band array More... | |
| void | set_cell_linearization (r_Cell_Linearization) |
| set cell linearization. Only ColumnMajor is supported currently. More... | |
| virtual void | insert_obj_into_db () |
| inserts an object into the database More... | |
| void | insert_obj_into_db (const char *collName) |
| insert myself into a specific collection in the database More... | |
| void | print_status (std::ostream &s, int hexoutput) |
| writes the state of the object to the specified stream More... | |
Public Member Functions inherited from r_Object | |
| r_Object (r_Transaction *transaction=NULL) | |
| default constructor More... | |
| r_Object (unsigned short objType, r_Transaction *transaction=NULL) | |
| constructor getting objType More... | |
| r_Object (const r_Object &, unsigned short objType=0, r_Transaction *transaction=NULL) | |
objType specifies the type of the object (1=Marray, 2=Collection). More... | |
| virtual | ~r_Object () |
objType specifies the type of the object (1=Marray, 2=Collection). More... | |
| void | mark_modified () |
| mark the object as modified More... | |
| void * | operator new (size_t size) |
| new operator for transient objects More... | |
| void * | operator new (size_t size, r_Database *database, const char *type_name=0) |
| new operator for persistent objects More... | |
| void * | operator new (size_t size, const char *type_name) |
| new operator for transient objects carrying type information More... | |
| void | operator delete (void *obj_ptr) |
| delete operator More... | |
| void | set_type_by_name (const char *name) |
| set object type by name More... | |
| void | set_type_structure (const char *name) |
| With this method a type name has to be given by the user for each object which he wants to make persistent. More... | |
| const char * | get_type_name () const |
| get object type name More... | |
| const char * | get_type_structure () const |
| get object type structure More... | |
| const r_OId & | get_oid () const |
| get oid More... | |
| const r_Type * | get_type_schema () |
| get type schema. returns NULL in case of error More... | |
| void | set_type_schema (const r_Type *type) |
| virtual void | update_obj_in_db () |
| updates an object in database More... | |
| virtual void | load_obj_from_db () |
| load an object from the database More... | |
| void | delete_obj_from_db () |
| deletes an object from the database More... | |
| void | initialize_oid (const r_OId &initOId) |
| initialize oid of the object More... | |
| virtual void | r_activate () |
| it is called when an object comes into transient memory More... | |
| bool | test_status (ObjectStatus status) |
| test object status returns 1 if it matches More... | |
| ObjectStatus | get_status () const |
| gets the status of the object More... | |
| void | set_object_name (const char *name) |
| set object name. object name should contain only [a-zA-Z0-9_] More... | |
| const char * | get_object_name () const |
| get object name More... | |
| void * | operator new (size_t size, r_Database *database, ObjectStatus status, const r_OId &oid) |
| new operator for activating an object (status = read) More... | |
| r_Transaction * | get_transaction () const |
Additional Inherited Members | |
Protected Member Functions inherited from r_Object | |
| void | update_transaction () |
| resets to the global r_Transaction::actual_transaction if necessary More... | |
| bool | test_type (ObjectType type) |
| test object type returns 1 if it matches More... | |
Protected Attributes inherited from r_GMarray | |
| r_Minterval | domain |
| spatial domain More... | |
| char * | data {NULL} |
| pointer to the internal array representation More... | |
| r_Set< r_GMarray * > * | tiled_data {NULL} |
| array internally sub-tiled More... | |
| r_Bytes | data_size {} |
| size of internal array representation in bytes More... | |
| r_Bytes | type_length {} |
| length of the cell base type in bytes More... | |
| r_Data_Format | current_format {r_Array} |
| store current data format More... | |
| r_Storage_Layout * | storage_layout {NULL} |
| pointer to storage layout object More... | |
| r_Band_Linearization | band_linearization {r_Band_Linearization::PixelInterleaved} |
| relevant if data has multiple bands (channels) of data More... | |
| r_Cell_Linearization | cell_linearization {r_Cell_Linearization::ColumnMajor} |
| cell linearization. More... | |
Protected Attributes inherited from r_Object | |
| char * | object_name {0} |
| stores object name if it has one More... | |
| char * | type_name {0} |
| stores object type name if it has one More... | |
| char * | type_structure {0} |
| store type structure as string if it has one More... | |
| r_Type * | type_schema {0} |
| pointer to type schema (built on request) More... | |
| unsigned short | internal_obj_type {0} |
| internal object type (1 marray, 2 collection) More... | |
| r_Transaction * | transaction {NULL} |
| pointer to the transaction this object belongs to. More... | |
The central class of the library for representing an MDD object is named r_Marray.
Through overloading operators, the handling of an MDD object is similar to the usage of a normal C or C++ array from the programmers point of view.
function type for initialization function
|
explicit |
constructor for uninitialized MDD objects
| r_Marray< T >::r_Marray | ( | const r_Minterval & | , |
| const T & | , | ||
| r_Storage_Layout * | stl = 0 |
||
| ) |
|
explicit |
constructor getting an object of type r_GMarray
| r_Marray< T >::operator T | ( | ) |
cast operator for converting to base type for cell access
assignment: cleanup + copy
| r_Marray<T> r_Marray< T >::operator[] | ( | const r_Minterval & | ) | const |
subscript operator for restriction/extension combination
subscript operator for write access of a cell
subscript operator for read access of a cell
subscript operator for projection in the 1st dimension
|
virtual |
writes the state of the object to the specified stream
Reimplemented from r_GMarray.
1.8.17