libosmscout
1.1.1
Toggle main menu visibility
Loading...
Searching...
No Matches
libosmscout-import
include
osmscoutimport
ImportProgress.h
Go to the documentation of this file.
1
#ifndef OSMSCOUT_IMPORTPROGRESS_H
2
#define OSMSCOUT_IMPORTPROGRESS_H
3
4
/*
5
This source is part of the libosmscout library
6
Copyright (C) 2020 Lukas Karas
7
8
This library is free software; you can redistribute it and/or
9
modify it under the terms of the GNU Lesser General Public
10
License as published by the Free Software Foundation; either
11
version 2.1 of the License, or (at your option) any later version.
12
13
This library is distributed in the hope that it will be useful,
14
but WITHOUT ANY WARRANTY; without even the implied warranty of
15
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16
Lesser General Public License for more details.
17
18
You should have received a copy of the GNU Lesser General Public
19
License along with this library; if not, write to the Free Software
20
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
21
*/
22
23
#include <
osmscoutimport/ImportImportExport.h
>
24
#include <
osmscoutimport/ImportModule.h
>
25
#include <
osmscoutimport/ImportParameter.h
>
26
27
#include <
osmscout/util/Progress.h
>
28
#include <
osmscout/util/MemoryMonitor.h
>
29
30
#include <map>
31
32
namespace
osmscout
{
33
34
class
OSMSCOUT_IMPORT_API
ImportProgress
:
public
ConsoleProgress
35
{
36
public
:
37
ImportProgress
() =
default
;
38
virtual
~ImportProgress
() =
default
;
39
40
virtual
void
StartImport
(
const
ImportParameter ¶m);
41
virtual
void
FinishedImport
();
42
43
void
DumpModuleDescription
(
const
ImportModuleDescription& description);
44
45
virtual
void
StartModule
(
size_t
currentStep,
const
ImportModuleDescription& moduleDescription);
46
virtual
void
FinishedModule
();
47
};
48
49
class
OSMSCOUT_IMPORT_API
StatImportProgress
:
public
ImportProgress
50
{
51
private
:
52
struct
ModuleStat {
53
ImportModuleDescription description;
54
std::chrono::steady_clock::duration duration;
55
double
vmUsage;
56
double
residentSet;
57
};
58
59
public
:
60
StatImportProgress
() =
default
;
61
virtual
~StatImportProgress
() =
default
;
62
63
void
StartImport
(
const
ImportParameter ¶m)
override
;
64
void
FinishedImport
()
override
;
65
66
void
StartModule
(
size_t
currentStep,
const
ImportModuleDescription& moduleDescription)
override
;
67
void
FinishedModule
()
override
;
68
69
bool
DumpDotStats
(
const
std::string &filename);
70
71
private
:
72
StopClock timer;
73
StopClock overAllTimer;
74
MemoryMonitor monitor;
75
double
maxVMUsage=0.0;
76
double
maxResidentSet=0.0;
77
ImportModuleDescription currentModule;
78
std::list<ModuleStat> moduleStats;
79
std::string destinationDirectory;
80
std::map<std::string, osmscout::FileOffset> fileSizes;
81
};
82
83
}
84
85
#endif
//OSMSCOUT_IMPORTPROGRESS_H
ImportImportExport.h
OSMSCOUT_IMPORT_API
#define OSMSCOUT_IMPORT_API
Definition
ImportImportExport.h:45
ImportModule.h
ImportParameter.h
MemoryMonitor.h
Progress.h
osmscout::ConsoleProgress::ConsoleProgress
ConsoleProgress()=default
osmscout::ImportProgress::FinishedModule
virtual void FinishedModule()
osmscout::ImportProgress::DumpModuleDescription
void DumpModuleDescription(const ImportModuleDescription &description)
osmscout::ImportProgress::ImportProgress
ImportProgress()=default
osmscout::ImportProgress::StartImport
virtual void StartImport(const ImportParameter ¶m)
osmscout::ImportProgress::FinishedImport
virtual void FinishedImport()
osmscout::ImportProgress::~ImportProgress
virtual ~ImportProgress()=default
osmscout::ImportProgress::StartModule
virtual void StartModule(size_t currentStep, const ImportModuleDescription &moduleDescription)
osmscout::StatImportProgress::StartImport
void StartImport(const ImportParameter ¶m) override
osmscout::StatImportProgress::~StatImportProgress
virtual ~StatImportProgress()=default
osmscout::StatImportProgress::FinishedImport
void FinishedImport() override
osmscout::StatImportProgress::DumpDotStats
bool DumpDotStats(const std::string &filename)
osmscout::StatImportProgress::StartModule
void StartModule(size_t currentStep, const ImportModuleDescription &moduleDescription) override
osmscout::StatImportProgress::FinishedModule
void FinishedModule() override
osmscout::StatImportProgress::StatImportProgress
StatImportProgress()=default
osmscout
Definition
Area.h:39
Generated by
1.17.0