File indexing completed on 2024-05-05 03:50:35
0001 // SPDX-License-Identifier: LGPL-2.1-or-later 0002 // 0003 // SPDX-FileCopyrightText: 2009 Eckhart Wörner <ewoerner@kde.org> 0004 // 0005 0006 #ifndef GEOCUTE_MASTERCLIENT_H 0007 #define GEOCUTE_MASTERCLIENT_H 0008 0009 #include <QObject> 0010 0011 #include "AccuracyLevel.h" 0012 0013 0014 0015 namespace GeoCute 0016 { 0017 0018 enum ResourceFlags { 0019 ResourceNone = 0, 0020 ResourceNetwork = 1 << 0, 0021 ResourceCell = 1 << 1, 0022 ResourceGPS = 1 << 2, 0023 ResourceAll = (1 << 10) - 1 0024 }; 0025 0026 enum SignallingFlags { 0027 SignallingNotRequired, 0028 SignallingRequired 0029 }; 0030 0031 class PositionProvider; 0032 0033 class MasterClient : public QObject 0034 { 0035 Q_OBJECT 0036 0037 public: 0038 explicit MasterClient(QObject* parent = 0); 0039 ~MasterClient(); 0040 PositionProvider* positionProvider(); 0041 void setRequirements(AccuracyLevel, int min_time, SignallingFlags, 0042 ResourceFlags); 0043 0044 private: 0045 class Private; 0046 Private* const d; 0047 }; 0048 0049 } 0050 0051 0052 0053 #endif