![]() |
rasdaman client API 10.6.3
The Array Analytics Engine: Datacubes at Your Fingertips
|
Basic class of a collection. More...
#include <collection.hh>
Classes | |
| struct | CNode |
Public Member Functions | |
| r_Collection () | |
| default constructor | |
| r_Collection (const r_Collection< T > &collection) | |
| copy constructor | |
| virtual | ~r_Collection () |
| virtual destructor | |
| virtual void | r_deactivate () |
| it is called when an object leaves transient memory | |
| unsigned long | cardinality () const |
| get number of elements | |
| bool | is_empty () const |
| tells if the collection is empty or not | |
| bool | is_ordered () const |
| tells if the collection is ordered or not | |
| bool | allows_duplicates () const |
| tells if the collections allowes duplicates or not | |
| bool | contains_element (const T &element) const |
| asks about the containment of a specific element | |
| virtual void | insert_element (const T &element, int no_modification=0) |
| inserts an alement at the beginning | |
| virtual void | remove_element (const T &element) |
| The method inserts an element into the collection. | |
| void | remove_all () |
| removes all elements | |
| const r_Collection< T > & | operator= (const r_Collection< T > &collection) |
| assignment operator | |
| r_Iterator< T > | create_iterator () |
| create an iterator pointing at the first element in the collection | |
| const r_Type * | get_element_type_schema () |
| get base type schema | |
| virtual void | insert_obj_into_db () |
| insert myself into the database | |
| virtual void | insert_obj_into_db (const char *) |
| inserts an object into a specific collection in the database | |
| virtual void | update_obj_in_db () |
| The method has no functionality in this class. | |
Public Member Functions inherited from r_Object | |
| r_Object (r_Transaction *transaction=NULL) | |
| default constructor | |
| r_Object (unsigned short objType, r_Transaction *transaction=NULL) | |
| constructor getting objType | |
| r_Object (const r_Object &, unsigned short objType=0, r_Transaction *transaction=NULL) | |
objType specifies the type of the object (1=Marray, 2=Collection). | |
| virtual | ~r_Object () |
objType specifies the type of the object (1=Marray, 2=Collection). | |
| void | mark_modified () |
| mark the object as modified | |
| void * | operator new (size_t size) |
| new operator for transient objects | |
| void * | operator new (size_t size, r_Database *database, const char *type_name=0) |
| new operator for persistent objects | |
| void * | operator new (size_t size, const char *type_name) |
| new operator for transient objects carrying type information | |
| void | operator delete (void *obj_ptr) |
| delete operator | |
| void | set_type_by_name (const char *name) |
| set object type by name | |
| 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. | |
| const char * | get_type_name () const |
| get object type name | |
| const char * | get_type_structure () const |
| get object type structure | |
| const r_OId & | get_oid () const |
| get oid | |
| const r_Type * | get_type_schema () |
| get type schema. returns NULL in case of error | |
| void | set_type_schema (const r_Type *type) |
| virtual void | load_obj_from_db () |
| load an object from the database | |
| void | delete_obj_from_db () |
| deletes an object from the database | |
| void | initialize_oid (const r_OId &initOId) |
| initialize oid of the object | |
| virtual void | r_activate () |
| it is called when an object comes into transient memory | |
| bool | test_status (ObjectStatus status) |
| test object status returns 1 if it matches | |
| ObjectStatus | get_status () const |
| gets the status of the object | |
| void | set_object_name (const char *name) |
| set object name. object name should contain only [a-zA-Z0-9_] | |
| const char * | get_object_name () const |
| get object name | |
| void * | operator new (size_t size, r_Database *database, ObjectStatus status, const r_OId &oid) |
| new operator for activating an object (status = read) | |
| r_Transaction * | get_transaction () const |
Protected Member Functions | |
| r_Iterator< T > | create_removed_iterator () |
| create an iterator for removed objects | |
| void | add_node (CNode *&root, const T &element) |
| bool | remove_node (CNode *&root, const T &element) |
| void | remove_all_nodes (CNode *&root) |
| void | init_node_list (CNode *&root) |
Protected Member Functions inherited from r_Object | |
| void | update_transaction () |
| resets to the global r_Transaction::actual_transaction if necessary | |
| bool | test_type (ObjectType type) |
| test object type returns 1 if it matches | |
Protected Attributes | |
| CNode * | removed_objects |
| pointer to list of removed elements | |
| int | isOrdered |
| int | allowsDuplicates |
| unsigned long | card |
| CNode * | coll |
| pointer to collection elements | |
Protected Attributes inherited from r_Object | |
| char * | object_name {0} |
| stores object name if it has one | |
| char * | type_name {0} |
| stores object type name if it has one | |
| char * | type_structure {0} |
| store type structure as string if it has one | |
| r_Type * | type_schema {0} |
| pointer to type schema (built on request) | |
| unsigned short | internal_obj_type {0} |
| internal object type (1 marray, 2 collection) | |
| r_Transaction * | transaction {NULL} |
| pointer to the transaction this object belongs to. | |
Additional Inherited Members | |
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... | |
Basic class of a collection.
Possible subclasses are r_Set. The protected members isOrdered and allowsDuplicates are not initialized here, they have to be initialized in the respective subclasses.
| r_Collection< T >::r_Collection | ( | ) |
default constructor
| r_Collection< T >::r_Collection | ( | const r_Collection< T > & | collection | ) |
copy constructor
|
virtual |
virtual destructor
|
protected |
| bool r_Collection< T >::allows_duplicates | ( | ) | const |
tells if the collections allowes duplicates or not
| unsigned long r_Collection< T >::cardinality | ( | ) | const |
get number of elements
| bool r_Collection< T >::contains_element | ( | const T & | element | ) | const |
asks about the containment of a specific element
| r_Iterator< T > r_Collection< T >::create_iterator | ( | ) |
create an iterator pointing at the first element in the collection
|
protected |
create an iterator for removed objects
| const r_Type * r_Collection< T >::get_element_type_schema | ( | ) |
get base type schema
|
protected |
|
virtual |
inserts an alement at the beginning
Reimplemented in r_Set< T >.
|
virtual |
insert myself into the database
Implements r_Object.
|
inlinevirtual |
inserts an object into a specific collection in the database
Implements r_Object.
| bool r_Collection< T >::is_empty | ( | ) | const |
tells if the collection is empty or not
| bool r_Collection< T >::is_ordered | ( | ) | const |
tells if the collection is ordered or not
| const r_Collection< T > & r_Collection< T >::operator= | ( | const r_Collection< T > & | collection | ) |
assignment operator
|
virtual |
it is called when an object leaves transient memory
Reimplemented from r_Object.
| void r_Collection< T >::remove_all | ( | ) |
removes all elements
|
protected |
|
virtual |
The method inserts an element into the collection.
If no_modification is set, the mark_modified() method of r_Object is not invoked and, therefore, a modification will not be recognized at the commit point. removes an element
|
protected |
|
virtual |
The method has no functionality in this class.
It supposed to be removed in future. update myself
Reimplemented from r_Object.
|
protected |
|
protected |
|
protected |
pointer to collection elements
|
protected |
|
protected |
pointer to list of removed elements