libosmscout 1.1.1
Loading...
Searching...
No Matches
ImportModule.h
Go to the documentation of this file.
1#ifndef OSMSCOUT_IMPORTMODULE_H
2#define OSMSCOUT_IMPORTMODULE_H
3
4/*
5 This source is part of the libosmscout library
6 Copyright (C) 2009 Tim Teulings
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
26
27namespace osmscout {
28
29class OSMSCOUT_IMPORT_API ImportModuleDescription CLASS_FINAL
30{
31private:
32 std::string name;
33 std::string description;
34 std::list<std::string> providedFiles;
35 std::list<std::string> providedOptionalFiles;
36 std::list<std::string> providedDebuggingFiles;
37 std::list<std::string> providedTemporaryFiles;
38 std::list<std::string> providedAnalysisFiles;
39 std::list<std::string> requiredFiles;
40
41public:
42 void SetName(const std::string& name);
43 void SetDescription(const std::string& description);
44
45 void AddProvidedFile(const std::string& providedFile);
46 void AddProvidedOptionalFile(const std::string& providedFile);
47 void AddProvidedDebuggingFile(const std::string& providedFile);
48 void AddProvidedTemporaryFile(const std::string& providedFile);
49 void AddProvidedAnalysisFile(const std::string& providedFile);
50 void AddRequiredFile(const std::string& requiredFile);
51
52 inline std::string GetName() const
53 {
54 return name;
55 }
56
57 inline std::string GetDescription() const
58 {
59 return description;
60 }
61
62 inline std::list<std::string> GetProvidedFiles() const
63 {
64 return providedFiles;
65 }
66
67 inline std::list<std::string> GetProvidedOptionalFiles() const
68 {
69 return providedOptionalFiles;
70 }
71
72 inline std::list<std::string> GetProvidedDebuggingFiles() const
73 {
74 return providedDebuggingFiles;
75 }
76
77 inline std::list<std::string> GetProvidedTemporaryFiles() const
78 {
79 return providedTemporaryFiles;
80 }
81
82 inline std::list<std::string> GetProvidedAnalysisFiles() const
83 {
84 return providedAnalysisFiles;
85 }
86
87 inline std::list<std::string> GetRequiredFiles() const
88 {
89 return requiredFiles;
90 }
91};
92
101{
102public:
103 virtual ~ImportModule() = default;
104
105 virtual void GetDescription(const ImportParameter& parameter,
106 ImportModuleDescription& description) const;
107
118 virtual bool Import(const TypeConfigRef& typeConfig,
119 const ImportParameter& parameter,
120 Progress& progress) = 0;
121};
122
123using ImportModuleRef = std::shared_ptr<ImportModule>;
124
125}
126#endif //OSMSCOUT_IMPORTMODULE_H
#define OSMSCOUT_IMPORT_API
Definition ImportImportExport.h:45
Definition Area.h:88
void AddProvidedDebuggingFile(const std::string &providedFile)
void AddRequiredFile(const std::string &requiredFile)
void AddProvidedOptionalFile(const std::string &providedFile)
void AddProvidedAnalysisFile(const std::string &providedFile)
std::string GetName() const
Definition ImportModule.h:52
std::list< std::string > GetProvidedOptionalFiles() const
Definition ImportModule.h:67
std::list< std::string > GetProvidedTemporaryFiles() const
Definition ImportModule.h:77
std::list< std::string > GetProvidedDebuggingFiles() const
Definition ImportModule.h:72
std::list< std::string > GetProvidedAnalysisFiles() const
Definition ImportModule.h:82
void AddProvidedFile(const std::string &providedFile)
void SetName(const std::string &name)
std::string GetDescription() const
Definition ImportModule.h:57
std::list< std::string > GetRequiredFiles() const
Definition ImportModule.h:87
void AddProvidedTemporaryFile(const std::string &providedFile)
void SetDescription(const std::string &description)
std::list< std::string > GetProvidedFiles() const
Definition ImportModule.h:62
Definition ImportModule.h:101
virtual ~ImportModule()=default
virtual bool Import(const TypeConfigRef &typeConfig, const ImportParameter &parameter, Progress &progress)=0
virtual void GetDescription(const ImportParameter &parameter, ImportModuleDescription &description) const
Definition Progress.h:34
std::shared_ptr< TypeConfig > TypeConfigRef
Definition TypeConfig.h:1396
Definition Area.h:39
std::shared_ptr< ImportModule > ImportModuleRef
Definition ImportModule.h:123