WSJT-X/astro.h
Bill Somerville 588c037ae9 Do not make unneeded rig adjustments when Doppler tracking disabled
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@5595 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-06-12 00:26:44 +00:00

72 lines
1.9 KiB
C++

// -*- Mode: C++ -*-
#ifndef ASTRO_H
#define ASTRO_H
#include <QWidget>
#include "Radio.hpp"
class QSettings;
class Configuration;
namespace Ui {
class Astro;
}
class Astro final
: public QWidget
{
Q_OBJECT;
using Frequency = Radio::Frequency;
using FrequencyDelta = Radio::FrequencyDelta;
public:
explicit Astro(QSettings * settings, Configuration const *, QWidget * parent = nullptr);
~Astro ();
FrequencyDelta astroUpdate(QDateTime const& t, QString const& mygrid, QString const& hisgrid, Frequency frequency,
bool dx_is_self, bool bTx);
bool doppler_tracking () const;
Q_SIGNAL void doppler_tracking_toggled (bool);
protected:
void closeEvent (QCloseEvent *) override;
private slots:
void on_rbConstFreqOnMoon_clicked();
void on_rbFullTrack_clicked();
void on_rbNoDoppler_clicked();
void on_rb1Hz_clicked();
void on_rb10Hz_clicked();
void on_rb100Hz_clicked();
void on_cbTxAudioTrack_toggled(bool b);
void on_kHzSpinBox_valueChanged(int n);
void on_HzSpinBox_valueChanged(int n);
private:
void read_settings ();
void write_settings ();
QSettings * settings_;
Configuration const * configuration_;
Ui::Astro * ui_;
bool m_bRxAudioTrack;
bool m_bTxAudioTrack;
qint32 m_DopplerMethod;
qint32 m_kHz;
qint32 m_Hz;
qint32 m_stepHz;
};
extern "C" {
void astrosub_(int* nyear, int* month, int* nday, double* uth, double* freqMoon,
const char* mygrid, const char* hisgrid, double* azsun,
double* elsun, double* azmoon, double* elmoon, double* azmoondx,
double* elmoondx, int* ntsky, int* ndop, int* ndop00,
double* ramoon, double* decmoon, double* dgrd, double* poloffset,
double* xnr, double* techo, double* width1, double* width2,
bool* bTx, const char* AzElFileName, const char* jpleph,
int len1, int len2, int len3, int len4);
}
#endif // ASTRO_H