• Skip to content
  • Skip to link menu
KDE API Reference
  • KDE API Reference
  • kdeedu API Reference
  • KDE Home
  • Contact Us
 

marble

  • sources
  • kde-4.12
  • kdeedu
  • marble
  • tools
  • osm-sisyphus
tools/osm-sisyphus/main.cpp
Go to the documentation of this file.
1 //
2 // This file is part of the Marble Virtual Globe.
3 //
4 // This program is free software licensed under the GNU LGPL. You can
5 // find a copy of this license in LICENSE.txt in the top directory of
6 // the source code.
7 //
8 // Copyright 2011 Dennis Nienhüser <earthwings@gentoo.org>
9 //
10 
11 #include "jobmanager.h"
12 #include "logger.h"
13 #include "upload.h"
14 
15 #include <QCoreApplication>
16 #include <QDebug>
17 
18 void usage(const QString &app)
19 {
20  qDebug() << "Usage: " << app << "[options] regions.xml log.sqlite [resume-id]";
21  qDebug() << "\nOptions:";
22  qDebug() << "\t-h, --help................. Show this help";
23  qDebug() << "\t-cd, --cache-data.......... Do not delete downloaded .osm.pbf and converted .tar.gz files after a successful conversion and upload";
24  qDebug() << "\t-nu, --no-uploads.......... Do not upload converted files to files.kde.org";
25 }
26 
27 int main(int argc, char *argv[])
28 {
29  QCoreApplication app(argc, argv);
30 
31  QStringList arguments;
32  bool cacheData(false);
33  bool uploadFiles(true);
34  for (int i=1; i<argc; ++i) {
35  QString const arg = argv[i];
36  if (arg == "-h" || arg == "--help") {
37  usage(argv[0]);
38  return 0;
39  } else if (arg == "-cd" || arg == "--cache-data") {
40  cacheData = true;
41  } else if (arg == "-nu" || arg == "--no-uploads") {
42  uploadFiles = false;
43  } else {
44  arguments << arg;
45  }
46  }
47 
48  if (arguments.size() < 2) {
49  usage(argv[0]);
50  return 1;
51  }
52 
53  Logger::instance().setFilename(arguments.at(1));
54 
55  QFileInfo tempDir = QFileInfo(QDir::tempPath(), "osm-sisyphus");
56  JobParameters parameters;
57  parameters.setBase(QDir(tempDir.absoluteFilePath()));
58  parameters.setCacheData(cacheData);
59 
60  Upload::instance().setJobParameters(parameters);
61  Upload::instance().setUploadFiles(uploadFiles);
62 
63  JobManager manager;
64  manager.setRegionsFile(arguments.at(0));
65  manager.setJobParameters(parameters);
66  if (arguments.size() == 3) {
67  manager.setResumeId(arguments.at(2));
68  }
69  manager.run();
70 
71  return app.exec();
72 }
JobManager::setRegionsFile
void setRegionsFile(const QString &filename)
Definition: jobmanager.cpp:43
upload.h
jobmanager.h
JobManager::setJobParameters
void setJobParameters(const JobParameters &parameters)
Definition: jobmanager.cpp:108
JobManager::setResumeId
void setResumeId(const QString &resumeId)
Definition: jobmanager.cpp:103
JobManager::run
void run()
Definition: jobmanager.cpp:38
Upload::setJobParameters
void setJobParameters(const JobParameters &parameters)
Definition: upload.cpp:282
Upload::setUploadFiles
void setUploadFiles(bool arg)
Definition: upload.cpp:287
JobParameters
Definition: jobparameters.h:16
JobParameters::setCacheData
void setCacheData(bool cache)
Definition: jobparameters.cpp:33
QCoreApplication
Upload::instance
static Upload & instance()
Definition: upload.cpp:271
JobManager
Definition: jobmanager.h:27
logger.h
Logger::instance
static Logger & instance()
Definition: logger.cpp:53
usage
void usage(const QString &app)
Definition: tools/osm-sisyphus/main.cpp:18
Logger::setFilename
void setFilename(const QString &filename)
Definition: logger.cpp:59
JobParameters::setBase
void setBase(const QDir &dir)
Definition: jobparameters.cpp:23
main
int main(int argc, char *argv[])
Definition: tools/osm-sisyphus/main.cpp:27
This file is part of the KDE documentation.
Documentation copyright © 1996-2014 The KDE developers.
Generated on Tue Oct 14 2014 22:38:51 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

marble

Skip menu "marble"
  • Main Page
  • Namespace List
  • Namespace Members
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • File Members
  • Related Pages

kdeedu API Reference

Skip menu "kdeedu API Reference"
  • Analitza
  •     lib
  • kalgebra
  • kalzium
  •   libscience
  • kanagram
  • kig
  •   lib
  • klettres
  • kstars
  • libkdeedu
  •   keduvocdocument
  • marble
  • parley
  • rocs
  •   App
  •   RocsCore
  •   VisualEditor
  •   stepcore

Search



Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal