rasdaman client API  10.6.3
The Array Analytics Engine: Datacubes at Your Fingertips
oid.hh
Go to the documentation of this file.
1 /*
2 * This file is part of rasdaman community.
3 *
4 * Rasdaman community is free software: you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation, either version 3 of the License, or
7 * (at your option) any later version.
8 *
9 * Rasdaman community is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU General Public License for more details.
13 *
14 * You should have received a copy of the GNU General Public License
15 * along with rasdaman community. If not, see <http://www.gnu.org/licenses/>.
16 *
17 * Copyright 2003, 2004, 2005, 2006, 2007, 2008, 2009 Peter Baumann /
18 rasdaman GmbH.
19 *
20 * For more information please see <http://www.rasdaman.org>
21 * or contact Peter Baumann via <baumann@rasdaman.com>.
22 */
23 
24 #ifndef D_OID_HH
25 #define D_OID_HH
26 
27 #include <iosfwd>
28 #include <string>
29 
30 //@ManMemo: Module: {\bf raslib}
38 class r_OId
39 {
40 public:
42  r_OId() = default;
44  explicit r_OId(const char *);
46  r_OId(const char *initSystemName, const char *initBaseName, long long initLocalOId);
47  r_OId(const r_OId &) = default;
48  r_OId &operator=(const r_OId &o);
49 
50  ~r_OId() = default;
51 
53  void print_status(std::ostream &s) const;
54 
55  //@Man: Comparison operators:
57  bool operator==(const r_OId &) const;
60  bool operator!=(const r_OId &) const;
62  bool operator>(const r_OId &) const;
64  bool operator<(const r_OId &) const;
66  bool operator>=(const r_OId &) const;
68  bool operator<=(const r_OId &) const;
70 
72  const char *get_string_representation() const;
74  const char *get_system_name() const;
76  const char *get_base_name() const;
78  long long get_local_oid() const;
80  double get_local_oid_double() const;
82  bool is_valid() const;
83 
84 private:
86  std::string oidString;
88  std::string systemName;
90  std::string baseName;
92  long long localOId{};
93 };
94 
95 //@ManMemo: Module: {\bf raslib}
99 extern std::ostream &operator<<(std::ostream &s, const r_OId &oid);
100 
101 #endif
r_OId::operator<=
bool operator<=(const r_OId &) const
operator for less than or equal
r_OId::r_OId
r_OId()=default
default constructor
r_OId::operator=
r_OId & operator=(const r_OId &o)
r_OId::print_status
void print_status(std::ostream &s) const
debug output
r_OId::operator<
bool operator<(const r_OId &) const
operator for less than
r_OId::get_base_name
const char * get_base_name() const
get base name
operator<<
std::ostream & operator<<(std::ostream &s, const r_OId &oid)
Output stream operator for objects of type const r_Oid.
r_OId::operator==
bool operator==(const r_OId &) const
operator for equality
r_OId::is_valid
bool is_valid() const
determines if oid is valid
r_OId::operator>
bool operator>(const r_OId &) const
operator for greater than
r_OId::get_local_oid_double
double get_local_oid_double() const
get local oid as double
r_OId::operator!=
bool operator!=(const r_OId &) const
operator for not equal
r_OId::get_string_representation
const char * get_string_representation() const
gets the oid's string representation
r_OId::operator>=
bool operator>=(const r_OId &) const
operator for greater or equal than
r_OId::get_system_name
const char * get_system_name() const
get system name
r_OId::~r_OId
~r_OId()=default
r_OId
Class r_OId represents an object identifier.
Definition: oid.hh:38
r_OId::get_local_oid
long long get_local_oid() const
get local oid