![]() |
rasdaman client API
10.6.3
The Array Analytics Engine: Datacubes at Your Fingertips
|
The class represents an interval with lower and upper bound. More...
#include <sinterval.hh>
Public Types | |
| using | BoundType = r_Range |
| using | OffsetType = size_t |
Public Member Functions | |
| r_Sinterval ()=default | |
| default constructor creates an interval with open bounds More... | |
| r_Sinterval (const char *) | |
| constructor taking string representation (e.g. *:200 ) More... | |
| r_Sinterval (r_Range low, r_Range high) | |
| constructor for an interval with fixed bounds More... | |
| r_Sinterval (r_Range point) | |
| constructor for a slice (TODO) More... | |
| r_Sinterval (char, r_Range high) | |
| r_Sinterval (r_Range low, char) | |
| r_Sinterval (char, char) | |
| bool | operator== (const r_Sinterval &) const |
| Two intervals are equal if they have the same lower and upper bound. More... | |
| bool | operator!= (const r_Sinterval &) const |
| non equal operator - negation of equal operator More... | |
| r_Range | low () const noexcept |
| r_Range | high () const noexcept |
| OffsetType | get_extent () const |
| get the size of one dimensional interval as range (high() - low() + 1) More... | |
| bool | is_fixed () const noexcept |
| bool | is_low_fixed () const noexcept |
| bool | is_low_unbounded () const noexcept |
| bool | is_high_fixed () const noexcept |
| bool | is_high_unbounded () const noexcept |
| bool | is_slice () const noexcept |
| void | set_low (r_Range low) |
| void | set_low (char) noexcept |
| void | set_high (r_Range high) |
| void | set_high (char) noexcept |
| void | set_interval (r_Range low, r_Range high) |
| void | set_interval (char, r_Range high) noexcept |
| void | set_interval (r_Range low, char) noexcept |
| void | set_interval (char, char) noexcept |
| void | set_slice () noexcept |
| const std::string & | get_axis_name () const |
| void | set_axis_name (const std::string &axis_name_arg) |
| set an axis name for this interval; an empty string will clear any axis name. More... | |
| bool | has_axis_name () const |
| OffsetType | get_offset_to (BoundType o) const noexcept |
| get distance to lower bound of this interval from o; this interval is assumed to be fixed in the lower bound, and o >= this.low() More... | |
| OffsetType | get_offset_to (const r_Sinterval &o) const noexcept |
| get distance to lower bound of this interval from lower bound of o; intervals must be fixed in lower bound, and o.low() >= this.low() More... | |
| r_Sinterval | translate_by (BoundType offset) const |
| translate this interval by a given offset; assumes that this interval has fixed bounds More... | |
| r_Sinterval & | union_of (const r_Sinterval &, const r_Sinterval &) |
| r_Sinterval & | union_with (const r_Sinterval &) |
| r_Sinterval & | operator+= (const r_Sinterval &) |
| r_Sinterval | create_union (const r_Sinterval &) const |
| r_Sinterval | operator+ (const r_Sinterval &) const |
| bool | inside_of (const r_Sinterval &o) const |
| r_Sinterval & | difference_of (const r_Sinterval &, const r_Sinterval &) |
| r_Sinterval & | difference_with (const r_Sinterval &) |
| r_Sinterval & | operator-= (const r_Sinterval &) |
| r_Sinterval | create_difference (const r_Sinterval &) const |
| r_Sinterval | operator- (const r_Sinterval &) const |
| r_Sinterval & | intersection_of (const r_Sinterval &, const r_Sinterval &) |
| r_Sinterval & | intersection_with (const r_Sinterval &) |
| r_Sinterval & | operator*= (const r_Sinterval &) |
| r_Sinterval | create_intersection (const r_Sinterval &) const |
| r_Sinterval | operator* (const r_Sinterval &) const |
| bool | intersects_with (const r_Sinterval &) const |
| determines if the self interval intersects with the delivered one More... | |
| r_Sinterval & | closure_of (const r_Sinterval &, const r_Sinterval &) |
| r_Sinterval & | closure_with (const r_Sinterval &) |
| r_Sinterval | create_closure (const r_Sinterval &) const |
| void | print_status (std::ostream &s) const |
| writes the state of the object to the specified stream More... | |
| char * | get_string_representation () const |
Returns a string representation of this sinterval as a pointer that should eventually be deallocated by the caller with free(). More... | |
| std::string | to_string () const |
| Returns a string representation of this sinterval as a string object. More... | |
| r_Bytes | get_storage_size () const |
| calculate the size of the storage space occupied More... | |
The class represents an interval with lower and upper bound.
Operations on the interval are defined according to the ODMG-93 standard. The operations union, difference, and intersection are defined according to the following table:
| ... fixed bound ... open bound
Attention: The difference operation has to be reconsidered in future concerning a discrete interpretation of the intervals.
The closure operation defines an interval which is the smallest interval containing the two operands. The method intersects_with() returns 0 in the error cases of the intersection operation and 1 otherwise.
| using r_Sinterval::BoundType = r_Range |
| using r_Sinterval::OffsetType = size_t |
|
default |
default constructor creates an interval with open bounds
|
explicit |
constructor taking string representation (e.g. *:200 )
constructor for an interval with fixed bounds
|
explicit |
constructor for a slice (TODO)
| r_Sinterval::r_Sinterval | ( | char | , |
| r_Range | high | ||
| ) |
| r_Sinterval::r_Sinterval | ( | r_Range | low, |
| char | |||
| ) |
| r_Sinterval::r_Sinterval | ( | char | , |
| char | |||
| ) |
| r_Sinterval& r_Sinterval::closure_of | ( | const r_Sinterval & | , |
| const r_Sinterval & | |||
| ) |
| r_Sinterval& r_Sinterval::closure_with | ( | const r_Sinterval & | ) |
| r_Sinterval r_Sinterval::create_closure | ( | const r_Sinterval & | ) | const |
| r_Sinterval r_Sinterval::create_difference | ( | const r_Sinterval & | ) | const |
| r_Sinterval r_Sinterval::create_intersection | ( | const r_Sinterval & | ) | const |
| r_Sinterval r_Sinterval::create_union | ( | const r_Sinterval & | ) | const |
| r_Sinterval& r_Sinterval::difference_of | ( | const r_Sinterval & | , |
| const r_Sinterval & | |||
| ) |
| r_Sinterval& r_Sinterval::difference_with | ( | const r_Sinterval & | ) |
| const std::string& r_Sinterval::get_axis_name | ( | ) | const |
| OffsetType r_Sinterval::get_extent | ( | ) | const |
|
noexcept |
get distance to lower bound of this interval from o; this interval is assumed to be fixed in the lower bound, and o >= this.low()
|
noexcept |
get distance to lower bound of this interval from lower bound of o; intervals must be fixed in lower bound, and o.low() >= this.low()
| r_Bytes r_Sinterval::get_storage_size | ( | ) | const |
calculate the size of the storage space occupied
| char* r_Sinterval::get_string_representation | ( | ) | const |
Returns a string representation of this sinterval as a pointer that should eventually be deallocated by the caller with free().
| bool r_Sinterval::has_axis_name | ( | ) | const |
|
noexcept |
| bool r_Sinterval::inside_of | ( | const r_Sinterval & | o | ) | const |
| r_Sinterval& r_Sinterval::intersection_of | ( | const r_Sinterval & | , |
| const r_Sinterval & | |||
| ) |
| r_Sinterval& r_Sinterval::intersection_with | ( | const r_Sinterval & | ) |
| bool r_Sinterval::intersects_with | ( | const r_Sinterval & | ) | const |
determines if the self interval intersects with the delivered one
|
noexcept |
|
noexcept |
|
noexcept |
|
noexcept |
|
noexcept |
|
noexcept |
|
noexcept |
| bool r_Sinterval::operator!= | ( | const r_Sinterval & | ) | const |
non equal operator - negation of equal operator
| r_Sinterval r_Sinterval::operator* | ( | const r_Sinterval & | ) | const |
| r_Sinterval& r_Sinterval::operator*= | ( | const r_Sinterval & | ) |
| r_Sinterval r_Sinterval::operator+ | ( | const r_Sinterval & | ) | const |
| r_Sinterval& r_Sinterval::operator+= | ( | const r_Sinterval & | ) |
| r_Sinterval r_Sinterval::operator- | ( | const r_Sinterval & | ) | const |
| r_Sinterval& r_Sinterval::operator-= | ( | const r_Sinterval & | ) |
| bool r_Sinterval::operator== | ( | const r_Sinterval & | ) | const |
Two intervals are equal if they have the same lower and upper bound.
| void r_Sinterval::print_status | ( | std::ostream & | s | ) | const |
writes the state of the object to the specified stream
| void r_Sinterval::set_axis_name | ( | const std::string & | axis_name_arg | ) |
set an axis name for this interval; an empty string will clear any axis name.
|
noexcept |
| void r_Sinterval::set_high | ( | r_Range | high | ) |
|
noexcept |
|
noexcept |
|
noexcept |
|
noexcept |
| void r_Sinterval::set_low | ( | r_Range | low | ) |
|
noexcept |
| std::string r_Sinterval::to_string | ( | ) | const |
Returns a string representation of this sinterval as a string object.
| r_Sinterval r_Sinterval::translate_by | ( | BoundType | offset | ) | const |
translate this interval by a given offset; assumes that this interval has fixed bounds
| r_Sinterval& r_Sinterval::union_of | ( | const r_Sinterval & | , |
| const r_Sinterval & | |||
| ) |
| r_Sinterval& r_Sinterval::union_with | ( | const r_Sinterval & | ) |
1.8.17