Commit Graph

75 Commits

Author SHA1 Message Date
Joe Taylor
cddd34c351 Correct the undesired relocation of "OK/Cancel" buttons on Settings screen.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7234 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-10-26 13:17:57 +00:00
Joe Taylor
c067a21e9a Minor tweaks of the Pwr memory feature.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7230 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-10-25 20:35:34 +00:00
Joe Taylor
0441986ccc Add the W9MDB patch (very slightly modified) for band-by-band memory
of power settings for Transmit and Tune.  Also an interim update of
v1.7_Features.txt.



git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7229 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-10-25 20:24:09 +00:00
Joe Taylor
995fcf5359 1. Gray-out "Include averaging" and "Include Deep Search" if not in JT4 or JT65 mode.
2. Make the "MSK144 Realtime decode" checkbox invisible, in preparation for removing it entirely.
3. Always use RealTime decoding in MSK144 mode.  (For now, at least, click-to-decode works as before.)


git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7168 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-10-12 18:21:45 +00:00
Joe Taylor
7d8a896e6a Spinbox step size = 1 dB for S/N degradation.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7159 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-10-07 15:44:27 +00:00
Steven Franke
f210e47cd5 MSK144:
1. Clean up mskrtd to remove unused variables.
2. Re-instate Rx frequency spinbox in MSK144 mode to allow decoding of off-frequency signals with small FTol. Make changes needed to pass Rx Freq in to fortran routines. 
3. Enable realtime decoder for testing. Auto sequence does not yet work when realtime decoding is enabled. There are probably other bugs as well.




git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7109 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-09-25 00:16:29 +00:00
Joe Taylor
e1ef9b0ee0 Temporarily disable the cbRealTime checkbox.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7099 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-09-20 16:37:39 +00:00
Joe Taylor
109caa8912 Add real-time decode routine.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7098 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-09-20 16:35:00 +00:00
Joe Taylor
3b97ae7417 Implement real-time decoding in MSK144 mode, for testing.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7097 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-09-20 16:25:25 +00:00
Bill Somerville
9fb5422fbb Tidy up the settings advanced tab layout and remove unnecessary elements
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7074 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-09-11 01:09:40 +00:00
Joe Taylor
d3fd8fc523 Oops! Should always default to General tab.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7072 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-09-09 18:46:10 +00:00
Joe Taylor
15b20efdd7 Correfct typo; add tool tip.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7071 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-09-09 18:41:52 +00:00
Joe Taylor
73612cf6a5 Add MSK144 "Contest mode" option to skip Tx2 and Tx3. Needs checking!
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7070 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-09-09 18:37:00 +00:00
Joe Taylor
d3182f4161 Remove the "Robust sync" option.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7059 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-09-07 17:26:05 +00:00
Joe Taylor
ec281f93c4 Add a user control for Tx Delay, on the Advanced tab.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7058 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-09-06 23:18:48 +00:00
Joe Taylor
dc7826d5ea Startup messge box for Alpha Release. New sigma limit in detectmsk40. Minor tweaks to GUI.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6994 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-08-04 15:20:16 +00:00
Joe Taylor
289ba66119 1. Fix cause of "frozen UTC" bug in MSK144 mode. (Could there be more than one cause?)
2. Fix failure to remember Ftol setting in MSK144 mode.
3. Remove obsolete controls from Advanced tab.
4. Add control for "x 2 Tone spacing" on Advanced tab.


git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6981 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-08-01 19:46:19 +00:00
Bill Somerville
cca1a17607 First attempt at a time based Tx watchdog
The watchdog configuration is now a spin box of minutes with a special
first value of disabled. WSJT-X counts  down minutes on the minute, if
the countdown  reaches zero  any attempt to  transmit is  aborted. The
countdown is  reset by any mouse  press or key press  event inside the
main window or if the Tx message changes (auto sequencing).

The  status  bar  now  shows  the  Tx  watchdog  countdown  if  it  is
active. This  information is shown  to the  right of the  progress bar
text.

The warning message boxes triggered  within the GUI update routine now
no longer block the GUI updates.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6840 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-07-01 11:36:59 +00:00
Bill Somerville
f962faaeea Tidy up settings tab widget names
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6760 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-06-11 18:50:27 +00:00
Bill Somerville
bdd3d866c6 Fix outdated "Test CAT" button tool tip
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6659 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-04-28 23:43:40 +00:00
Bill Somerville
946ee56db2 Remove erroneously committed tool tip text
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6636 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-04-23 23:40:05 +00:00
Bill Somerville
2cfbb15b4f Rig control overhaul to implement generic Doppler shift tracking
The  concept of  a nominal  receive  and transmit  frequency has  been
introduced. This is  used as a base frequency  for Doppler correction,
frequency setting  and reporting. The  start up frequency is  now zero
which is  updated by the first  rig control status report.  This needs
more  work to  accommodate  calling frequency  plus working  frequency
operation as is used for random MS operation etc..

