1#ifndef ANYTONE_SATELLITECONFIG_HH
2#define ANYTONE_SATELLITECONFIG_HH
4#include "satelliteconfig.hh"
8#include "orbitalelementsdatabase.hh"
28 None = 0, CTCSS = 1, DCS = 2
39 static constexpr unsigned int size() {
return 0x200; }
44 void setName(
const QString &name);
81 static constexpr unsigned int name() {
return 8; }
88 static constexpr unsigned int name() {
return 0x0000; }
89 static constexpr unsigned int epochYear() {
return 0x0008; }
90 static constexpr unsigned int epochDay() {
return 0x000a; }
91 static constexpr unsigned int meanMotionDerivative() {
return 0x0017; }
92 static constexpr unsigned int inclination() {
return 0x0021; }
93 static constexpr unsigned int ascension() {
return 0x002a; }
94 static constexpr unsigned int eccentricity() {
return 0x0033; }
95 static constexpr unsigned int perigee() {
return 0x003b; }
96 static constexpr unsigned int anomaly() {
return 0x0044; }
97 static constexpr unsigned int meanMotion() {
return 0x004d; }
98 static constexpr unsigned int revolution() {
return 0x0058; }
99 static constexpr unsigned int downlinkFrequency() {
return 0x0060; }
100 static constexpr unsigned int uplinkFrequency() {
return 0x0064; }
101 static constexpr unsigned int uplinkToneType() {
return 0x0068; }
102 static constexpr unsigned int downlinkToneType() {
return 0x0069; }
103 static constexpr unsigned int uplinkCTCSS() {
return 0x006a; }
104 static constexpr unsigned int downlinkCTCSS() {
return 0x006b; }
105 static constexpr unsigned int uplinkDCS() {
return 0x006c; }
106 static constexpr unsigned int downlinkDCS() {
return 0x006e; }
121 static constexpr unsigned int satellites() {
return 200; }
128 static constexpr unsigned int satellites() {
return 0x2ec0000; }
129 static constexpr unsigned int betweenSatellites() {
return SatelliteElement::size(); }
Definition anytone_satelliteconfig.hh:24
void clear()
Abstract method to reset the element within the codeplug.
Definition anytone_satelliteconfig.cc:23
void setAnomaly(double ma)
Sets the mean anomaly.
Definition anytone_satelliteconfig.cc:100
bool encode(const Satellite &sat, const ErrorStack &err=ErrorStack())
Encodes the given satellite.
Definition anytone_satelliteconfig.cc:171
void setUplink(const Frequency &f)
Sets the uplink frequency.
Definition anytone_satelliteconfig.cc:150
void setEccentricity(double ecc)
Sets the eccentricity.
Definition anytone_satelliteconfig.cc:82
void setInclination(double incl)
Sets the inclination.
Definition anytone_satelliteconfig.cc:58
void setName(const QString &name)
Sets the satellite name.
Definition anytone_satelliteconfig.cc:29
void setUplinkTone(const SelectiveCall &tone)
Sets the uplink sub tone.
Definition anytone_satelliteconfig.cc:155
void setMeanMotionDerivative(double dmm)
Sets the derivative of the mean motion.
Definition anytone_satelliteconfig.cc:50
void setMeanMotion(double mm)
Sets the mean motion.
Definition anytone_satelliteconfig.cc:112
void setDownlinkTone(const SelectiveCall &tone)
Sets the downlink sub tone.
Definition anytone_satelliteconfig.cc:135
void setDownlink(const Frequency &f)
Sets the downlink frequency.
Definition anytone_satelliteconfig.cc:130
void setEpoch(const OrbitalElement::Epoch &epoch)
Sets the epoch of the orbital element.
Definition anytone_satelliteconfig.cc:34
ToneType
Internal encoding of sub tone type.
Definition anytone_satelliteconfig.hh:27
void setPerigee(double peri)
Sets the argument of perigee.
Definition anytone_satelliteconfig.cc:88
void setRevolution(unsigned int num)
Sets the revolution number.
Definition anytone_satelliteconfig.cc:124
SatelliteElement(uint8_t *ptr, size_t size)
Hidden constructor.
Definition anytone_satelliteconfig.cc:10
void setAscension(double asc)
Sets the right ascension of the ascending node.
Definition anytone_satelliteconfig.cc:70
bool encode(SatelliteDatabase *db, const ErrorStack &err=ErrorStack())
Encodes the given satellite db into the device specific satellite configuration.
Definition anytone_satelliteconfig.cc:212
AnytoneSatelliteConfig(QObject *parent=nullptr)
Default constructor.
Definition anytone_satelliteconfig.cc:198
Represents the abstract base class of all codeplug elements.
Definition codeplug.hh:65
uint32_t size() const
Returns the total size of the DFU file.
Definition dfufile.cc:52
Implements a stack of error messages to provide a pretty formatted error traceback.
Definition errorstack.hh:43
SatelliteConfig(QObject *parent=nullptr)
Hidden constructor.
Definition satelliteconfig.cc:3
A table holding all known satellites.
Definition satellitedatabase.hh:108
Extends the OrbitalElement to include transponder information for a satellite.
Definition satellitedatabase.hh:18
Some limits for the satellite config.
Definition anytone_satelliteconfig.hh:120
Some internal offsets.
Definition anytone_satelliteconfig.hh:126
Some limits for the satellite.
Definition anytone_satelliteconfig.hh:79
static constexpr unsigned int name()
Maximum size of satellite name.
Definition anytone_satelliteconfig.hh:81
Some internal offsets.
Definition anytone_satelliteconfig.hh:86
Helper type to encode frequencies without any rounding error.
Definition frequency.hh:107
Represents a Julien day epoch since a specified year.
Definition orbitalelementsdatabase.hh:18
Encodes a selective call.
Definition signaling.hh:13