40 #ifndef INCLUDED_GLS_MAP_DNC_H
41 #define INCLUDED_GLS_MAP_DNC_H
50 #define LIB_BASE_NAME "gls_map_dnc"
61 class DNCAsyncCellRenderThread;
62 class DNCMapChartCell;
67 #endif // defined( _WIN32 )
155 void LoadPath(
const char*
const dncRootPath );
195 bool LoadDNCLibrary(
const unsigned int libNum,
const bool async,
const bool preTessellate );
221 bool LockLibrary(
const unsigned int libNum, DNCLibrary** lib );
263 bool GetLibraryExtents(
const unsigned int libNum,
float& swCornerLon,
float& swCornerLat,
float& neCornerLon,
float& neCornerLat )
const;
285 bool GetLibraryScale(
const unsigned int libNum,
unsigned int& scale );
300 bool ShowAll(
const int libNum,
const bool show );
309 bool SetCoverageVisible(
const int libNum,
const char*
const covName,
const bool visible );
327 bool SetFeatureVisible(
const int libNum,
const char*
const covName,
const char*
const featClassName,
const char*
const faccCode,
328 const char*
const intAttribColName,
const unsigned int intAttribVal,
329 const char*
const charAttribColName,
const char*
const charAttribVal,
const int desFeatIndex,
330 const bool visible );
348 bool SetFeatureColor(
const int libNum,
const char*
const covName,
const char*
const featClassName,
const char*
const faccCode,
349 const char*
const intAttribColName,
const unsigned int intAttribVal,
350 const char*
const charAttribColName,
const char*
const charAttribVal,
const int desFeatIndex,
373 bool SetPointFeatureRenderCB(
const int libNum,
const char*
const covName,
const char*
const featClassName,
const char*
const faccCode,
374 const char*
const intAttribColName,
const unsigned int intAttribVal,
375 const char*
const charAttribColName,
const char*
const charAttribVal,
const int desFeatIndex,
377 const bool useMapScale );
396 bool SetFeatureLineStipple(
const int libNum,
const char*
const covName,
const char*
const featClassName,
const char*
const faccCode,
397 const char*
const intAttribColName,
const unsigned int intAttribVal,
398 const char*
const charAttribColName,
const char*
const charAttribVal,
const int desFeatIndex,
399 const GLint stippleFactor,
const GLushort stipplePattern );
417 bool SetTextFeatureFont(
const int libNum,
const char*
const covName,
const char*
const featClassName,
const char*
const faccCode,
418 const char*
const intAttribColName,
const unsigned int intAttribVal,
419 const char*
const charAttribColName,
const char*
const charAttribVal,
const int desFeatIndex,
438 bool SetAreaFeaturePolygonStipple(
const int libNum,
const char*
const covName,
const char*
const featClassName,
const char*
const faccCode,
439 const char*
const intAttribColName,
const unsigned int intAttribVal,
440 const char*
const charAttribColName,
const char*
const charAttribVal,
const int desFeatIndex,
441 const GLPolyStipplePattern*
const polyStipplePattern );
459 bool SetAreaFeatureBoundaryVisible(
const int libNum,
const char*
const covName,
const char*
const featClassName,
const char*
const faccCode,
460 const char*
const intAttribColName,
const unsigned int intAttribVal,
461 const char*
const charAttribColName,
const char*
const charAttribVal,
const int desFeatIndex,
462 const bool visible );
480 bool SetAreaFeatureBoundaryColor(
const int libNum,
const char*
const covName,
const char*
const featClassName,
const char*
const faccCode,
481 const char*
const intAttribColName,
const unsigned int intAttribVal,
482 const char*
const charAttribColName,
const char*
const charAttribVal,
const int desFeatIndex,
495 bool SetFeatureDrawOrder(
const int libNum,
const char*
const covName,
const char*
const featClassName,
const char*
const faccCode,
496 const unsigned int drawOrder );
516 const char*
const featClassName,
const char*
const faccCode,
517 const char*
const intAttribColName,
const unsigned int intAttribVal,
518 const char*
const charAttribColName,
const char*
const charAttribVal,
const int desFeatIndex );
606 DNCMapChartCell*
FindCell(
const unsigned int libNum,
const double tileLogicalHeight,
const GeoRect& tileRect,
const unsigned long layer );
622 bool _firstTimeLoaded;
624 #if defined( _WIN32 )
625 WGLExtensions*
_glEx;
640 #endif // _GLS_MAP_DNC_H
Mutex * _cellPointersMutex
Definition: gls_map_dnc.h:618
bool IterateFeatures(FeatureIteratorCB const featureIteratorCB, void *const userData, const int libNum, const char *const covName, const char *const featClassName, const char *const faccCode, const char *const intAttribColName, const unsigned int intAttribVal, const char *const charAttribColName, const char *const charAttribVal, const int desFeatIndex)
const char * GetLibraryName(const unsigned int libNum) const
bool LowerAsyncCellRenderPriority(const bool belowNormal)
bool SetAreaFeatureBoundaryVisible(const int libNum, const char *const covName, const char *const featClassName, const char *const faccCode, const char *const intAttribColName, const unsigned int intAttribVal, const char *const charAttribColName, const char *const charAttribVal, const int desFeatIndex, const bool visible)
void LoadPath(const char *const dncRootPath)
bool GetLibraryCoverageArea(const unsigned int libNum, double &area) const
FeatureType
Definition: vpf_util.h:173
bool SetFeatureDrawOrder(const int libNum, const char *const covName, const char *const featClassName, const char *const faccCode, const unsigned int drawOrder)
Definition: gls_map_chart_data_source.h:210
Definition: dnc_util.h:188
bool SetPointFeatureRenderCB(const int libNum, const char *const covName, const char *const featClassName, const char *const faccCode, const char *const intAttribColName, const unsigned int intAttribVal, const char *const charAttribColName, const char *const charAttribVal, const int desFeatIndex, RenderPointFeatureCB const renderCB, void *const userData, const bool useMapScale)
bool IsLibraryLoading(const unsigned int libNum) const
void(* RenderPointFeatureCB)(void *const userData, DNCMapChartDataSource &dncSource, const unsigned int libNum, const char *const covName, const char *const featClassName, const unsigned int featIndex, const VPFTableHeader &featTableHeader, const VPFTable::Row &featRow, const VPFUtil::Coord2DShort &pointCoord, const glsColor &color, const DNCUtil::GeoRegion ®ion, const double logicalHeight)
Definition: gls_map_dnc.h:107
bool LowerAsyncLoadPriority(const bool belowNormal)
Definition: dnc_util.h:470
void RefreshCellList(void)
GLXExtensions * _glEx
Definition: gls_map_dnc.h:627
DNC related utility data types and constants.
bool IsLibraryVisible(const unsigned int libNum)
Definition: gls_map_util.h:414
bool(* FeatureIteratorCB)(void *const userData, DNCMapChartDataSource &dncSource, const unsigned int libNum, const char *const covName, const char *const featClassName, const VPFUtil::FeatureType featType, const unsigned int featIndex, const VPFTableHeader &featTableHeader, const VPFTable::Row &featRow)
Definition: gls_map_dnc.h:126
bool ShowAll(const int libNum, const bool show)
bool LoadDNCLibrary(const unsigned int libNum, const bool async, const bool preTessellate)
The GlsMapView is a special group that controls the map view parameters. It contains all of the objec...
Definition: gls_map_view.h:86
const DNCUtil::QueryResults * QueryFeatures(const unsigned int libNum, const DNCUtil::GeoRegion ®ion, const bool onlyVisibleFeatures)
ConfigLibraryCB _configLibCB
Definition: gls_map_dnc.h:616
Definition: gls_map_dnc.h:547
void PostDraw(GlsMapView *view, GlsMapChart *chart) DISTI_METHOD_OVERRIDE
CellPointerArray _cellPointers
Definition: gls_map_dnc.h:619
bool LibraryCoveragePointTest(const unsigned int libNum, const double longitude, const double latitude) const
bool GetLibraryExtents(const unsigned int libNum, float &swCornerLon, float &swCornerLat, float &neCornerLon, float &neCornerLat) const
DNCLibrary * lib
Definition: gls_map_dnc.h:550
void SetConfigLibCB(ConfigLibraryCB const configLibCB, void *const userData, const bool reconfigAll)
bool SetAreaFeaturePolygonStipple(const int libNum, const char *const covName, const char *const featClassName, const char *const faccCode, const char *const intAttribColName, const unsigned int intAttribVal, const char *const charAttribColName, const char *const charAttribVal, const int desFeatIndex, const GLPolyStipplePattern *const polyStipplePattern)
void GetCellList(const GeoRect &coverage, unsigned long layerID, double viewLogicalHeight, double viewGeoHeight, MapChartCellList &viewList) DISTI_METHOD_OVERRIDE
void InvalidateCells(const unsigned int libNum)
bool SetFeatureLineStipple(const int libNum, const char *const covName, const char *const featClassName, const char *const faccCode, const char *const intAttribColName, const unsigned int intAttribVal, const char *const charAttribColName, const char *const charAttribVal, const int desFeatIndex, const GLint stippleFactor, const GLushort stipplePattern)
The disti::GlsMapChartDataSource class.
DynamicArray< DNCMapChartCell *, true > CellPointerArray
Definition: gls_map_dnc.h:564
Definition: gls_mutex.h:52
Definition: gls_map_dnc.h:75
bool SetCoverageVisible(const int libNum, const char *const covName, const bool visible)
DynamicArray< LibrarySlot, false > LibraryArray
Definition: gls_map_dnc.h:561
Definition: vpf_util.h:193
bool GetLibraryScale(const unsigned int libNum, unsigned int &scale)
static DNCMapChartCell * getNextCellToRender(void *const pArguments)
VPFUtil::SecurityClass GetLibrarySecurityClass(const unsigned int libNum)
unsigned int GetLibraryCount(void) const
bool SetAreaFeatureBoundaryColor(const int libNum, const char *const covName, const char *const featClassName, const char *const faccCode, const char *const intAttribColName, const unsigned int intAttribVal, const char *const charAttribColName, const char *const charAttribVal, const int desFeatIndex, const glsColor &color)
Definition: gls_color.h:53
bool visible
Definition: gls_map_dnc.h:551
SecurityClass
Definition: vpf_util.h:183
bool SetFeatureVisible(const int libNum, const char *const covName, const char *const featClassName, const char *const faccCode, const char *const intAttribColName, const unsigned int intAttribVal, const char *const charAttribColName, const char *const charAttribVal, const int desFeatIndex, const bool visible)
bool IsValid(void) const
Definition: gls_map_dnc.h:161
Definition: vpf_util.h:272
bool LockLibrary(const unsigned int libNum, DNCLibrary **lib)
DNCMapChartCell * FindCell(const unsigned int libNum, const double tileLogicalHeight, const GeoRect &tileRect, const unsigned long layer)
VPFUtil::WarningBool _isValid
Definition: gls_map_dnc.h:613
DNCDatabase * _dncDb
Definition: gls_map_dnc.h:614
bool RefreshLib(const unsigned int libNum)
Mutex * libMutex
Definition: gls_map_dnc.h:549
bool SetLibraryVisible(const unsigned int libNum, const bool visible)
LibraryArray _libraries
Definition: gls_map_dnc.h:615
void RefreshLibList(void)
void(* ConfigLibraryCB)(void *const userData, DNCMapChartDataSource &dncSource, const int libNum)
Definition: gls_map_dnc.h:83
bool SetTextFeatureFont(const int libNum, const char *const covName, const char *const featClassName, const char *const faccCode, const char *const intAttribColName, const unsigned int intAttribVal, const char *const charAttribColName, const char *const charAttribVal, const int desFeatIndex, GlsFontBase *const font)
bool LowerAsyncUnloadPriority(const bool belowNormal)
bool NotfiyLibraryConfigChanged(void)
Macros and helper code to determine what subset of C++11/14/17 is available.
unsigned int GetCompletedCellCount(const unsigned int libNum)
bool SetFeatureColor(const int libNum, const char *const covName, const char *const featClassName, const char *const faccCode, const char *const intAttribColName, const unsigned int intAttribVal, const char *const charAttribColName, const char *const charAttribVal, const int desFeatIndex, const glsColor &color)
Definition: gls_map_chart.h:70
unsigned long GetBestLayer(GlsMapView *view, GlsMapChart *chart) const DISTI_METHOD_OVERRIDE
bool IsLibraryLoaded(const unsigned int libNum)
GLubyte GLPolyStipplePattern[128u]
Definition: gls_map_dnc.h:130
bool UnloadDNCLibrary(const unsigned int libNum, const bool async)
Definition: bmpimage.h:46
void PopulateCells(const unsigned int libNum, const GeoRect &libExtents, const GeoRect &view, const unsigned long layer, double viewLogicalHeight, double viewGeoHeight, MapChartCellList &cellList)
DNCAsyncCellRenderThread * _renderThread
Definition: gls_map_dnc.h:620
void * _configUserData
Definition: gls_map_dnc.h:617
bool UnlockLibrary(const unsigned int libNum)
DNCMapChartCell * GetNextCellToRender(void)
Definition: gls_font_base.h:85
bool GetAvailableCoverage(GeoRect *dest) DISTI_METHOD_OVERRIDE