The  main  window  frequency  display  now  shows  the  transmit  dial
frequency while transmitting.

The mode changing logic sequence has been changed such that the rig is
correctly put  into and  taken out  of split mode  as required  by the
target mode.  This also  avoids the "other"  VFO having  its frequency
changed when  entering a mode that  does not use split  operating like
WSPR.

The main window  band combo box edit  may now be used to  input an kHz
offset  from the  current MHz  dial  frequency. This  is intended  for
setting  a sked  or working  frequency on  the VHF  and up  bands. For
example the working frequency for 23cms  might be set to 1296MHz and a
working  frequency of  1296.3MHz would  be selected  by selecting  the
23cms band  with the combo box  drop down list and  then entering 300k
into the band combo box edit widget.

When using JT4 modes a CTRL+Click on the waterfall adjusts the nominal
frequency such  that the frequency  clicked on  becomes the Tx  and Rx
frequency using  the fixed 1000Hz  DF that  JT4 modes use.   This will
probably be extended to all QSO modes when used in VHF & up mode. This
assumes that 1000Hz is an optimal DF  for both Tx and Rx and therefore
one  can "net"  to an  off frequency,  but visible  on the  waterfall,
caller with one click.

Improvements to OmniRig  rig control including use of  the serial port
control lines RTS or DTR, on the  CAT serial port used by OmniRig, for
PTT control.

Incrementing transaction sequence numbers added to messages to and from
the rig control  thread. This enables round trip status  to be tracked
and associated with a request. For  example a command that might cause
several  asynchronous  status  updates  can  now  be  tracked  in  the
originating thread such  that it is clear which updates  are caused by
executing the  request. This in turn  allows updates to be  held until
the request is complete i.e. the  state is consistent with the results
of the request.

Messages  to the  rig control  thread are  now posted  as a  new state
(Transceiver::TransceiverState) object. The  rig control thread tracks
requests and  actions any differences  between the prior  requests and
the new state.

The rig  control thread is now  stored on the  heap so that it  can be
closed down  and released as needed.  Along with this the  rig control
close  down  semantics  are  better defined  avoiding  some  potential
deadlock situations.

If the rig  is placed into split  mode it will be  reverted to simplex
mode when the rig connection is closed.

When  using direct  rig control  via Hamlib,  rigs that  have A/B  VFO
arrangements and  no method to query  the current VFO like  many Icoms
and  the Yaesu  FT-817/857/897(D)  series now  have smarted  frequency
updating requiring no  VFO changes when changing  the frequency.  This
is particularly  important when doing  Tx Doppler correction  to avoid
glitches.

The implementation  of emulated  split operating  mode ("Fake  It") is
simplified and improved.

A dummy  Hamlib transceiver for PTT  control on a separate  port is no
long instantiated if CAT or VOX PTT control is selected.

The resolution and  any rounding of the rig CAT  frequency set and get
commands is determined automatically  upon opening the rig connection.
This is needed to determine the  rate of frequency updates for Doppler
tracking. It also allows the rig to be more accurately controlled.

Frequency  calibration is  calculated separately  for the  receive and
transmit frequencies.

Whether  the  rig  modulation  mode  should be  controlled  is  now  a
constructor  argument rather  than  being passed  with individual  rig
control requests.

Doppler  shift  correction  is   considerably  enhanced  with  simpler
controls and much  better rig control.  A new mode  of tracking called
"receive only" is introduced for those with rigs that cannot be QSY:ed
via  CAT  when transmitting.   Such  rigs  have a  Doppler  correction
calculated  for the  middle of  the next  transmit period  just before
transmission starts. While  using Doppler tracking it  is now possible
to adjust the  sked frequency either using the new  kHz offset feature
of the main  window band combo box  or by directly tuning  the rig VFO
knob while holding down the CTRL key.

The astronomical data window that includes Doppler tracking control is
now opened  and closed using a  checkable menu item to  avoid it being
accidentally closed.

