3#include <NDEVR/SoftwareService.h>
4#include <NDEVR/Bounds.h>
5#include <NDEVR/String.h>
7#include <NDEVR/Pointer.h>
8#include <NDEVR/RGBColor.h>
160 bool include_labels =
false;
169 : request_id(
UUID::CreateUUID())
181 class MercatorProcessThread;
A specification of upper and lower bounds in N-dimensions.
Definition Bounds.hpp:52
The equivelent of std::vector but with a bit more control. The basic array unit of the library.
Definition Buffer.hpp:59
Provides a constant, unmodifiable pointer that has shared ownership of a dynamically allocated object...
Definition GraphicsPipeline.h:42
Provides a modifiable pointer that has shared ownership of a dynamically allocated object.
Definition Pointer.hpp:319
Place where service can be registered to provide aerial image support.
Definition MercatorImageManager.h:186
static void SetPrimaryManager(MercatorImageManager *manager)
virtual bool postRequest(const MercatorImageRequest &request, std::function< void(const MercatorImage &)> finished_callback)=0
static MercatorImageManager * PrimaryManager()
Definition MercatorImageManager.h:192
virtual void setDevicePixelRatio(fltp08)
Definition MercatorImageManager.h:191
static MercatorImageManager * s_manager
Definition MercatorImageManager.h:197
virtual bool postRequest(const AerialImageRequest &request)
virtual DynamicPointer< WebMercatorTileService > defaultService(AerialImageMode mode) const =0
A light-weight base class for Log that allows processes to update, without the need for.
Definition ProgressInfo.hpp:48
Represents a color in the RGB space with optional alpha transparency.
Definition RGBColor.h:53
Software Services provide an interface for adding to or changing the software behavior.
Definition SoftwareService.h:9
The core String class for the software.
Definition String.h:47
Logic for reading or writing to a string or a user friendly, TranslatedString.
Definition StringStream.h:118
A universally unique identifier (UUID) is a 128-bit number used to identify information in computer s...
Definition UUID.h:62
A fixed-size array with better performance compared to dynamic containers.
Definition Vector.hpp:60
A wrapper for logic that uses a web engine to provide an Image Tile service.
Definition MercatorImageManager.h:121
WebMercatorTileService & operator=(const WebMercatorTileService &other)=default
virtual String getUrl(WebMercatorTile tile, const MercatorImageRequest &request) const =0
virtual ~WebMercatorTileService()=default
WebMercatorTileService()=default
WebMercatorTileService(WebMercatorTileService &&other)=default
virtual UUID getUUID(WebMercatorTile tile, const MercatorImageRequest &request) const =0
WebMercatorTileService(const WebMercatorTileService &other)=default
virtual Buffer< WebMercatorTile::Resolution > getSupportedResolutions() const =0
WebMercatorTileService & operator=(WebMercatorTileService &&other)=default
virtual Buffer< WebMercatorTile::DPI > getSupportedDPIs() const =0
AerialImageMode
enum specifying what type of image to fetch. Options for terrain, satellite, or road views
Definition MercatorImageManager.h:16
@ e_aerial_image_mode_size
ArialFeatureList
Contains a list of common features that may be provided by Aerial tile services.
Definition MercatorImageManager.h:28
@ administrative_land_parcel
@ administrative_locality
@ e_administrative_country
@ administrative_neighborhood
@ administrative_province
uint32_t uint04
-Defines an alias representing a 4 byte, unsigned integer -Can represent exact integer values 0 throu...
Definition BaseValues.hpp:94
double fltp08
Defines an alias representing an 8 byte floating-point number.
Definition BaseValues.hpp:146
Contains the information for requesting a 2D top-down view of a geographic.
Definition MercatorImageManager.h:167
UUID request_id
Definition MercatorImageManager.h:173
AerialImageRequest()
Definition MercatorImageManager.h:168
MercatorImageRequest convertToWebRequest(const DynamicPointer< WebMercatorTileService > &service) const
std::function< void(const MercatorImage &generated_image)> finished_callback
Definition MercatorImageManager.h:179
Allows the user to specify a color theme for a Aerial image request. For example Google allows variou...
Definition MercatorImageManager.h:64
RGBColor brush
Definition MercatorImageManager.h:68
ArialColorTheme()
Definition MercatorImageManager.h:65
bool is_on
Definition MercatorImageManager.h:69
RGBColor pen
Definition MercatorImageManager.h:67
static RGBColor DefaultColor(ArialFeatureList item)
Defines for a given type (such as sint04, fltp08, UUID, etc) a maximum, minimum, and reserved.
Definition BaseValues.hpp:230
Information output from a specific Aerial Tile request.
Definition MercatorImageManager.h:106
UUID request_id
Definition MercatorImageManager.h:107
void * raw_image
Definition MercatorImageManager.h:109
String image_id
Definition MercatorImageManager.h:110
bool success
Definition MercatorImageManager.h:108
Vector< 2, fltp08 > pixelToLatLon(Vector< 2, uint04 > pixel) const
Bounds< 2, fltp08 > wgs_84_bounds
Definition MercatorImageManager.h:111
Contains the information for requesting a 2D top-down view of a geographic location to be used with a...
Definition MercatorImageManager.h:142
UUID request_id
Definition MercatorImageManager.h:158
Vector< 2, uint04 > size
Definition MercatorImageManager.h:156
WebMercatorTile::DPI getDPI() const
WebMercatorTile::Resolution getResolution() const
MercatorImageRequest()
Definition MercatorImageManager.h:143
fltp08 getScaleFactor() const
Bounds< 2, fltp08 > bounds_wgs84
Definition MercatorImageManager.h:155
String generated_image
Definition MercatorImageManager.h:148
MercatorImageRequest(const ConstPointer< WebMercatorTileService > &service, Bounds< 2, fltp08 > bounds, Vector< 2, uint04 > size, WebMercatorTile::DPI dpi=WebMercatorTile::DPI::e_auto)
A "Tile" containing data for.
Definition MercatorImageManager.h:76
WebMercatorTile()
Definition MercatorImageManager.h:89
DPI
Definition MercatorImageManager.h:78
WebMercatorTile(uint04 x, uint04 y, uint04 zoom, Resolution resolution, DPI dpi, bool include_labels)
String language
Definition MercatorImageManager.h:94
Resolution
Definition MercatorImageManager.h:85
UUID getUUID(UUID parent_id) const
static uint04 convertResolutionToPixels(Resolution resolution)