4#include "configreference.hh"
5#include <QAbstractTableModel>
6#include "anytone_extension.hh"
7#include "opengd77_extension.hh"
20 Q_CLASSINFO(
"IdPrefix",
"aprs")
75 Q_INVOKABLE explicit
GPSSystem(QObject *parent=
nullptr);
88 QObject *parent =
nullptr);
93 bool hasContact() const;
107 bool hasRevertChannel() const;
113 void resetRevertChannel();
140 Q_PROPERTY(QString destination READ destination WRITE setDestination SCRIPTABLE false)
142 Q_PROPERTY(
unsigned int destSSID READ destSSID WRITE setDestSSID SCRIPTABLE false)
144 Q_PROPERTY(QString source READ source WRITE setSource SCRIPTABLE false)
146 Q_PROPERTY(
unsigned int srcSSID READ srcSSID WRITE setSrcSSID SCRIPTABLE false)
148 Q_PROPERTY(QString path READ path WRITE setPath SCRIPTABLE false)
151 Q_PROPERTY(
Icon icon READ icon WRITE setIcon)
153 Q_PROPERTY(QString message READ message WRITE setMessage)
160 static const
unsigned PRIMARY_TABLE = (0<<8);
161 static const
unsigned SECONDARY_TABLE = (1<<8);
162 static const
unsigned TABLE_MASK = (3<<8);
163 static const
unsigned ICON_MASK = 0x7f;
167 PoliceStation = (PRIMARY_TABLE | 0), None, Digipeater, Phone, DXCluster, HFGateway, SmallPlane,
168 MobileSatelliteStation, WheelChair, Snowmobile, RedCross, BoyScout, Home, X, RedDot,
169 Circle0, Circle1, Circle2, Circle3, Circle4, Circle5, Circle6, Circle7, Circle8, Circle9,
170 Fire, Campground, Motorcycle, RailEngine, Car, FileServer, HCFuture, AidStation, BBS, Canoe,
171 Eyeball = (PRIMARY_TABLE | 36), Tractor, GridSquare, Hotel, TCPIP, School = (PRIMARY_TABLE | 42),
172 Logon, MacOS, NTSStation, Balloon, PoliceCar, TBD, RV, Shuttle, SSTV, Bus, ATV, WXService, Helo,
173 Yacht, Windows, Jogger, Triangle, PBBS, LargePlane, WXStation, DishAntenna, Ambulance, Bike,
174 ICP, FireStation, Horse, FireTruck, Glider, Hospital, IOTA, Jeep, SmallTruck, Laptop, MicE,
175 Node, EOC, Rover, Grid, Antenna, PowerBoat, TruckStop, TruckLarge, Van, Water, XAPRS, Yagi,
182 Q_INVOKABLE
explicit APRSSystem(QObject *parent=
nullptr);
199 const QString &src,
unsigned srcSSID,
const QString &path=
"", Icon icon=Icon::Jogger,
200 const QString &message=
"",
unsigned period=300, QObject *parent=
nullptr);
207 bool hasRevertChannel()
const;
211 void setRevertChannel(
FMChannel *revertChannel);
213 void resetRevertChannel();
221 const QString &destination()
const;
223 unsigned destSSID()
const;
225 void setDestination(
const QString &call,
unsigned ssid);
227 void setDestination(
const QString &call);
229 void setDestSSID(
unsigned ssid);
232 const QString &source()
const;
234 unsigned srcSSID()
const;
236 void setSource(
const QString &call,
unsigned ssid);
238 void setSource(
const QString &call);
240 void setSrcSSID(
unsigned ssid);
243 const QString &path()
const;
245 void setPath(
const QString &path);
250 void setIcon(
Icon icon);
253 const QString &message()
const;
255 void setMessage(
const QString &msg);
311 int add(
ConfigObject *obj,
int row=-1,
bool unique=
true);
314 int gpsCount()
const;
317 int indexOfGPSSys(
const GPSSystem *gps)
const;
323 int aprsCount()
const;
Parse context for config objects.
Definition configobject.hh:48
Base class for all configuration objects (channels, zones, contacts, etc).
Definition configobject.hh:40
virtual bool copy(const ConfigItem &other)
Copies the given item into this one.
Definition configobject.cc:140
virtual ConfigItem * clone() const =0
Clones this item.
virtual YAML::Node serialize(const Context &context, const ErrorStack &err=ErrorStack())
Recursively serializes the configuration to YAML nodes.
Definition configobject.cc:366
List class for config objects.
Definition configobject.hh:349
Base class of all labeled and named objects.
Definition configobject.hh:199
QString name
The name of the object.
Definition configobject.hh:203
The config class, representing the codeplug configuration.
Definition config.hh:70
Implements a reference to a DMR channel.
Definition configreference.hh:139
Extension to the DigitalChannel class to implement an DMR channel.
Definition channel.hh:354
Implements a stack of error messages to provide a pretty formatted error traceback.
Definition errorstack.hh:41
Implements a reference to a FM channel.
Definition configreference.hh:151
Extension to the AnalogChannel class to implement an analog FM channel.
Definition channel.hh:210
This class represents a GPS signalling system within the codeplug.
Definition gpssystem.hh:65
Base class of the positioning systems, that is APRS and DMR position reporting system.
Definition gpssystem.hh:18
bool link(const YAML::Node &node, const Context &ctx, const ErrorStack &err=ErrorStack())
Links the given object to the rest of the codeplug using the given context.
Definition gpssystem.cc:66
unsigned _period
Holds the update period in seconds.
Definition gpssystem.hh:58
bool populate(YAML::Node &node, const ConfigItem::Context &context, const ErrorStack &err=ErrorStack())
Recursively serializes the configuration to YAML nodes.
Definition gpssystem.cc:39
void onReferenceModified()
Gets called, whenever a reference is modified.
Definition gpssystem.cc:71
void setPeriod(unsigned period)
Sets the update period in seconds.
Definition gpssystem.cc:33
bool parse(const YAML::Node &node, Context &ctx, const ErrorStack &err=ErrorStack())
Parses the given YAML node, updates the given object and updates the given context (IDs).
Definition gpssystem.cc:46
unsigned period
The update period in seconds.
Definition gpssystem.hh:23
The list of positioning systems.
Definition gpssystem.hh:301