Debug  configuration  rig  control  diagnostic  messages  now  have  a
facility argument for clearer and more standardized trace messages.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6590 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-04-06 17:11:58 +00:00
Bill Somerville
d63230729b Fix some logic errors in CAT serial port control line settings
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6588 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-04-06 17:11:41 +00:00
Joe Taylor
c35c80a4ac Make "group_box6" invisible, for now.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6553 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-03-23 15:48:44 +00:00
Joe Taylor
dfb8dc7422 Add a "Single decode" checkbox.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6516 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-03-10 15:13:06 +00:00
Joe Taylor
a0318d3a0a Calibration of the "Degrade S/N of .wav file" requires knowledge of receiver bandwidth.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6491 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-02-23 19:37:38 +00:00
Bill Somerville
cf5f3916c7 Add facility to reset split mode when closing a rig connection
This option defaults to on but may be unchecked in settings.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6359 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2016-01-06 17:24:17 +00:00
Joe Taylor
4680817a93 Separate variables for the decoding parameters that had been packed into ndepth.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6170 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-11-24 15:05:45 +00:00
Bill Somerville
e25eecc828 Remove redundant layout manager
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6168 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-11-24 00:11:32 +00:00
Joe Taylor
621b1dde9f Default to General tab.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6166 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-11-23 18:09:23 +00:00
Joe Taylor
475118428e Add facility to degrade S/N of data from .wav files.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6165 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-11-23 18:05:36 +00:00
Bill Somerville
ad11444c63 Tidy up and make platform agnostic the Configuration->Advanced Tab
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6155 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-11-22 19:17:06 +00:00
Steven Franke
752c35f356 tweak layout in advanced settings tab
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6153 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-11-22 17:48:53 +00:00
Steven Franke
c9ad0c3038 Add robust sync checkbox to Advanced setup.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6151 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-11-22 15:27:14 +00:00
Bill Somerville
5e2fec1fe4 Squash some compiler warnings
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6145 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-11-21 20:23:39 +00:00
Bill Somerville
1a23757b26 Reintegrate merge from wsjtx_exp branch.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6122 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-11-18 01:28:12 +00:00
Joe Taylor
ebee6c6ba8 Default configuration tab should be "General".
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6070 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-11-10 18:55:18 +00:00
Joe Taylor
a7e2168532 Remove code associated with the unimplemented JT9W mode.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6061 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-11-09 17:19:48 +00:00
Bill Somerville
f4fdc0c492 Resolve a long standing rig control corner case
This change allows serial control lines  to be forced high or low (DTR
or RTS)  while using the  other (RTS, DTR) for  PTT on the  CAT serial
port. It  is only needed  for some very  obscure and rare  serial line
powered interfaces.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@5869 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-09-09 12:16:22 +00:00
Bill Somerville
00ede5e1b2 Add the modified UI file I forgot to save
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@5592 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-06-11 19:34:17 +00:00
Bill Somerville
0581a05147 Use newly won Qt UI skills to make the Configuration window portable
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@5591 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-06-11 19:26:25 +00:00
Joe Taylor
7137098869 Results of Echo mode to text window. (Not yet calibrated!)
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@5567 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-06-09 19:04:21 +00:00
Joe Taylor
d69d3b4ca0 User-configurable directory for file azel.dat.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@5566 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-06-09 17:39:59 +00:00
Bill Somerville
f200506571 Add mode dependent working frequencies
Working frequencies are mode dependent  and a reset to defaults button
has been added.

Also re-factored much of the model  and item delegate code to simplify
several  of the  model  implementations. Introduced  a single  routine
called from main to register the custom types with Qt.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@5453 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-05-28 23:22:17 +00:00
Bill Somerville
b8ee4a604b Widened ranges of rig frequency calibration constants
+/- 99999.99 Hz intercept error
+/- 999.9999 ppm slope error

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@5397 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-05-19 18:05:53 +00:00
Bill Somerville
0504d2af92 Rig frequency calibration
The   settings   are  a   linear   calibration   correction  for   the
rig. Calibration constants are supplied as an intercept error in Hertz
and a slope error in parts per million.

The correction is  applied only to the final frequencies  going to and
from  the radio.   This means  that  any transverter  offsets are  not
corrected. This is  appropriate as each transverter will  have its own
error factors.  Transvertor and  other individual band specific errors
can only be corrected by adjusting the offset for the band.

Thanks  to Mike  W9MDB for  an  initial implementation  of Joe  K1JT's
suggestion. See also the WSPR documentation for details of calculating
the required calibration constants.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@5396 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-05-19 17:52:47 +00:00
Bill Somerville
a84b7cdfd3 ------------------------------------------------------------------------
r5297 | bsomervi | 2015-04-26 17:26:54 +0100 (Sun, 26 Apr 2015) | 49 lines

Various defect repairs and ambigous behaviour clarifications

A regression introduced in v1.5.0-rc1 where PTT on an alternate serial
port when using no CAT control is resolved.

