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

marble

  • sources
  • kde-4.14
  • kdeedu
  • marble
  • src
  • plugins
  • positionprovider
  • geoclue
  • GeoCute
MasterClient.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 2009 Eckhart Wörner <ewoerner@kde.org>
9 //
10 
11 #include "MasterClient_p.h"
12 
13 #include <QString>
14 #include <QDBusMessage>
15 #include <QDBusReply>
16 #include <QDBusObjectPath>
17 
18 #include "PositionProvider.h"
19 
20 
21 
22 using namespace GeoCute;
23 
24 static QString createClientPath()
25 {
26  SimpleDBusInterface masterInterface(serviceName, masterPathName,
27  masterInterfaceName);
28  QDBusReply<QDBusObjectPath> reply = masterInterface.call("Create");
29  if (reply.isValid())
30  return reply.value().path();
31  else
32  return QString();
33 }
34 
35 MasterClient::Private::Private()
36  : interface(serviceName, createClientPath(), interfaceName)
37 {
38 }
39 
40 MasterClient::MasterClient(QObject* parent)
41  : QObject(parent), d(new Private)
42 {
43 }
44 
45 MasterClient::~MasterClient()
46 {
47  delete d;
48 }
49 
50 void MasterClient::setRequirements(AccuracyLevel accuracy, int min_time,
51  SignallingFlags signalling, ResourceFlags resources)
52 {
53  if (!d->interface.path().isEmpty()) {
54  d->interface.call("SetRequirements", accuracy, min_time,
55  signalling == SignallingRequired, resources);
56  }
57 }
58 
59 PositionProvider* MasterClient::positionProvider()
60 {
61  if (!d->interface.path().isEmpty()) {
62  d->interface.call("PositionStart");
63  return new PositionProvider(d->interface.service(), d->interface.path());
64  } else
65  return 0;
66 }
67 
68 
69 
70 #include "MasterClient.moc"
interfaceName
static const QString interfaceName
Definition: MasterClient_p.h:23
GeoCute::PositionProvider
Definition: PositionProvider.h:26
GeoCute::AccuracyLevel
AccuracyLevel
Definition: AccuracyLevel.h:19
QDBusReply
GeoCute::SimpleDBusInterface
Definition: SimpleDBusInterface.h:27
GeoCute::SimpleDBusInterface::path
QString path() const
Definition: SimpleDBusInterface.cpp:81
GeoCute::MasterClient::positionProvider
PositionProvider * positionProvider()
Definition: MasterClient.cpp:59
QDBusReply::isValid
bool isValid() const
GeoCute::SignallingRequired
Definition: MasterClient.h:33
GeoCute::MasterClient::setRequirements
void setRequirements(AccuracyLevel, int min_time, SignallingFlags, ResourceFlags)
Definition: MasterClient.cpp:50
serviceName
static const QString serviceName
Definition: MasterClient_p.h:22
GeoCute::MasterClient::MasterClient
MasterClient(QObject *parent=0)
Definition: MasterClient.cpp:40
QObject
QDBusReply::value
Type value() const
QString::isEmpty
bool isEmpty() const
GeoCute::MasterClient::Private::Private
Private()
Definition: MasterClient.cpp:35
masterInterfaceName
static const QString masterInterfaceName
Definition: MasterClient_p.h:24
GeoCute::MasterClient::Private::interface
SimpleDBusInterface interface
Definition: MasterClient_p.h:34
GeoCute::SignallingFlags
SignallingFlags
Definition: MasterClient.h:31
GeoCute::MasterClient::Private
Definition: MasterClient_p.h:29
GeoCute::MasterClient::~MasterClient
~MasterClient()
Definition: MasterClient.cpp:45
QString
GeoCute::ResourceFlags
ResourceFlags
Definition: MasterClient.h:23
masterPathName
static const QString masterPathName
Definition: MasterClient_p.h:25
MasterClient_p.h
createClientPath
static QString createClientPath()
Definition: MasterClient.cpp:24
GeoCute::SimpleDBusInterface::call
QDBusMessage call(const QString &method, const QVariant &arg1=QVariant(), const QVariant &arg2=QVariant(), const QVariant &arg3=QVariant(), const QVariant &arg4=QVariant(), const QVariant &arg5=QVariant(), const QVariant &arg6=QVariant(), const QVariant &arg7=QVariant(), const QVariant &arg8=QVariant())
Definition: SimpleDBusInterface.cpp:32
GeoCute::SimpleDBusInterface::service
QString service() const
Definition: SimpleDBusInterface.cpp:86
PositionProvider.h
QObject::parent
QObject * parent() const
This file is part of the KDE documentation.
Documentation copyright © 1996-2020 The KDE developers.
Generated on Mon Jun 22 2020 13:13:40 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
  • 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