File: LotWUsers.hpp

package info (click to toggle)
wsjtx 2.6.1%2Brepack-1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 69,664 kB
  • sloc: cpp: 86,977; f90: 42,417; python: 27,241; ansic: 12,510; fortran: 2,382; makefile: 197; sh: 134
file content (41 lines) | stat: -rwxr-xr-x 960 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#ifndef LOTW_USERS_HPP_
#define LOTW_USERS_HPP_

#include <boost/core/noncopyable.hpp>
#include <QObject>
#include "pimpl_h.hpp"

class QString;
class QDate;
class QNetworkAccessManager;

//
// LotWUsers - Lookup Logbook of the World users
//
class LotWUsers final
  : public QObject
{
  Q_OBJECT

public:
  explicit LotWUsers (QNetworkAccessManager *, QObject * parent = 0);
  ~LotWUsers ();

  void set_local_file_path (QString const&);

  Q_SLOT void load (QString const& url, bool fetch = true, bool force_download = false);
  Q_SLOT void set_age_constraint (qint64 uploaded_since_days);

  // returns true if the specified call sign 'call' has uploaded their
  // log to LotW in the last 'age_constraint_days' days
  bool user (QString const& call) const;

  Q_SIGNAL void LotW_users_error (QString const& reason) const;
  Q_SIGNAL void load_finished () const;

private:
  class impl;
  pimpl<impl> m_;
};

#endif