OpenCPN Partial API docs
|
Manages the chart database and provides access to chart data. More...
#include <chartdb.h>
Public Member Functions | |
bool | LoadBinary (const wxString &filename, ArrayOfCDI &dir_array_check) |
Load the chart database from a binary file. | |
bool | SaveBinary (const wxString &filename) |
int | BuildChartStack (ChartStack *cstk, float lat, float lon, int groupIndex) |
int | BuildChartStack (ChartStack *cstk, float lat, float lon, int db_add, int groupIndex) |
bool | EqualStacks (ChartStack *, ChartStack *) |
bool | CopyStack (ChartStack *pa, ChartStack *pb) |
wxString | GetFullPath (ChartStack *ps, int stackindex) |
int | GetStackChartScale (ChartStack *ps, int stackindex, char *buf, int nbuf) |
int | GetCSPlyPoint (ChartStack *ps, int stackindex, int plyindex, float *lat, float *lon) |
ChartTypeEnum | GetCSChartType (ChartStack *ps, int stackindex) |
ChartFamilyEnum | GetCSChartFamily (ChartStack *ps, int stackindex) |
bool | SearchForChartDir (const wxString &dir) |
ChartBase * | OpenStackChartConditional (ChartStack *ps, int start_index, bool bLargest, ChartTypeEnum New_Type, ChartFamilyEnum New_Family_Fallback) |
wxArrayPtrVoid * | GetChartCache (void) |
std::vector< int > | GetCSArray (ChartStack *ps) |
int | GetStackEntry (ChartStack *ps, wxString fp) |
bool | IsChartInCache (int dbindex) |
bool | IsChartInCache (wxString path) |
bool | IsChartInGroup (const int db_index, const int group) |
bool | IsENCInGroup (const int group) |
bool | IsNonMBTileInGroup (const int group) |
bool | IsChartDirectoryExcluded (const std::string &chart_file) |
ChartBase * | OpenChartFromStack (ChartStack *pStack, int StackEntry, ChartInitFlag iflag=FULL_INIT) |
ChartBase * | OpenChartFromDB (int index, ChartInitFlag init_flag) |
ChartBase * | OpenChartFromDBAndLock (int index, ChartInitFlag init_flag, bool lock=true) |
ChartBase * | OpenChartFromDBAndLock (wxString chart_path, ChartInitFlag init_flag) |
ChartBase * | OpenChartFromDB (wxString chart_path, ChartInitFlag init_flag) |
void | ApplyColorSchemeToCachedCharts (ColorScheme cs) |
void | PurgeCache () |
void | PurgeCachePlugins () |
bool | DeleteCacheChart (ChartBase *pChart) |
void | LockCache (bool bl) |
void | LockCache () |
void | UnLockCache () |
bool | IsCacheLocked () |
wxXmlDocument | GetXMLDescription (int dbIndex, bool b_getGeom) |
bool | LockCacheChart (int index) |
bool | IsChartLocked (int index) |
void | UnLockCacheChart (int index) |
void | UnLockAllCacheCharts () |
void | ClearCacheInUseFlags (void) |
void | PurgeCacheUnusedCharts (double factor) |
bool | IsBusy () |
bool | CheckExclusiveTileGroup (int canvasIndex) |
bool | CheckAnyCanvasExclusiveTileGroup () |
![]() | |
bool | Create (ArrayOfCDI &dir_array, wxGenericProgressDialog *pprog) |
Creates a new chart database from a list of directories. | |
bool | Update (ArrayOfCDI &dir_array, bool bForce, wxGenericProgressDialog *pprog) |
Updates the chart database. | |
bool | Read (const wxString &filePath) |
bool | Write (const wxString &filePath) |
bool | AddSingleChart (wxString &fullpath, bool b_force_full_search=true) |
bool | RemoveSingleChart (wxString &ChartFullPath) |
const wxString & | GetDBFileName () const |
ArrayOfCDI & | GetChartDirArray () |
wxArrayString & | GetChartDirArrayString () |
void | SetChartDirArray (ArrayOfCDI array) |
bool | CompareChartDirArray (ArrayOfCDI &test_array) |
wxString | GetMagicNumberCached (wxString dir) |
void | UpdateChartClassDescriptorArray (void) |
int | GetChartTableEntries () const |
const ChartTableEntry & | GetChartTableEntry (int index) const |
ChartTableEntry * | GetpChartTableEntry (int index) const |
ChartTable & | GetChartTable () |
bool | IsValid () const |
int | DisableChart (wxString &PathToDisable) |
bool | GetCentroidOfLargestScaleChart (double *clat, double *clon, ChartFamilyEnum family) |
int | GetDBChartType (int dbIndex) |
int | GetDBChartFamily (int dbIndex) |
float | GetDBChartSkew (int dbIndex) |
int | GetDBChartProj (int dbIndex) |
int | GetDBChartScale (int dbIndex) |
bool | GetDBBoundingBox (int dbindex, LLBBox &box) |
const LLBBox & | GetDBBoundingBox (int dbIndex) |
int | GetnAuxPlyEntries (int dbIndex) |
int | GetDBPlyPoint (int dbIndex, int plyindex, float *lat, float *lon) |
int | GetDBAuxPlyPoint (int dbIndex, int plyindex, int iAuxPly, float *lat, float *lon) |
int | GetVersion () |
wxString | GetFullChartInfo (ChartBase *pc, int dbIndex, int *char_width, int *line_count) |
int | FinddbIndex (wxString PathToFind) |
wxString | GetDBChartFileName (int dbIndex) |
void | ApplyGroupArray (ChartGroupArray *pGroupArray) |
bool | IsChartAvailable (int dbIndex) |
std::vector< float > | GetReducedPlyPoints (int dbIndex) |
std::vector< float > | GetReducedAuxPlyPoints (int dbIndex, int iTable) |
bool | IsBusy () |
Protected Member Functions | |
virtual ChartBase * | GetChart (const wxChar *theFilePath, ChartClassDescriptor &chart_desc) const |
![]() | |
int | AddChartDirectory (const wxString &theDir, bool bshow_prog) |
void | SetValid (bool valid) |
ChartTableEntry * | CreateChartTableEntry (const wxString &filePath, wxString &utf8Path, ChartClassDescriptor &chart_desc) |
Additional Inherited Members | |
![]() | |
ChartTable | active_chartTable |
std::map< wxString, int > | active_chartTable_pathindex |
![]() | |
std::vector< ChartClassDescriptor > | m_ChartClassDescriptorArray |
ArrayOfCDI | m_dir_array |
bool | m_b_busy |
Manages the chart database and provides access to chart data.
Responsible for loading, saving, and managing the chart database. Provides methods for building chart stacks, opening charts, and managing the chart cache.
ChartDB::ChartDB | ( | ) |
Definition at line 196 of file chartdb.cpp.
|
virtual |
Definition at line 222 of file chartdb.cpp.
void ChartDB::ApplyColorSchemeToCachedCharts | ( | ColorScheme | cs | ) |
Definition at line 1467 of file chartdb.cpp.
int ChartDB::BuildChartStack | ( | ChartStack * | cstk, |
float | lat, | ||
float | lon, | ||
int | db_add, | ||
int | groupIndex | ||
) |
Definition at line 453 of file chartdb.cpp.
int ChartDB::BuildChartStack | ( | ChartStack * | cstk, |
float | lat, | ||
float | lon, | ||
int | groupIndex | ||
) |
Definition at line 462 of file chartdb.cpp.
bool ChartDB::CheckAnyCanvasExclusiveTileGroup | ( | ) |
Definition at line 1805 of file chartdb.cpp.
bool ChartDB::CheckExclusiveTileGroup | ( | int | canvasIndex | ) |
Definition at line 1764 of file chartdb.cpp.
void ChartDB::ClearCacheInUseFlags | ( | void | ) |
Definition at line 306 of file chartdb.cpp.
bool ChartDB::CopyStack | ( | ChartStack * | pa, |
ChartStack * | pb | ||
) |
Definition at line 757 of file chartdb.cpp.
bool ChartDB::DeleteCacheChart | ( | ChartBase * | pChart | ) |
Definition at line 1436 of file chartdb.cpp.
bool ChartDB::EqualStacks | ( | ChartStack * | pa, |
ChartStack * | pb | ||
) |
Definition at line 742 of file chartdb.cpp.
|
protectedvirtual |
Reimplemented from ChartDatabase.
Definition at line 392 of file chartdb.cpp.
std::vector< int > ChartDB::GetCSArray | ( | ChartStack * | ps | ) |
Definition at line 863 of file chartdb.cpp.
ChartFamilyEnum ChartDB::GetCSChartFamily | ( | ChartStack * | ps, |
int | stackindex | ||
) |
Definition at line 835 of file chartdb.cpp.
ChartTypeEnum ChartDB::GetCSChartType | ( | ChartStack * | ps, |
int | stackindex | ||
) |
Definition at line 826 of file chartdb.cpp.
int ChartDB::GetCSPlyPoint | ( | ChartStack * | ps, |
int | stackindex, | ||
int | plyindex, | ||
float * | lat, | ||
float * | lon | ||
) |
Definition at line 779 of file chartdb.cpp.
wxString ChartDB::GetFullPath | ( | ChartStack * | ps, |
int | stackindex | ||
) |
Definition at line 770 of file chartdb.cpp.
int ChartDB::GetStackChartScale | ( | ChartStack * | ps, |
int | stackindex, | ||
char * | buf, | ||
int | nbuf | ||
) |
Definition at line 799 of file chartdb.cpp.
int ChartDB::GetStackEntry | ( | ChartStack * | ps, |
wxString | fp | ||
) |
Definition at line 814 of file chartdb.cpp.
wxXmlDocument ChartDB::GetXMLDescription | ( | int | dbIndex, |
bool | b_getGeom | ||
) |
Definition at line 1534 of file chartdb.cpp.
bool ChartDB::IsChartDirectoryExcluded | ( | const std::string & | chart_file | ) |
Definition at line 443 of file chartdb.cpp.
bool ChartDB::IsChartInCache | ( | int | dbindex | ) |
Definition at line 876 of file chartdb.cpp.
bool ChartDB::IsChartInCache | ( | wxString | path | ) |
Definition at line 896 of file chartdb.cpp.
bool ChartDB::IsChartInGroup | ( | const int | db_index, |
const int | group | ||
) |
Definition at line 625 of file chartdb.cpp.
bool ChartDB::IsChartLocked | ( | int | index | ) |
Definition at line 915 of file chartdb.cpp.
bool ChartDB::IsENCInGroup | ( | const int | group | ) |
Definition at line 643 of file chartdb.cpp.
bool ChartDB::IsNonMBTileInGroup | ( | const int | group | ) |
Definition at line 674 of file chartdb.cpp.
bool ChartDB::LoadBinary | ( | const wxString & | filename, |
ArrayOfCDI & | dir_array_check | ||
) |
Load the chart database from a binary file.
filename | Name of the file to load |
dir_array_check | Array to store directory information |
Definition at line 229 of file chartdb.cpp.
bool ChartDB::LockCacheChart | ( | int | index | ) |
Definition at line 932 of file chartdb.cpp.
ChartBase * ChartDB::OpenChartFromDB | ( | int | index, |
ChartInitFlag | init_flag | ||
) |
Definition at line 980 of file chartdb.cpp.
ChartBase * ChartDB::OpenChartFromDB | ( | wxString | chart_path, |
ChartInitFlag | init_flag | ||
) |
Definition at line 984 of file chartdb.cpp.
ChartBase * ChartDB::OpenChartFromDBAndLock | ( | int | index, |
ChartInitFlag | init_flag, | ||
bool | lock = true |
||
) |
Definition at line 995 of file chartdb.cpp.
ChartBase * ChartDB::OpenChartFromDBAndLock | ( | wxString | chart_path, |
ChartInitFlag | init_flag | ||
) |
Definition at line 1003 of file chartdb.cpp.
ChartBase * ChartDB::OpenChartFromStack | ( | ChartStack * | pStack, |
int | StackEntry, | ||
ChartInitFlag | iflag = FULL_INIT |
||
) |
Definition at line 990 of file chartdb.cpp.
ChartBase * ChartDB::OpenStackChartConditional | ( | ChartStack * | ps, |
int | start_index, | ||
bool | bLargest, | ||
ChartTypeEnum | New_Type, | ||
ChartFamilyEnum | New_Family_Fallback | ||
) |
Definition at line 1490 of file chartdb.cpp.
void ChartDB::PurgeCache | ( | ) |
Definition at line 266 of file chartdb.cpp.
void ChartDB::PurgeCachePlugins | ( | ) |
Definition at line 281 of file chartdb.cpp.
void ChartDB::PurgeCacheUnusedCharts | ( | double | factor | ) |
Definition at line 320 of file chartdb.cpp.
|
inline |
void ChartDB::UnLockAllCacheCharts | ( | ) |
Definition at line 965 of file chartdb.cpp.
void ChartDB::UnLockCacheChart | ( | int | index | ) |
Definition at line 950 of file chartdb.cpp.