All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
TerrainHeightLookup.h
1 // Copyright eeGeo Ltd (2012-2014), All Rights Reserved
2 
3 #pragma once
4 
5 #include "VectorMathDecl.h"
6 #include "Streaming.h"
7 
8 namespace Eegeo
9 {
10  namespace Resources
11  {
12  namespace Terrain
13  {
15  {
16  public:
17  virtual ~ITerrainHeightLookup() {}
18  virtual bool TryGetHeight(Eegeo::dv3 ecefPoint, float& height) const=0;
19 
20  // Suspect this in nonsense. All ITerrainHeightLookup implementations know what key they belong to and are retrieved from repositories
21  // via their key. Bit of confusion of who should have knowledge of the MortonKey...
22  virtual bool TryGetHeight(Eegeo::dv3 ecefPoint, Streaming::MortonKey key, float& height) const=0;
23 
24  virtual float GetMaxHeight() const = 0;
25  virtual float GetMinHeight() const = 0;
26 
27  virtual const Eegeo::Streaming::MortonKey& GetMortonKey() const = 0 ;
28  };
29  }
30  }
31 }