destruct static vector and unorderd_map when last RasterContainer is destructed.
This commit is contained in:
parent
f9ee74d78e
commit
a587b14006
@ -126,7 +126,14 @@ class RasterSource
|
||||
class RasterContainer
|
||||
{
|
||||
public:
|
||||
RasterContainer() = default;
|
||||
RasterContainer() { ++count; }
|
||||
~RasterContainer() {
|
||||
--count;
|
||||
if (0 == count) {
|
||||
LoadedSources.clear();
|
||||
LoadedSourcePaths.clear();
|
||||
}
|
||||
}
|
||||
|
||||
int LoadRasterSource(const std::string &path_string,
|
||||
double xmin,
|
||||
@ -143,6 +150,7 @@ class RasterContainer
|
||||
private:
|
||||
static std::vector<RasterSource> LoadedSources;
|
||||
static std::unordered_map<std::string, int> LoadedSourcePaths;
|
||||
static int count;
|
||||
};
|
||||
}
|
||||
}
|
||||
|
@ -81,6 +81,7 @@ RasterDatum RasterSource::GetRasterInterpolate(const int lon, const int lat) con
|
||||
// static member of Raster Container
|
||||
std::vector<RasterSource> RasterContainer::LoadedSources;
|
||||
std::unordered_map<std::string, int> RasterContainer::LoadedSourcePaths;
|
||||
int RasterContainer::count = 0;
|
||||
|
||||
// Load raster source into memory
|
||||
int RasterContainer::LoadRasterSource(const std::string &path_string,
|
||||
|
Loading…
Reference in New Issue
Block a user