-
Notifications
You must be signed in to change notification settings - Fork 0
/
DgBoundedIDGG.h
58 lines (38 loc) · 1.58 KB
/
DgBoundedIDGG.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
////////////////////////////////////////////////////////////////////////////////
//
// DgBoundedIDGG.h: DgBoundedIDGG class definitions
//
// Version 6.1 - Kevin Sahr, 5/23/13
//
////////////////////////////////////////////////////////////////////////////////
#ifndef DGBOUNDEDIDGG_H
#define DGBOUNDEDIDGG_H
#include <cstdint>
#include "DgIDGG.h"
#include "DgGeoSphRF.h"
#include "DgBoundedRF.h"
using namespace std;
class DgBoundedRF2D;
////////////////////////////////////////////////////////////////////////////////
class DgBoundedIDGG : public DgBoundedRF<DgQ2DICoord, DgGeoCoord, long double> {
public:
DgBoundedIDGG (const DgIDGG& IDGGin);
virtual DgQ2DICoord& incrementAddress (DgQ2DICoord& add) const;
virtual DgQ2DICoord& decrementAddress (DgQ2DICoord& add) const;
virtual bool validAddress (const DgQ2DICoord& add) const;
const DgQ2DICoord& invalidAdd (void) const
{ return idgg().undefAddress(); }
const DgIDGG& idgg (void) const { return IDGG_; }
std::uint64_t offsetPerQuad (void) const { return offsetPerQuad_; }
virtual std::uint64_t seqNumAddress (const DgQ2DICoord& add) const;
virtual DgQ2DICoord addFromSeqNum (std::uint64_t sNum) const;
protected:
const DgBoundedRF2D& bnd2D (void) const { return *bnd2D_; }
private:
const DgIDGG& IDGG_;
DgBoundedRF2D* bnd2D_;
std::uint64_t offsetPerQuad_;
};
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
#endif