2013-07-31 07:29:42 -04:00
|
|
|
/*
|
|
|
|
* Reads cty.dat file
|
|
|
|
* Establishes a map between prefixes and their country names
|
|
|
|
* VK3ACF July 2013
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
|
|
#ifndef __COUNTRYDAT_H
|
|
|
|
#define __COUNTRYDAT_H
|
|
|
|
|
2013-08-08 19:51:53 -04:00
|
|
|
|
|
|
|
#include <QString>
|
|
|
|
#include <QStringList>
|
|
|
|
#include <QHash>
|
2013-07-31 07:29:42 -04:00
|
|
|
|
|
|
|
|
|
|
|
class CountryDat
|
|
|
|
{
|
2015-11-17 20:28:12 -05:00
|
|
|
public:
|
|
|
|
void init(const QString filename);
|
|
|
|
void load();
|
2017-08-29 22:27:57 -04:00
|
|
|
QString find(QString prefix) const; // return country name or ""
|
|
|
|
QStringList getCountryNames() const { return _countryNames; };
|
2013-07-31 07:29:42 -04:00
|
|
|
|
2015-11-17 20:28:12 -05:00
|
|
|
private:
|
2017-08-29 22:27:57 -04:00
|
|
|
QString _extractName(const QString line) const;
|
|
|
|
void _removeBrackets(QString &line, const QString a, const QString b) const;
|
|
|
|
QStringList _extractPrefix(QString &line, bool &more) const;
|
2017-10-01 17:44:07 -04:00
|
|
|
QString fixup (QString country, QString const& call) const;
|
2015-11-17 20:28:12 -05:00
|
|
|
|
|
|
|
QString _filename;
|
|
|
|
QStringList _countryNames;
|
|
|
|
QHash<QString, QString> _data;
|
2013-07-31 07:29:42 -04:00
|
|
|
};
|
|
|
|
|
|
|
|
#endif
|