GlsMap Toolkit
1.9.0
|
#include <gls_map_cadrg.h>
Public Member Functions | |
CADRGMapChartDataSource (JustInTimeFileLoading=PROCESS_LATER) | |
void | ParseDirectory (const char *directoryPath, ParseDirectoryRules=FIND_TOC) |
void | ParseDirectoryForLocation (const char *directoryPath, const double longitude, const double latitude, const double sizeOfParse) |
void | AddCustomMapLayer (const char *currentScaleString, const char *customScaleString, const char *customExtension) |
unsigned int | GetLayerCount () const |
JustInTimeFileLoading | IsJustInTimeFileLoadingEnabled (void) const |
void | SetTargetCellLoadRate (const double targetCellLoadRate) |
double | GetTargetCellLoadRate (void) const |
std::set< DataSeriesCodeEnum > | GetPopulatedLayers () |
bool | GetAvailableCoverage (GeoRect *dest) DISTI_METHOD_OVERRIDE |
unsigned long | GetBestLayer (GlsMapView *view, GlsMapChart *chart) const DISTI_METHOD_OVERRIDE |
void | GetCellList (const GeoRect &coverage, unsigned long layerID, double viewLogicalHeight, double viewGeoHeight, MapChartCellList &viewList) DISTI_METHOD_OVERRIDE |
void | SetCADRGLayer (const DataSeriesCodeEnum layer) |
void | SetCADRGLayer (const std::string &str) |
DataSeriesCodeEnum | GetCADRGLayer (void) |
void | SetCIBLayer (const unsigned long &layer) |
void | SetCIBLayer (const std::string &str) |
unsigned long | GetCIBLayer (void) |
void | SetUseCADRGLayerFlag (bool layerFlag) |
bool | GetUseCADRGLayerFlag (void) |
void | SetUseCIBLayerFlag (bool layerFlag) |
bool | GetUseCIBLayerFlag (void) |
void | SetLayerCacheCount (const unsigned int cacheCount) |
unsigned int | GetLayerCacheCount (void) const |
void | CalcAvailableCoverage () |
Image * | LoadCellImage (MapChartCell *cell) |
void | TestCalculatedAgainstTabular () |
Public Member Functions inherited from disti::GlsMapChartDataSource | |
virtual | ~GlsMapChartDataSource () |
virtual bool | GetAvailableCoverage (GeoRect *dest)=0 |
virtual unsigned long | GetBestLayer (GlsMapView *view, GlsMapChart *chart) const |
virtual void | GetCellList (const GeoRect &coverage, unsigned long layerID, double viewLogicalHeight, double viewGeoHeight, MapChartCellList &viewList)=0 |
virtual void | PostDraw (GlsMapView *view, GlsMapChart *chart) |
virtual bool | AreAllCellsLoaded (GlsMapView *view, GlsMapChart *chart) |
Protected Member Functions | |
CADRGMapChartDataSource (const CADRGMapChartDataSource &) | |
const CADRGMapChartDataSource & | operator= (const CADRGMapChartDataSource &) |
void | LoadFilesFromCoverage (const GeoRect &coverage_param, DataSeriesCodeEnum layer) |
Protected Member Functions inherited from disti::GlsMapChartDataSource | |
GlsMapChartDataSource () | |
Protected Attributes | |
GeoRect | _availableCoverage |
unsigned long | _cellListCount |
DataSeriesCodeEnum | _userDefinedCADRGLayer |
bool | _useUserDefinedCADRGLayer |
const JustInTimeFileLoading | _useJITFileLoading |
CADRGMapChartLayerCache * | _layerCache |
CADRGMap * | _cadrgMapStore |
Runtime implementation of an CADRGMapChartDataSource
void disti::CADRGMapChartDataSource::AddCustomMapLayer | ( | const char * | currentScaleString, |
const char * | customScaleString, | ||
const char * | customExtension | ||
) |
Uses the currentScaleString value to derive a new map layer from the existing layer identified by currentScaleString.
currentScaleString | should be the string of an existing layer |
customScaleString | the string to be added to the above list of strings |
customExtension | the two character non-numeric file extension that can be used to find files for this layer. |
void disti::CADRGMapChartDataSource::CalcAvailableCoverage | ( | ) |
Updates the coverage area that is returned by GetAvailableCoverage. This is called automatically when something causes the coverage area to change. This method is slow, users of the class should not need to call it directly.
|
virtual |
Sets a GeoRect to describe the area containing all areas covered by this MapDataSource. This area may change as different databases are loaded. Calling this method may be slow. \dest Pointer to a GeoRect to recieve the coverage.
Implements disti::GlsMapChartDataSource.
|
virtual |
Returns the cell layer ('zoom level') that best matches the given area
view | The GlsMapView used to draw the chart |
chart | The GlsMapChart that is being drawn |
Reimplemented from disti::GlsMapChartDataSource.
|
inline |
Get the currently set layer for CADRG data.
|
virtual |
Get the list of the available cells in a given coverage area The caller will AddRef() any of the cells that it will be holding a reference to
coverage | GeoRect describing the requested area |
layerID | Which layer to return MapCells from |
viewLogicalHeight | The height of the view in logical units |
viewGeoHeight | The height of the view in geographic units |
viewList | Pointer MapChartCellList to recieve the list of available cells |
Implements disti::GlsMapChartDataSource.
|
inline |
Get the currently set layer for CIB data.
unsigned int disti::CADRGMapChartDataSource::GetLayerCacheCount | ( | void | ) | const |
Get the count of the layer cache
std::set< DataSeriesCodeEnum > disti::CADRGMapChartDataSource::GetPopulatedLayers | ( | ) |
Get the set of CADRG layers that have loaded data. Refer to DataSeriesCodeEnum for list of CADRG layers.
double disti::CADRGMapChartDataSource::GetTargetCellLoadRate | ( | void | ) | const |
Get the target rate in hz at which cells will be loaded
|
inline |
Get the current setting of the use CIB layer flag.
void disti::CADRGMapChartDataSource::ParseDirectoryForLocation | ( | const char * | directoryPath, |
const double | longitude, | ||
const double | latitude, | ||
const double | sizeOfParse | ||
) |
Loads CADRG data from the specified directory if the data is located in the coordinate coverage area.
directoryPath | the string of the path to the directory |
longitude | the value of the longitude of the center coordinate of the coverage area |
latitude | the value of the latitude of the center coordinate of the coverage area |
sizeOfParse | the value of the radius of the coverage in nautical miles |
void disti::CADRGMapChartDataSource::SetCADRGLayer | ( | const DataSeriesCodeEnum | layer | ) |
Set the user-specificed layer to display for CADRG data. Note: This value will NOT be used unless the SetUseCADRGLayerFlag is true.
layer | The layer to display. Refer to DataSeriesCodeEnum for layer definitions. |
void disti::CADRGMapChartDataSource::SetCADRGLayer | ( | const std::string & | str | ) |
Set the layer to display for CADRG data by scale string. Note: This value will NOT be used unless the SetUseCADRGLayerFlag is true. string - layer name
str | The scale string of the layer to display. |
void disti::CADRGMapChartDataSource::SetCIBLayer | ( | const std::string & | str | ) |
Set the layer to display for CIB data by scale string. Note: This value will NOT be used unless the SetUseCADRGLayerFlag is true. The valid values are: "10M" "5M"
str | The scale string of the layer to display. The strings are defined int the CADRG standard, i.e. "1M". |
void disti::CADRGMapChartDataSource::SetCIBLayer | ( | const unsigned long & | layer | ) |
Set the layer to display for CIB data. Note: This value will NOT be used unless the SetUseCADRGLayerFlag is true. The valid values are: 8 - 10M 9 - 5M
layer | The layer to display. Should be in the range [8, 10]. |
void disti::CADRGMapChartDataSource::SetLayerCacheCount | ( | const unsigned int | cacheCount | ) |
Set the count of the layer cache
cacheCount | max number of layers to cache else 0u to disable layer caching |
void disti::CADRGMapChartDataSource::SetTargetCellLoadRate | ( | const double | targetCellLoadRate | ) |
Set the target rate in hz at which cells will be loaded
targetCellLoadRate | target rate in hz else 0.0 for no target rate ( i.e. load as quickly as possible ) |
|
inline |
Set the use CIB layer flag, which turns on and off the use of the user specified layer for CIB data.