A regression introduced  in v1.5.0-rc1 where the  network server field
was not being restored in the settings dialog has been resolved.

In settings the "Test PTT" button is now styled  by checked state.

The  "Test PTT"  button is  enabled without  needing click  "Test CAT"
first when no CAT rig control is selected.

Various parts of the settings dialog  are now disabled when no CAT rig
control is selected. These are the "Mode" group, the "Split Operation"
group and the "Monitor returns to last used frequency" check box. None
of  these have  any  visible impact  nor make  sense  without CAT  rig
control.

Initialization and teardown of rig  control internals has been revised
to avoid several problems related to timing and when switching between
different  CAT  settings. This  includes  improvements  in having  the
operating frequency restored  between sessions when not  using CAT rig
control.

The  initialization   of  OmniRig   connections  has   been  improved,
unfortunately it is  still possible to get an  exception when clicking
the  "Test  CAT" button  where  just  clicking  "OK" and  leaving  the
settings dialog will probably work.

Some unnecessary  CAT commands output  during direct rig  control have
been elided to reduce the level of traffic a little.

The handling of  some automatically generated free  text messages used
when the station is a type 2  compound callsign or is working a type 2
compound callsign has  been improved. This is related to  how a double
click  on  a  message  of  the   form  "DE  TI4/N0URE  73"  is  double
clicked. The  new behaviour depends  on whether the current  "DX Call"
matches the  call in the message.   This resolves the ambiguity  as to
whether this message  is a sign off  at the end of a  QSO with current
operator (a 73  message is generated) or a tail  end opportunity where
the message should be treated the same  as a CQ or QRZ message (WSJT-X
QSYs  to the  frequency, generates  messages and  selects message  one
ready to call).  This still  leaves some potential ambiguous behaviors
in  this complex  area but  selecting "Clear  DX call  and grid  after
logging" should resolve most of them.

Rig  control trace  messages have  been cleaned  up and  are now  more
helpful, less verbose and, tidier in the source code.
------------------------------------------------------------------------

Merged from the wsjtx-1.5 branch.



git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@5298 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-04-26 16:41:12 +00:00
Bill Somerville
a51c5c4251 Reintegrate Joe's experimental VHF & up features
As at ^/branches/wsjtx_exp@5271



git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@5272 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-04-22 17:48:03 +00:00
Bill Somerville
0992dc9a5e Allow a smaller minimum window size for settings
Trying to  resolve the best default  size for the Settings  window for
all  platforms  whilst allowing  the  user  to  shrink the  window  on
platforms that allow a more compact widget layout like Windows.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@5251 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-04-20 17:01:59 +00:00
Bill Somerville
3f75b4144a Send status information to UDP server
To  facilitate interaction  with other  applications WSJT-X  now sends
status  updates  to  a  predefined   UDP  server  or  multicast  group
address. The  status updates include the  information currently posted
to  the  decodes.txt and  wsjtx_status.txt  files.   An optional  back
communications  channel is  also implemented  allowing the  UDP server
application to control some basic actions in WSJT-X.

A reference implementaion of a typical UDP server written in C++ using
Qt is  provided to demonstrate  these facilities. This  application is
not intended  as a user  tool but  only as an  example of how  a third
party application may interact with WSJT-X.

The  UDP messages  Use QDataStream  based serialization.  Messages are
documented in  NetworkMessage.hpp along with some  helper classes that
simplify the building and decoding of messages.

Two  message  handling  classes   are  introduced,  MessageClient  and
MessageServer.  WSJT-X uses the MessageClient class to manage outgoing
and  incoming  UDP  messages   that  allow  communication  with  other
applications.   The MessageServer  class implements  the kind  of code
that a  potential cooperating  application might use.   Although these
classes  use  Qt serialization  facilities,  the  message formats  are
easily  read and  written  by  applications that  do  not  use the  Qt
framework.

MessageAggregator   is   a   demonstration   application   that   uses
MessageServer and  presents a GUI  that displays messages from  one or
more  WSJT-X instances  and  allows sending  back a  CQ  or QRZ  reply
invocation  by double  clicking  a decode.   This  application is  not
intended as  a user facing tool  but rather as a  demonstration of the
WSJT-X UDP messaging facility. It  also demonstrates being a multicast
UDP server by allowing multiple instances to run concurrently. This is
enabled by using an appropriate  multicast group address as the server
address.  Cooperating   applications  need  not   implement  multicast
techniques but  it is recomended  otherwise only a  single appliaction
can act as a broadcast message (from WSJT-X) recipient.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@5225 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-04-15 16:40:49 +00:00