2015-04-15 16:40:49 +00:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								#ifndef NETWORK_MESSAGE_HPP__
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								#define NETWORK_MESSAGE_HPP__
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								/*
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 * WSJT-X Message Formats
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 * ======================
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 * All messages are written or  read using the QDataStream derivatives
							 | 
						
					
						
							
								
									
										
										
										
											2015-04-16 22:17:14 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 * defined below, note that we are using the default for floating
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 * point precision which means all are double precision i.e. 64-bit
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 * IEEE format.
							 | 
						
					
						
							
								
									
										
										
										
											2015-04-15 16:40:49 +00:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *  Message is big endian format
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *   Header format:
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      32-bit unsigned integer magic number 0xadbccbda
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      32-bit unsigned integer schema number
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *   Payload format:
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      As per  the QDataStream format,  see below for version  used and
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      here:
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *        http://doc.qt.io/qt-5/datastreamformat.html
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *
							 | 
						
					
						
							
								
									
										
										
										
											2015-04-16 22:17:14 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 *      for the serialization details for each type, at the time of
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      writing the above document is for Qt_5_0 format which is buggy
							 | 
						
					
						
							
								
									
										
										
										
											2015-10-21 18:56:29 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 *      so we use Qt_5_4 format, differences are:
							 | 
						
					
						
							
								
									
										
										
										
											2015-04-16 22:17:14 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 *
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      QDateTime:
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *           QDate      qint64    Julian day number
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *           QTime      quint32   Milli-seconds since midnight
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *           timespec   quint8    0=local, 1=UTC, 2=Offset from UTC
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *                                                 (seconds)
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *                                3=time zone
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *           offset     qint32    only present if timespec=2
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *           timezone   several-fields only present if timespec=3
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      we will avoid using QDateTime fields with time zones for simplicity.
							 | 
						
					
						
							
								
									
										
										
										
											2015-04-15 16:40:49 +00:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 * Type utf8  is a  utf-8 byte  string formatted  as a  QByteArray for
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 * serialization purposes  (currently a quint32 size  followed by size
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 * bytes, no terminator is present or counted).
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *
							 | 
						
					
						
							
								
									
										
										
										
											2015-05-06 20:30:29 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 * The QDataStream format document linked above is not complete for
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 * the QByteArray serialization format, it is similar to the QString
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 * serialization format in that it differentiates between empty
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 * strings and null strings. Empty strings have a length of zero
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 * whereas null strings have a length field of 0xffffffff.
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *
							 | 
						
					
						
							
								
									
										
										
										
											2015-10-21 18:56:29 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 * Schema Negotiation
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 * ------------------
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 * The NetworkMessage::Builder  class specifies a schema  number which
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 * may be  incremented from time to  time. It represents a  version of
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 * the underlying encoding schemes used to store data items. Since the
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 * underlying  encoding  is   defined  by  the  Qt   project  in  it's
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 * QDataStream  stream operators,  it  is essential  that clients  and
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 * servers  of  this protocol  can  agree  on  a common  scheme.   The
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 * NetworkMessage  utility classes  below exchange  the schema  number
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 * actually used.  The handling of  the schema is backwards compatible
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 * to  an  extent,  so  long   as  clients  and  servers  are  written
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 * correctly. For  example a server  written to any  particular schema
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 * version can communicate with a client written to a later schema.
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 * Schema Version 1:- this schema used the QDataStream::Qt_5_0 version
							 | 
						
					
						
							
								
									
										
										
										
											2015-11-13 15:44:11 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 *  which is broken.
							 | 
						
					
						
							
								
									
										
										
										
											2015-10-21 18:56:29 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 *
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 * Schema Version 2:- this schema uses the QDataStream::Qt_5_2 version.
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 * Schema Version 3:- this schema uses the QDataStream::Qt_5_4 version.
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *
							 | 
						
					
						
							
								
									
										
										
										
											2015-04-15 16:40:49 +00:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 * Message       Direction Value                  Type
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 * ------------- --------- ---------------------- -----------
							 | 
						
					
						
							
								
									
										
										
										
											2015-10-21 18:56:29 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 * Heartbeat     Out/In    0                      quint32
							 | 
						
					
						
							
								
									
										
										
										
											2015-04-15 16:40:49 +00:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *                         Id (unique key)        utf8
							 | 
						
					
						
							
								
									
										
										
										
											2015-10-21 18:56:29 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 *                         Maximum schema number  quint32
							 | 
						
					
						
							
								
									
										
										
										
											2016-12-04 00:55:15 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 *                         version                utf8
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *                         revision               utf8
							 | 
						
					
						
							
								
									
										
										
										
											2015-10-21 18:56:29 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 *
							 | 
						
					
						
							
								
									
										
										
										
											2015-11-13 15:44:11 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 *    The heartbeat  message shall be  sent on a periodic  basis every
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *    NetworkMessage::pulse   seconds   (see    below),   the   WSJT-X
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *    application  does  that  using the  MessageClient  class.   This
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *    message is intended to be used by servers to detect the presence
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *    of a  client and also  the unexpected disappearance of  a client
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *    and  by clients  to learn  the schema  negotiated by  the server
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *    after it receives  the initial heartbeat message  from a client.
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *    The message_aggregator reference server does just that using the
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *    MessageServer class. Upon  initial startup a client  must send a
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *    heartbeat message as soon as  is practical, this message is used
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *    to negotiate the maximum schema  number common to the client and
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *    server. Note  that the  server may  not be  able to  support the
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *    client's  requested maximum  schema  number, in  which case  the
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *    first  message received  from the  server will  specify a  lower
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *    schema number (never a higher one  as that is not allowed). If a
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *    server replies  with a lower  schema number then no  higher than
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *    that number shall be used for all further outgoing messages from
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *    either clients or the server itself.
							 | 
						
					
						
							
								
									
										
										
										
											2015-05-10 12:02:14 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 *
							 | 
						
					
						
							
								
									
										
										
										
											2016-01-31 00:07:42 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 *    Note: the  "Maximum schema number"  field was introduced  at the
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *    same time as schema 3, therefore servers and clients must assume
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *    schema 2 is the highest schema number supported if the Heartbeat
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *    message does not contain the "Maximum schema number" field.
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *
							 | 
						
					
						
							
								
									
										
										
										
											2015-05-10 12:02:14 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 *
							 | 
						
					
						
							
								
									
										
										
										
											2015-04-15 16:40:49 +00:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 * Status        Out       1                      quint32
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *                         Id (unique key)        utf8
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *                         Dial Frequency (Hz)    quint64
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *                         Mode                   utf8
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *                         DX call                utf8
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *                         Report                 utf8
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *                         Tx Mode                utf8
							 | 
						
					
						
							
								
									
										
										
										
											2015-05-06 22:25:56 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 *                         Tx Enabled             bool
							 | 
						
					
						
							
								
									
										
										
										
											2015-05-06 20:30:29 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 *                         Transmitting           bool
							 | 
						
					
						
							
								
									
										
										
										
											2015-11-13 15:44:11 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 *                         Decoding               bool
							 | 
						
					
						
							
								
									
										
										
										
											2016-05-24 10:08:35 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 *                         Rx DF                  qint32
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *                         Tx DF                  qint32
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *                         DE call                utf8
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *                         DE grid                utf8
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *                         DX grid                utf8
							 | 
						
					
						
							
								
									
										
										
										
											2016-07-08 10:59:06 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 *                         Tx Watchdog            bool
							 | 
						
					
						
							
								
									
										
										
										
											2016-12-16 19:36:21 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 *                         Sub-mode               utf8
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *                         Fast mode              bool
							 | 
						
					
						
							
								
									
										
										
										
											2015-04-15 16:40:49 +00:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *
							 | 
						
					
						
							
								
									
										
										
										
											2015-11-13 15:44:11 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 *    WSJT-X  sends this  status message  when various  internal state
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *    changes to allow the server to  track the relevant state of each
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *    client without the need for  polling commands. The current state
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *    changes that generate status messages are:
							 | 
						
					
						
							
								
									
										
										
										
											2015-05-10 12:02:14 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 *
							 | 
						
					
						
							
								
									
										
										
										
											2015-11-13 15:44:11 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 *      Application start up,
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      "Enable Tx" button status changes,
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      Dial frequency changes,
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      Changes to the "DX Call" field,
							 | 
						
					
						
							
								
									
										
										
										
											2016-12-16 19:36:21 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 *      Operating mode, sub-mode or fast mode changes,
							 | 
						
					
						
							
								
									
										
										
										
											2015-11-13 15:44:11 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 *      Transmit mode changed (in dual JT9+JT65 mode),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      Changes to the "Rpt" spinner,
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      After an old decodes replay sequence (see Replay below),
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      When switching between Tx and Rx mode,
							 | 
						
					
						
							
								
									
										
										
										
											2016-05-24 10:08:35 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 *      At the start and end of decoding,
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      When the Rx DF changes,
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      When the Tx DF changes,
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      When the DE call or grid changes (currently when settings are exited),
							 | 
						
					
						
							
								
									
										
										
										
											2016-07-08 10:59:06 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 *      When the DX call or grid changes,
							 | 
						
					
						
							
								
									
										
										
										
											2016-07-09 02:27:57 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 *      When the Tx watchdog is set or reset.
							 | 
						
					
						
							
								
									
										
										
										
											2015-05-10 12:02:14 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 *
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *
							 | 
						
					
						
							
								
									
										
										
										
											2015-04-15 16:40:49 +00:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 * Decode        Out       2                      quint32
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *                         Id (unique key)        utf8
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *                         New                    bool
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *                         Time                   QTime
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *                         snr                    qint32
							 | 
						
					
						
							
								
									
										
										
										
											2015-04-16 22:17:14 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 *                         Delta time (S)         float (serialized as double)
							 | 
						
					
						
							
								
									
										
										
										
											2015-04-15 16:40:49 +00:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *                         Delta frequency (Hz)   quint32
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *                         Mode                   utf8
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *                         Message                utf8
							 | 
						
					
						
							
								
									
										
											 
										 
										
											
												Merged from trunk:
------------------------------------------------------------------------
r7861 | k9an | 2017-07-12 22:49:39 +0100 (Wed, 12 Jul 2017) | 1 line
Use quarter-symbol steps for time sync. Lower sync threshold. Implement subtraction and two pass decoding. Use osd2 only near nfqso.
------------------------------------------------------------------------
r7862 | k9an | 2017-07-13 01:28:57 +0100 (Thu, 13 Jul 2017) | 1 line
Fix NHSYM.
------------------------------------------------------------------------
r7863 | k9an | 2017-07-13 01:31:52 +0100 (Thu, 13 Jul 2017) | 1 line
Fix a comment. No code changes.
------------------------------------------------------------------------
r7864 | k9an | 2017-07-13 01:43:56 +0100 (Thu, 13 Jul 2017) | 1 line
Fix another bounds error.
------------------------------------------------------------------------
r7879 | k1jt | 2017-07-14 17:02:01 +0100 (Fri, 14 Jul 2017) | 1 line
Code cleanup and test ofFT8 decodes with erasures.  Do not use on the air.
------------------------------------------------------------------------
r7881 | k1jt | 2017-07-14 19:19:48 +0100 (Fri, 14 Jul 2017) | 1 line
Fix nutc in jt9; alternative sync value for late-start FT8 signals.
------------------------------------------------------------------------
r7882 | k9an | 2017-07-14 20:22:53 +0100 (Fri, 14 Jul 2017) | 1 line
Move ft8apset to a separate file.
------------------------------------------------------------------------
r7884 | k9an | 2017-07-14 20:35:22 +0100 (Fri, 14 Jul 2017) | 1 line
Add ft8apset.f90.
------------------------------------------------------------------------
r7885 | k9an | 2017-07-14 20:46:04 +0100 (Fri, 14 Jul 2017) | 1 line
Update call to ft8b.
------------------------------------------------------------------------
r7886 | k9an | 2017-07-14 21:12:29 +0100 (Fri, 14 Jul 2017) | 1 line
More work on ap.
------------------------------------------------------------------------
r7887 | k9an | 2017-07-14 23:09:50 +0100 (Fri, 14 Jul 2017) | 1 line
More work on AP. Deep decode is unstable - not for use on the air.
------------------------------------------------------------------------
r7890 | k9an | 2017-07-15 01:33:25 +0100 (Sat, 15 Jul 2017) | 1 line
Turn off ap.
------------------------------------------------------------------------
r7891 | k9an | 2017-07-15 02:49:44 +0100 (Sat, 15 Jul 2017) | 1 line
Add some more items to the lun 81 diagnostics.
------------------------------------------------------------------------
r7892 | k9an | 2017-07-15 15:21:18 +0100 (Sat, 15 Jul 2017) | 1 line
Properly calculate metrics for non-ap bits that reside in symbols that contain ap bits.
------------------------------------------------------------------------
r7893 | k9an | 2017-07-15 16:43:41 +0100 (Sat, 15 Jul 2017) | 1 line
Use overlap and add to apply reference filter/amplitude equalization.
------------------------------------------------------------------------
r7894 | k9an | 2017-07-15 16:46:46 +0100 (Sat, 15 Jul 2017) | 1 line
Improve a comment.
------------------------------------------------------------------------
r7895 | k9an | 2017-07-16 01:10:37 +0100 (Sun, 16 Jul 2017) | 1 line
Make refspec filter causal for overlap and add.
------------------------------------------------------------------------
r7911 | k9an | 2017-07-16 16:56:06 +0100 (Sun, 16 Jul 2017) | 1 line
More work on Deep decoding.
------------------------------------------------------------------------
r7917 | k9an | 2017-07-16 18:08:09 +0100 (Sun, 16 Jul 2017) | 1 line
Properly round the printed snr.
------------------------------------------------------------------------
r7925 | k9an | 2017-07-18 02:12:11 +0100 (Tue, 18 Jul 2017) | 1 line
Work on ap decoding. Diagnostic write enabled.
------------------------------------------------------------------------
r7926 | k9an | 2017-07-18 16:22:20 +0100 (Tue, 18 Jul 2017) | 1 line
Fix a bug in AP decoding when iaptype=2. Decrease time-sync search range to +/- 1.5s. Fix a big with erasure decoding.
------------------------------------------------------------------------
r7927 | k1jt | 2017-07-20 00:23:20 +0100 (Thu, 20 Jul 2017) | 1 line
Remove slider next to audio level meter.
------------------------------------------------------------------------
r7928 | k1jt | 2017-07-20 16:15:00 +0100 (Thu, 20 Jul 2017) | 6 lines
1. Alt+F8 arms "Call 1st" as if a CQ had been sent.
2. "Call 1st" label turns red when armed to respond to a caller.
3. Suppress some recognizable false decodes, send them to cumulative file
   "data_dir/false_decodes.txt".
4. Reduce sleep delay in decoder() to 10 ms.
------------------------------------------------------------------------
r7929 | k1jt | 2017-07-20 20:23:17 +0100 (Thu, 20 Jul 2017) | 1 line
Fix wording in list of keyboard shortcuts.
------------------------------------------------------------------------
r7930 | k1jt | 2017-07-20 20:25:08 +0100 (Thu, 20 Jul 2017) | 2 lines
Comment out diagnostic write.
------------------------------------------------------------------------
r7931 | k9an | 2017-07-20 22:08:36 +0100 (Thu, 20 Jul 2017) | 1 line
Only print dupes if SNR is higher than what has already been printed.
------------------------------------------------------------------------
r7932 | k9an | 2017-07-21 23:02:06 +0100 (Fri, 21 Jul 2017) | 1 line
Add to the list of allowed keywords in jtmsg.f90.
------------------------------------------------------------------------
r7933 | k9an | 2017-07-22 04:01:09 +0100 (Sat, 22 Jul 2017) | 1 line
Add variables lapon and napwid to control ap decoding. Reconfigure the logic for AP decoding and ordered-statistics decoding.
------------------------------------------------------------------------
r7934 | k9an | 2017-07-22 14:21:03 +0100 (Sat, 22 Jul 2017) | 1 line
Prevent a certain type of non-standard message from being flagged as a false decode.
------------------------------------------------------------------------
r7935 | k9an | 2017-07-22 18:12:48 +0100 (Sat, 22 Jul 2017) | 1 line
More informative end-of-line annotation for AP decodes.
------------------------------------------------------------------------
r7936 | k9an | 2017-07-24 15:23:22 +0100 (Mon, 24 Jul 2017) | 1 line
Bring msk144d2 more up to date. Runs now, but still needs more work.
------------------------------------------------------------------------
r7937 | k1jt | 2017-07-24 15:48:16 +0100 (Mon, 24 Jul 2017) | 2 lines
Correct the spacing between marked lowest and highest FT8 tones for RxFreq (green) and TxFreq (red). 
------------------------------------------------------------------------
r7938 | bsomervi | 2017-07-24 20:27:14 +0100 (Mon, 24 Jul 2017) | 4 lines
Add double clickable push button and radio button widgets
These emit  doubleClicked signal  when double-clicked,  otherwise they
are identical to their super-classes.
------------------------------------------------------------------------
r7939 | bsomervi | 2017-07-24 20:27:23 +0100 (Mon, 24 Jul 2017) | 42 lines
Add the  option to ALT+click  a decoded CQ  or QRZ message  which only
moves the Rx  frequency to theirs, this facilitates  calling a station
who is busy and may have  many callers on their frequency. Updated the
corresponding mouse shortcuts help text.
Allow for times with seconds when parsing fast mode and FT8 decodes.
Exclude the RR73 grid square from  and grid validation or matching, it
is not a grid square any more as  far as WSJT-X is concerned, it is an
RRR substitute.
Add a  simple state  machine for  QSO progress  such that  replies and
auto-sequencing can be better controlled.
Get compound callsign edge cases working again and allow QSOs from and
to compound callsign holders working in as many situations as possible
including  auto-sequencing and  FT8 auto-reply  mode.  This  does mean
that a  "DE W6/K1ABC DM93"  type message close to  a callers Tx  or Rx
frequency will be taken  as a reply to a CQ call  despite it not being
explicitly addressed back to the  CQ caller. Compound callsigns should
work in MSK144 contest  mode also as well as in  short code modes with
some  minor  restrictions   (short  codes  will  not   be  used  where
configuration demands that  a message be used to send  a full compound
callsign).
Auto sequencing  has been made  generic such that  it can be  used for
more than one mode if desired.
Allow the use of free text messages to sign off in auto sequenced QSOs
without the message  being overwritten by the  sequencer. Double click
actions have  been added to the  Tx5 radio and push  buttons to revert
back to the default standard 73 message.
Make DisplayText  class interface  more idiomatic  C++ and  simplify a
bit.
Fixed  some  displayed widget  arrangements  for  different modes  and
sub-modes  so that  they  are  consistent when  starting  up and  when
switching mode or sub-mode.
This is  a big change which  has been extensively tested  but no doubt
there will also be some new defects introduced.
------------------------------------------------------------------------
r7940 | bsomervi | 2017-07-25 17:51:19 +0100 (Tue, 25 Jul 2017) | 1 line
Fix issue with Tx5 not being generated with a new DX Call
------------------------------------------------------------------------
r7941 | bsomervi | 2017-07-25 17:51:27 +0100 (Tue, 25 Jul 2017) | 1 line
Fix country name display that broke in r7939
------------------------------------------------------------------------
r7942 | bsomervi | 2017-07-25 17:51:34 +0100 (Tue, 25 Jul 2017) | 1 line
Ensure JT9 lowest decode frequency spin box is disabled when not available
------------------------------------------------------------------------
r7943 | bsomervi | 2017-07-25 17:51:42 +0100 (Tue, 25 Jul 2017) | 4 lines
Pick up tail-enders when completing a call 1st QSO after re-enabling auto Tx
Allow  any message  to  start  a QSO  so  long as  we  are  not in  an
auto-reply QSO.
------------------------------------------------------------------------
r7944 | bsomervi | 2017-07-25 17:51:49 +0100 (Tue, 25 Jul 2017) | 1 line
Exclude all decode quality markers from internal decode parsing and matching
------------------------------------------------------------------------
r7945 | k9an | 2017-07-25 20:06:05 +0100 (Tue, 25 Jul 2017) | 1 line
Move '?' quality warning to message(22:22).
------------------------------------------------------------------------
r7946 | k9an | 2017-07-25 21:55:13 +0100 (Tue, 25 Jul 2017) | 1 line
Reject candiates with fewer than 7 correct hard-decoded sync symbols.
------------------------------------------------------------------------
r7947 | bsomervi | 2017-07-26 02:38:37 +0100 (Wed, 26 Jul 2017) | 1 line
Force Settings tab to Radio tab when navigating there from a rig error message
------------------------------------------------------------------------
r7948 | bsomervi | 2017-07-26 02:38:44 +0100 (Wed, 26 Jul 2017) | 1 line
Correct the highlighting of the Call 1st check box label
------------------------------------------------------------------------
r7949 | bsomervi | 2017-07-26 02:38:57 +0100 (Wed, 26 Jul 2017) | 5 lines
Option to skip using grid reply message
Enable and disable  by double-clicking the Tx1 button  or the adjacent
radio button.  Tx1 message shows  grayed out  when the Tx1  message is
elided.
------------------------------------------------------------------------
r7950 | bsomervi | 2017-07-26 02:39:04 +0100 (Wed, 26 Jul 2017) | 6 lines
Option to use RR73 grid message as RRR message substitutes
Enable or  disable by double-clicking  the Tx4 button or  the adjacent
radio button. Is auto disabled by a band change as it is expected that
the user  reassess the  conditions to see  if message  repetitions are
unlikely to be needed.
------------------------------------------------------------------------
r7951 | bsomervi | 2017-07-26 02:39:11 +0100 (Wed, 26 Jul 2017) | 1 line
Fix highlighting of the call first check box label
------------------------------------------------------------------------
r7952 | bsomervi | 2017-07-26 02:39:23 +0100 (Wed, 26 Jul 2017) | 1 line
Better behavior and tool tips for Txn buttons and radio buttons
------------------------------------------------------------------------
r7953 | bsomervi | 2017-07-26 02:39:30 +0100 (Wed, 26 Jul 2017) | 1 line
Auto Tx stop when calling a CQer who answers another station on your Tx frequency
------------------------------------------------------------------------
r7954 | bsomervi | 2017-07-26 11:56:12 +0100 (Wed, 26 Jul 2017) | 1 line
Add menu option to turn on AP decoding in FT8 mode
------------------------------------------------------------------------
r7955 | k9an | 2017-07-26 14:05:34 +0100 (Wed, 26 Jul 2017) | 1 line
Enable AP for any decoding level.
------------------------------------------------------------------------
r7956 | k1jt | 2017-07-26 14:44:31 +0100 (Wed, 26 Jul 2017) | 1 line
Remove obsolete test program.
------------------------------------------------------------------------
r7957 | bsomervi | 2017-07-26 22:18:59 +0100 (Wed, 26 Jul 2017) | 11 lines
Use the low confidence decode quality marker to elide spots and pass info via UDP
The UDP  decode and reply message  have been augmented with  a boolean
flag denoting a  low confidence decode when set.  Existing clients can
safely use the  reply message without passing the flag  as the default
value will  still action  messages that have  high confidence.  If low
confidence decodes  are to be passed  back via the reply  message then
the low  confidence flag must be  included and correctly set  to match
the original decode.
See NetworkMessage.hpp for message fields and meanings.
------------------------------------------------------------------------
r7958 | bsomervi | 2017-07-26 22:19:21 +0100 (Wed, 26 Jul 2017) | 3 lines
Add QSO state machine state and tx audio offset to parameters passed to slow decoders
Required to pick best AP masks in FT8 decoder
------------------------------------------------------------------------
r7959 | bsomervi | 2017-07-26 23:03:02 +0100 (Wed, 26 Jul 2017) | 1 line
Extend grids looked up from CALL3.TXT from 4 to 6-digits if first 4 match
------------------------------------------------------------------------
r7960 | k9an | 2017-07-27 16:35:40 +0100 (Thu, 27 Jul 2017) | 1 line
nQSOProgress now controls AP decoding. Needs testing - may not be stable with AP enabled.
------------------------------------------------------------------------
r7961 | k9an | 2017-07-27 19:07:54 +0100 (Thu, 27 Jul 2017) | 1 line
Correct some logic so that AP is only on when selected and so that AP decodes of type 4 or greater are limited to the vicinity of nfqso or nftx.
------------------------------------------------------------------------
r7962 | k1jt | 2017-07-27 19:57:53 +0100 (Thu, 27 Jul 2017) | 2 lines
Remove unused arguments from the call to fix_contest_msg().
------------------------------------------------------------------------
r7963 | k1jt | 2017-07-27 21:17:30 +0100 (Thu, 27 Jul 2017) | 1 line
Working on some features for NA VHF contests.  Not finished!
------------------------------------------------------------------------
r7964 | bsomervi | 2017-07-28 01:00:42 +0100 (Fri, 28 Jul 2017) | 1 line
Fix syntax error in statement function definition
------------------------------------------------------------------------
r7965 | bsomervi | 2017-07-28 02:20:22 +0100 (Fri, 28 Jul 2017) | 6 lines
Revert "Extend grids looked up from CALL3.TXT from 4 to 6-digits if first 4 match"
Bad idea, need to  find a better way to extend  grids to 6-digits from
CALL3.TXT.
This reverts commit r7959
------------------------------------------------------------------------
r7968 | k9an | 2017-07-28 16:35:17 +0100 (Fri, 28 Jul 2017) | 1 line
Comment out diagnostic write to lun 81.
------------------------------------------------------------------------
r7969 | k1jt | 2017-07-28 16:50:13 +0100 (Fri, 28 Jul 2017) | 2 lines
Make 72-bit "contest mode" available in FT8 as well as MSK144.
------------------------------------------------------------------------
r7970 | bsomervi | 2017-07-29 00:25:32 +0100 (Sat, 29 Jul 2017) | 7 lines
Change tolerances for auto stop and auto-sequence of some messages
FT8 auto-stop  will only react to  messages within +/- 50Hz  of our Tx
frequency.
Auto-sequence on  "DE ..." and free  text 73 messages will  respond if
they are within 25Hz of our Tx or Rx frequency.
------------------------------------------------------------------------
r7971 | bsomervi | 2017-07-31 02:28:25 +0100 (Mon, 31 Jul 2017) | 1 line
Add extra hidden string length argument to genft8 interface
------------------------------------------------------------------------
r7972 | bsomervi | 2017-07-31 02:28:33 +0100 (Mon, 31 Jul 2017) | 5 lines
Fix FT8 call first behaviour with "Lock Tx=Rx"
Call first combined with "Lock Tx=Rx" (why would anyone consider doing
that!)   should continue  on the  Tx  frequency of  the station  being
worked and not be switched another calling station's frequency.
------------------------------------------------------------------------
r7973 | k1jt | 2017-08-01 19:01:27 +0100 (Tue, 01 Aug 2017) | 1 line
Utility for generating figure for QST/RadCom article.
------------------------------------------------------------------------
r7974 | k1jt | 2017-08-01 19:16:01 +0100 (Tue, 01 Aug 2017) | 2 lines
Tidy up some details for 72-bit contest mode in FT8.
------------------------------------------------------------------------
r7975 | k1jt | 2017-08-01 19:46:12 +0100 (Tue, 01 Aug 2017) | 2 lines
Don't highlight FT8 contest-mode Tx3 message as a free-text message.
------------------------------------------------------------------------
r7976 | k1jt | 2017-08-01 20:32:54 +0100 (Tue, 01 Aug 2017) | 2 lines
Fix the "F4" shortcut description; add usage advuice to "Lock Tx=Rx" tool tip.
------------------------------------------------------------------------
r7980 | k1jt | 2017-08-02 15:05:37 +0100 (Wed, 02 Aug 2017) | 2 lines
Enable "nagain" for FT8, as in other modes.
------------------------------------------------------------------------
r7987 | k1jt | 2017-08-02 20:23:42 +0100 (Wed, 02 Aug 2017) | 2 lines
Updates to the WSJT-X User Guide for Version 1.8.
------------------------------------------------------------------------
r7988 | k1jt | 2017-08-02 20:27:43 +0100 (Wed, 02 Aug 2017) | 2 lines
Add several new screen shots.
------------------------------------------------------------------------
r7989 | k1jt | 2017-08-02 21:43:06 +0100 (Wed, 02 Aug 2017) | 2 lines
Allow auto-seq in QRA64 mode; updates to User Guide.
------------------------------------------------------------------------
r7992 | bsomervi | 2017-08-03 12:23:07 +0100 (Thu, 03 Aug 2017) | 7 lines
Fix an issue with VFO tuning while running Doppler correction
Holding down  the SHIFT  key while  tuning the  rig should  update the
nominal  sked frequency,  not holding  done the  SHIFT key  should not
update the  sked frequency. This  is not  yet perfect and  sometimes a
change to the nominal sked frequency can  get through but it is a rare
as yet unfound race condition.
------------------------------------------------------------------------
r7993 | k9an | 2017-08-03 15:46:21 +0100 (Thu, 03 Aug 2017) | 1 line
1. Use norder=3 for nagain, 2. Renumber aptypes.
------------------------------------------------------------------------
r7994 | k1jt | 2017-08-03 15:48:59 +0100 (Thu, 03 Aug 2017) | 2 lines
Remove the "Weak" checkbox from GUI, it's not implemented. 
------------------------------------------------------------------------
r7995 | k1jt | 2017-08-03 16:12:30 +0100 (Thu, 03 Aug 2017) | 2 lines
More updates to the WSJT-X User Guide.
------------------------------------------------------------------------
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx-1.8@7996 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
											
										 
										
											2017-08-03 16:42:10 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 *                         Low confidence         bool
							 | 
						
					
						
							
								
									
										
										
										
											2015-04-15 16:40:49 +00:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *
							 | 
						
					
						
							
								
									
										
										
										
											2015-11-15 23:03:11 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 *      The decode message is sent when  a new decode is completed, in
							 | 
						
					
						
							
								
									
										
										
										
											2015-11-13 15:44:11 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 *      this case the 'New' field is true. It is also used in response
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      to  a "Replay"  message where  each  old decode  in the  "Band
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      activity" window, that  has not been erased, is  sent in order
							 | 
						
					
						
							
								
									
										
											 
										 
										
											
												Merged from trunk:
------------------------------------------------------------------------
r7861 | k9an | 2017-07-12 22:49:39 +0100 (Wed, 12 Jul 2017) | 1 line
Use quarter-symbol steps for time sync. Lower sync threshold. Implement subtraction and two pass decoding. Use osd2 only near nfqso.
------------------------------------------------------------------------
r7862 | k9an | 2017-07-13 01:28:57 +0100 (Thu, 13 Jul 2017) | 1 line
Fix NHSYM.
------------------------------------------------------------------------
r7863 | k9an | 2017-07-13 01:31:52 +0100 (Thu, 13 Jul 2017) | 1 line
Fix a comment. No code changes.
------------------------------------------------------------------------
r7864 | k9an | 2017-07-13 01:43:56 +0100 (Thu, 13 Jul 2017) | 1 line
Fix another bounds error.
------------------------------------------------------------------------
r7879 | k1jt | 2017-07-14 17:02:01 +0100 (Fri, 14 Jul 2017) | 1 line
Code cleanup and test ofFT8 decodes with erasures.  Do not use on the air.
------------------------------------------------------------------------
r7881 | k1jt | 2017-07-14 19:19:48 +0100 (Fri, 14 Jul 2017) | 1 line
Fix nutc in jt9; alternative sync value for late-start FT8 signals.
------------------------------------------------------------------------
r7882 | k9an | 2017-07-14 20:22:53 +0100 (Fri, 14 Jul 2017) | 1 line
Move ft8apset to a separate file.
------------------------------------------------------------------------
r7884 | k9an | 2017-07-14 20:35:22 +0100 (Fri, 14 Jul 2017) | 1 line
Add ft8apset.f90.
------------------------------------------------------------------------
r7885 | k9an | 2017-07-14 20:46:04 +0100 (Fri, 14 Jul 2017) | 1 line
Update call to ft8b.
------------------------------------------------------------------------
r7886 | k9an | 2017-07-14 21:12:29 +0100 (Fri, 14 Jul 2017) | 1 line
More work on ap.
------------------------------------------------------------------------
r7887 | k9an | 2017-07-14 23:09:50 +0100 (Fri, 14 Jul 2017) | 1 line
More work on AP. Deep decode is unstable - not for use on the air.
------------------------------------------------------------------------
r7890 | k9an | 2017-07-15 01:33:25 +0100 (Sat, 15 Jul 2017) | 1 line
Turn off ap.
------------------------------------------------------------------------
r7891 | k9an | 2017-07-15 02:49:44 +0100 (Sat, 15 Jul 2017) | 1 line
Add some more items to the lun 81 diagnostics.
------------------------------------------------------------------------
r7892 | k9an | 2017-07-15 15:21:18 +0100 (Sat, 15 Jul 2017) | 1 line
Properly calculate metrics for non-ap bits that reside in symbols that contain ap bits.
------------------------------------------------------------------------
r7893 | k9an | 2017-07-15 16:43:41 +0100 (Sat, 15 Jul 2017) | 1 line
Use overlap and add to apply reference filter/amplitude equalization.
------------------------------------------------------------------------
r7894 | k9an | 2017-07-15 16:46:46 +0100 (Sat, 15 Jul 2017) | 1 line
Improve a comment.
------------------------------------------------------------------------
r7895 | k9an | 2017-07-16 01:10:37 +0100 (Sun, 16 Jul 2017) | 1 line
Make refspec filter causal for overlap and add.
------------------------------------------------------------------------
r7911 | k9an | 2017-07-16 16:56:06 +0100 (Sun, 16 Jul 2017) | 1 line
More work on Deep decoding.
------------------------------------------------------------------------
r7917 | k9an | 2017-07-16 18:08:09 +0100 (Sun, 16 Jul 2017) | 1 line
Properly round the printed snr.
------------------------------------------------------------------------
r7925 | k9an | 2017-07-18 02:12:11 +0100 (Tue, 18 Jul 2017) | 1 line
Work on ap decoding. Diagnostic write enabled.
------------------------------------------------------------------------
r7926 | k9an | 2017-07-18 16:22:20 +0100 (Tue, 18 Jul 2017) | 1 line
Fix a bug in AP decoding when iaptype=2. Decrease time-sync search range to +/- 1.5s. Fix a big with erasure decoding.
------------------------------------------------------------------------
r7927 | k1jt | 2017-07-20 00:23:20 +0100 (Thu, 20 Jul 2017) | 1 line
Remove slider next to audio level meter.
------------------------------------------------------------------------
r7928 | k1jt | 2017-07-20 16:15:00 +0100 (Thu, 20 Jul 2017) | 6 lines
1. Alt+F8 arms "Call 1st" as if a CQ had been sent.
2. "Call 1st" label turns red when armed to respond to a caller.
3. Suppress some recognizable false decodes, send them to cumulative file
   "data_dir/false_decodes.txt".
4. Reduce sleep delay in decoder() to 10 ms.
------------------------------------------------------------------------
r7929 | k1jt | 2017-07-20 20:23:17 +0100 (Thu, 20 Jul 2017) | 1 line
Fix wording in list of keyboard shortcuts.
------------------------------------------------------------------------
r7930 | k1jt | 2017-07-20 20:25:08 +0100 (Thu, 20 Jul 2017) | 2 lines
Comment out diagnostic write.
------------------------------------------------------------------------
r7931 | k9an | 2017-07-20 22:08:36 +0100 (Thu, 20 Jul 2017) | 1 line
Only print dupes if SNR is higher than what has already been printed.
------------------------------------------------------------------------
r7932 | k9an | 2017-07-21 23:02:06 +0100 (Fri, 21 Jul 2017) | 1 line
Add to the list of allowed keywords in jtmsg.f90.
------------------------------------------------------------------------
r7933 | k9an | 2017-07-22 04:01:09 +0100 (Sat, 22 Jul 2017) | 1 line
Add variables lapon and napwid to control ap decoding. Reconfigure the logic for AP decoding and ordered-statistics decoding.
------------------------------------------------------------------------
r7934 | k9an | 2017-07-22 14:21:03 +0100 (Sat, 22 Jul 2017) | 1 line
Prevent a certain type of non-standard message from being flagged as a false decode.
------------------------------------------------------------------------
r7935 | k9an | 2017-07-22 18:12:48 +0100 (Sat, 22 Jul 2017) | 1 line
More informative end-of-line annotation for AP decodes.
------------------------------------------------------------------------
r7936 | k9an | 2017-07-24 15:23:22 +0100 (Mon, 24 Jul 2017) | 1 line
Bring msk144d2 more up to date. Runs now, but still needs more work.
------------------------------------------------------------------------
r7937 | k1jt | 2017-07-24 15:48:16 +0100 (Mon, 24 Jul 2017) | 2 lines
Correct the spacing between marked lowest and highest FT8 tones for RxFreq (green) and TxFreq (red). 
------------------------------------------------------------------------
r7938 | bsomervi | 2017-07-24 20:27:14 +0100 (Mon, 24 Jul 2017) | 4 lines
Add double clickable push button and radio button widgets
These emit  doubleClicked signal  when double-clicked,  otherwise they
are identical to their super-classes.
------------------------------------------------------------------------
r7939 | bsomervi | 2017-07-24 20:27:23 +0100 (Mon, 24 Jul 2017) | 42 lines
Add the  option to ALT+click  a decoded CQ  or QRZ message  which only
moves the Rx  frequency to theirs, this facilitates  calling a station
who is busy and may have  many callers on their frequency. Updated the
corresponding mouse shortcuts help text.
Allow for times with seconds when parsing fast mode and FT8 decodes.
Exclude the RR73 grid square from  and grid validation or matching, it
is not a grid square any more as  far as WSJT-X is concerned, it is an
RRR substitute.
Add a  simple state  machine for  QSO progress  such that  replies and
auto-sequencing can be better controlled.
Get compound callsign edge cases working again and allow QSOs from and
to compound callsign holders working in as many situations as possible
including  auto-sequencing and  FT8 auto-reply  mode.  This  does mean
that a  "DE W6/K1ABC DM93"  type message close to  a callers Tx  or Rx
frequency will be taken  as a reply to a CQ call  despite it not being
explicitly addressed back to the  CQ caller. Compound callsigns should
work in MSK144 contest  mode also as well as in  short code modes with
some  minor  restrictions   (short  codes  will  not   be  used  where
configuration demands that  a message be used to send  a full compound
callsign).
Auto sequencing  has been made  generic such that  it can be  used for
more than one mode if desired.
Allow the use of free text messages to sign off in auto sequenced QSOs
without the message  being overwritten by the  sequencer. Double click
actions have  been added to the  Tx5 radio and push  buttons to revert
back to the default standard 73 message.
Make DisplayText  class interface  more idiomatic  C++ and  simplify a
bit.
Fixed  some  displayed widget  arrangements  for  different modes  and
sub-modes  so that  they  are  consistent when  starting  up and  when
switching mode or sub-mode.
This is  a big change which  has been extensively tested  but no doubt
there will also be some new defects introduced.
------------------------------------------------------------------------
r7940 | bsomervi | 2017-07-25 17:51:19 +0100 (Tue, 25 Jul 2017) | 1 line
Fix issue with Tx5 not being generated with a new DX Call
------------------------------------------------------------------------
r7941 | bsomervi | 2017-07-25 17:51:27 +0100 (Tue, 25 Jul 2017) | 1 line
Fix country name display that broke in r7939
------------------------------------------------------------------------
r7942 | bsomervi | 2017-07-25 17:51:34 +0100 (Tue, 25 Jul 2017) | 1 line
Ensure JT9 lowest decode frequency spin box is disabled when not available
------------------------------------------------------------------------
r7943 | bsomervi | 2017-07-25 17:51:42 +0100 (Tue, 25 Jul 2017) | 4 lines
Pick up tail-enders when completing a call 1st QSO after re-enabling auto Tx
Allow  any message  to  start  a QSO  so  long as  we  are  not in  an
auto-reply QSO.
------------------------------------------------------------------------
r7944 | bsomervi | 2017-07-25 17:51:49 +0100 (Tue, 25 Jul 2017) | 1 line
Exclude all decode quality markers from internal decode parsing and matching
------------------------------------------------------------------------
r7945 | k9an | 2017-07-25 20:06:05 +0100 (Tue, 25 Jul 2017) | 1 line
Move '?' quality warning to message(22:22).
------------------------------------------------------------------------
r7946 | k9an | 2017-07-25 21:55:13 +0100 (Tue, 25 Jul 2017) | 1 line
Reject candiates with fewer than 7 correct hard-decoded sync symbols.
------------------------------------------------------------------------
r7947 | bsomervi | 2017-07-26 02:38:37 +0100 (Wed, 26 Jul 2017) | 1 line
Force Settings tab to Radio tab when navigating there from a rig error message
------------------------------------------------------------------------
r7948 | bsomervi | 2017-07-26 02:38:44 +0100 (Wed, 26 Jul 2017) | 1 line
Correct the highlighting of the Call 1st check box label
------------------------------------------------------------------------
r7949 | bsomervi | 2017-07-26 02:38:57 +0100 (Wed, 26 Jul 2017) | 5 lines
Option to skip using grid reply message
Enable and disable  by double-clicking the Tx1 button  or the adjacent
radio button.  Tx1 message shows  grayed out  when the Tx1  message is
elided.
------------------------------------------------------------------------
r7950 | bsomervi | 2017-07-26 02:39:04 +0100 (Wed, 26 Jul 2017) | 6 lines
Option to use RR73 grid message as RRR message substitutes
Enable or  disable by double-clicking  the Tx4 button or  the adjacent
radio button. Is auto disabled by a band change as it is expected that
the user  reassess the  conditions to see  if message  repetitions are
unlikely to be needed.
------------------------------------------------------------------------
r7951 | bsomervi | 2017-07-26 02:39:11 +0100 (Wed, 26 Jul 2017) | 1 line
Fix highlighting of the call first check box label
------------------------------------------------------------------------
r7952 | bsomervi | 2017-07-26 02:39:23 +0100 (Wed, 26 Jul 2017) | 1 line
Better behavior and tool tips for Txn buttons and radio buttons
------------------------------------------------------------------------
r7953 | bsomervi | 2017-07-26 02:39:30 +0100 (Wed, 26 Jul 2017) | 1 line
Auto Tx stop when calling a CQer who answers another station on your Tx frequency
------------------------------------------------------------------------
r7954 | bsomervi | 2017-07-26 11:56:12 +0100 (Wed, 26 Jul 2017) | 1 line
Add menu option to turn on AP decoding in FT8 mode
------------------------------------------------------------------------
r7955 | k9an | 2017-07-26 14:05:34 +0100 (Wed, 26 Jul 2017) | 1 line
Enable AP for any decoding level.
------------------------------------------------------------------------
r7956 | k1jt | 2017-07-26 14:44:31 +0100 (Wed, 26 Jul 2017) | 1 line
Remove obsolete test program.
------------------------------------------------------------------------
r7957 | bsomervi | 2017-07-26 22:18:59 +0100 (Wed, 26 Jul 2017) | 11 lines
Use the low confidence decode quality marker to elide spots and pass info via UDP
The UDP  decode and reply message  have been augmented with  a boolean
flag denoting a  low confidence decode when set.  Existing clients can
safely use the  reply message without passing the flag  as the default
value will  still action  messages that have  high confidence.  If low
confidence decodes  are to be passed  back via the reply  message then
the low  confidence flag must be  included and correctly set  to match
the original decode.
See NetworkMessage.hpp for message fields and meanings.
------------------------------------------------------------------------
r7958 | bsomervi | 2017-07-26 22:19:21 +0100 (Wed, 26 Jul 2017) | 3 lines
Add QSO state machine state and tx audio offset to parameters passed to slow decoders
Required to pick best AP masks in FT8 decoder
------------------------------------------------------------------------
r7959 | bsomervi | 2017-07-26 23:03:02 +0100 (Wed, 26 Jul 2017) | 1 line
Extend grids looked up from CALL3.TXT from 4 to 6-digits if first 4 match
------------------------------------------------------------------------
r7960 | k9an | 2017-07-27 16:35:40 +0100 (Thu, 27 Jul 2017) | 1 line
nQSOProgress now controls AP decoding. Needs testing - may not be stable with AP enabled.
------------------------------------------------------------------------
r7961 | k9an | 2017-07-27 19:07:54 +0100 (Thu, 27 Jul 2017) | 1 line
Correct some logic so that AP is only on when selected and so that AP decodes of type 4 or greater are limited to the vicinity of nfqso or nftx.
------------------------------------------------------------------------
r7962 | k1jt | 2017-07-27 19:57:53 +0100 (Thu, 27 Jul 2017) | 2 lines
Remove unused arguments from the call to fix_contest_msg().
------------------------------------------------------------------------
r7963 | k1jt | 2017-07-27 21:17:30 +0100 (Thu, 27 Jul 2017) | 1 line
Working on some features for NA VHF contests.  Not finished!
------------------------------------------------------------------------
r7964 | bsomervi | 2017-07-28 01:00:42 +0100 (Fri, 28 Jul 2017) | 1 line
Fix syntax error in statement function definition
------------------------------------------------------------------------
r7965 | bsomervi | 2017-07-28 02:20:22 +0100 (Fri, 28 Jul 2017) | 6 lines
Revert "Extend grids looked up from CALL3.TXT from 4 to 6-digits if first 4 match"
Bad idea, need to  find a better way to extend  grids to 6-digits from
CALL3.TXT.
This reverts commit r7959
------------------------------------------------------------------------
r7968 | k9an | 2017-07-28 16:35:17 +0100 (Fri, 28 Jul 2017) | 1 line
Comment out diagnostic write to lun 81.
------------------------------------------------------------------------
r7969 | k1jt | 2017-07-28 16:50:13 +0100 (Fri, 28 Jul 2017) | 2 lines
Make 72-bit "contest mode" available in FT8 as well as MSK144.
------------------------------------------------------------------------
r7970 | bsomervi | 2017-07-29 00:25:32 +0100 (Sat, 29 Jul 2017) | 7 lines
Change tolerances for auto stop and auto-sequence of some messages
FT8 auto-stop  will only react to  messages within +/- 50Hz  of our Tx
frequency.
Auto-sequence on  "DE ..." and free  text 73 messages will  respond if
they are within 25Hz of our Tx or Rx frequency.
------------------------------------------------------------------------
r7971 | bsomervi | 2017-07-31 02:28:25 +0100 (Mon, 31 Jul 2017) | 1 line
Add extra hidden string length argument to genft8 interface
------------------------------------------------------------------------
r7972 | bsomervi | 2017-07-31 02:28:33 +0100 (Mon, 31 Jul 2017) | 5 lines
Fix FT8 call first behaviour with "Lock Tx=Rx"
Call first combined with "Lock Tx=Rx" (why would anyone consider doing
that!)   should continue  on the  Tx  frequency of  the station  being
worked and not be switched another calling station's frequency.
------------------------------------------------------------------------
r7973 | k1jt | 2017-08-01 19:01:27 +0100 (Tue, 01 Aug 2017) | 1 line
Utility for generating figure for QST/RadCom article.
------------------------------------------------------------------------
r7974 | k1jt | 2017-08-01 19:16:01 +0100 (Tue, 01 Aug 2017) | 2 lines
Tidy up some details for 72-bit contest mode in FT8.
------------------------------------------------------------------------
r7975 | k1jt | 2017-08-01 19:46:12 +0100 (Tue, 01 Aug 2017) | 2 lines
Don't highlight FT8 contest-mode Tx3 message as a free-text message.
------------------------------------------------------------------------
r7976 | k1jt | 2017-08-01 20:32:54 +0100 (Tue, 01 Aug 2017) | 2 lines
Fix the "F4" shortcut description; add usage advuice to "Lock Tx=Rx" tool tip.
------------------------------------------------------------------------
r7980 | k1jt | 2017-08-02 15:05:37 +0100 (Wed, 02 Aug 2017) | 2 lines
Enable "nagain" for FT8, as in other modes.
------------------------------------------------------------------------
r7987 | k1jt | 2017-08-02 20:23:42 +0100 (Wed, 02 Aug 2017) | 2 lines
Updates to the WSJT-X User Guide for Version 1.8.
------------------------------------------------------------------------
r7988 | k1jt | 2017-08-02 20:27:43 +0100 (Wed, 02 Aug 2017) | 2 lines
Add several new screen shots.
------------------------------------------------------------------------
r7989 | k1jt | 2017-08-02 21:43:06 +0100 (Wed, 02 Aug 2017) | 2 lines
Allow auto-seq in QRA64 mode; updates to User Guide.
------------------------------------------------------------------------
r7992 | bsomervi | 2017-08-03 12:23:07 +0100 (Thu, 03 Aug 2017) | 7 lines
Fix an issue with VFO tuning while running Doppler correction
Holding down  the SHIFT  key while  tuning the  rig should  update the
nominal  sked frequency,  not holding  done the  SHIFT key  should not
update the  sked frequency. This  is not  yet perfect and  sometimes a
change to the nominal sked frequency can  get through but it is a rare
as yet unfound race condition.
------------------------------------------------------------------------
r7993 | k9an | 2017-08-03 15:46:21 +0100 (Thu, 03 Aug 2017) | 1 line
1. Use norder=3 for nagain, 2. Renumber aptypes.
------------------------------------------------------------------------
r7994 | k1jt | 2017-08-03 15:48:59 +0100 (Thu, 03 Aug 2017) | 2 lines
Remove the "Weak" checkbox from GUI, it's not implemented. 
------------------------------------------------------------------------
r7995 | k1jt | 2017-08-03 16:12:30 +0100 (Thu, 03 Aug 2017) | 2 lines
More updates to the WSJT-X User Guide.
------------------------------------------------------------------------
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx-1.8@7996 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
											
										 
										
											2017-08-03 16:42:10 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 *      as a one of these messages  with the 'New' field set to false.
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      See  the "Replay"  message below  for details  of usage.   Low
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      confidence decodes are flagged  in protocols where the decoder
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      has knows that  a decode has a higher  than normal probability
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      of  being  false, they  should  not  be reported  on  publicly
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      accessible services  without some attached warning  or further
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      validation.
							 | 
						
					
						
							
								
									
										
										
										
											2015-05-10 12:02:14 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 *
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *
							 | 
						
					
						
							
								
									
										
										
										
											2015-04-15 16:40:49 +00:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 * Clear         Out       3                      quint32
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *                         Id (unique key)        utf8
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *
							 | 
						
					
						
							
								
									
										
										
										
											2015-11-13 15:44:11 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 *      This message is  send when all prior "Decode"  messages in the
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      "Band activity"  window have been discarded  and therefore are
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      no long available for actioning  with a "Reply" message. It is
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      sent when the user erases  the "Band activity" window and when
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      WSJT-X  closes down  normally. The  server should  discard all
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      decode messages upon receipt of this message.
							 | 
						
					
						
							
								
									
										
										
										
											2015-05-10 12:02:14 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 *
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *
							 | 
						
					
						
							
								
									
										
										
										
											2015-04-15 16:40:49 +00:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 * Reply         In        4                      quint32
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *                         Id (target unique key) utf8
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *                         Time                   QTime
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *                         snr                    qint32
							 | 
						
					
						
							
								
									
										
										
										
											2015-05-06 22:25:56 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 *                         Delta time (S)         float (serialized as double)
							 | 
						
					
						
							
								
									
										
										
										
											2015-04-15 16:40:49 +00:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *                         Delta frequency (Hz)   quint32
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *                         Mode                   utf8
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *                         Message                utf8
							 | 
						
					
						
							
								
									
										
											 
										 
										
											
												Merged from trunk:
------------------------------------------------------------------------
r7861 | k9an | 2017-07-12 22:49:39 +0100 (Wed, 12 Jul 2017) | 1 line
Use quarter-symbol steps for time sync. Lower sync threshold. Implement subtraction and two pass decoding. Use osd2 only near nfqso.
------------------------------------------------------------------------
r7862 | k9an | 2017-07-13 01:28:57 +0100 (Thu, 13 Jul 2017) | 1 line
Fix NHSYM.
------------------------------------------------------------------------
r7863 | k9an | 2017-07-13 01:31:52 +0100 (Thu, 13 Jul 2017) | 1 line
Fix a comment. No code changes.
------------------------------------------------------------------------
r7864 | k9an | 2017-07-13 01:43:56 +0100 (Thu, 13 Jul 2017) | 1 line
Fix another bounds error.
------------------------------------------------------------------------
r7879 | k1jt | 2017-07-14 17:02:01 +0100 (Fri, 14 Jul 2017) | 1 line
Code cleanup and test ofFT8 decodes with erasures.  Do not use on the air.
------------------------------------------------------------------------
r7881 | k1jt | 2017-07-14 19:19:48 +0100 (Fri, 14 Jul 2017) | 1 line
Fix nutc in jt9; alternative sync value for late-start FT8 signals.
------------------------------------------------------------------------
r7882 | k9an | 2017-07-14 20:22:53 +0100 (Fri, 14 Jul 2017) | 1 line
Move ft8apset to a separate file.
------------------------------------------------------------------------
r7884 | k9an | 2017-07-14 20:35:22 +0100 (Fri, 14 Jul 2017) | 1 line
Add ft8apset.f90.
------------------------------------------------------------------------
r7885 | k9an | 2017-07-14 20:46:04 +0100 (Fri, 14 Jul 2017) | 1 line
Update call to ft8b.
------------------------------------------------------------------------
r7886 | k9an | 2017-07-14 21:12:29 +0100 (Fri, 14 Jul 2017) | 1 line
More work on ap.
------------------------------------------------------------------------
r7887 | k9an | 2017-07-14 23:09:50 +0100 (Fri, 14 Jul 2017) | 1 line
More work on AP. Deep decode is unstable - not for use on the air.
------------------------------------------------------------------------
r7890 | k9an | 2017-07-15 01:33:25 +0100 (Sat, 15 Jul 2017) | 1 line
Turn off ap.
------------------------------------------------------------------------
r7891 | k9an | 2017-07-15 02:49:44 +0100 (Sat, 15 Jul 2017) | 1 line
Add some more items to the lun 81 diagnostics.
------------------------------------------------------------------------
r7892 | k9an | 2017-07-15 15:21:18 +0100 (Sat, 15 Jul 2017) | 1 line
Properly calculate metrics for non-ap bits that reside in symbols that contain ap bits.
------------------------------------------------------------------------
r7893 | k9an | 2017-07-15 16:43:41 +0100 (Sat, 15 Jul 2017) | 1 line
Use overlap and add to apply reference filter/amplitude equalization.
------------------------------------------------------------------------
r7894 | k9an | 2017-07-15 16:46:46 +0100 (Sat, 15 Jul 2017) | 1 line
Improve a comment.
------------------------------------------------------------------------
r7895 | k9an | 2017-07-16 01:10:37 +0100 (Sun, 16 Jul 2017) | 1 line
Make refspec filter causal for overlap and add.
------------------------------------------------------------------------
r7911 | k9an | 2017-07-16 16:56:06 +0100 (Sun, 16 Jul 2017) | 1 line
More work on Deep decoding.
------------------------------------------------------------------------
r7917 | k9an | 2017-07-16 18:08:09 +0100 (Sun, 16 Jul 2017) | 1 line
Properly round the printed snr.
------------------------------------------------------------------------
r7925 | k9an | 2017-07-18 02:12:11 +0100 (Tue, 18 Jul 2017) | 1 line
Work on ap decoding. Diagnostic write enabled.
------------------------------------------------------------------------
r7926 | k9an | 2017-07-18 16:22:20 +0100 (Tue, 18 Jul 2017) | 1 line
Fix a bug in AP decoding when iaptype=2. Decrease time-sync search range to +/- 1.5s. Fix a big with erasure decoding.
------------------------------------------------------------------------
r7927 | k1jt | 2017-07-20 00:23:20 +0100 (Thu, 20 Jul 2017) | 1 line
Remove slider next to audio level meter.
------------------------------------------------------------------------
r7928 | k1jt | 2017-07-20 16:15:00 +0100 (Thu, 20 Jul 2017) | 6 lines
1. Alt+F8 arms "Call 1st" as if a CQ had been sent.
2. "Call 1st" label turns red when armed to respond to a caller.
3. Suppress some recognizable false decodes, send them to cumulative file
   "data_dir/false_decodes.txt".
4. Reduce sleep delay in decoder() to 10 ms.
------------------------------------------------------------------------
r7929 | k1jt | 2017-07-20 20:23:17 +0100 (Thu, 20 Jul 2017) | 1 line
Fix wording in list of keyboard shortcuts.
------------------------------------------------------------------------
r7930 | k1jt | 2017-07-20 20:25:08 +0100 (Thu, 20 Jul 2017) | 2 lines
Comment out diagnostic write.
------------------------------------------------------------------------
r7931 | k9an | 2017-07-20 22:08:36 +0100 (Thu, 20 Jul 2017) | 1 line
Only print dupes if SNR is higher than what has already been printed.
------------------------------------------------------------------------
r7932 | k9an | 2017-07-21 23:02:06 +0100 (Fri, 21 Jul 2017) | 1 line
Add to the list of allowed keywords in jtmsg.f90.
------------------------------------------------------------------------
r7933 | k9an | 2017-07-22 04:01:09 +0100 (Sat, 22 Jul 2017) | 1 line
Add variables lapon and napwid to control ap decoding. Reconfigure the logic for AP decoding and ordered-statistics decoding.
------------------------------------------------------------------------
r7934 | k9an | 2017-07-22 14:21:03 +0100 (Sat, 22 Jul 2017) | 1 line
Prevent a certain type of non-standard message from being flagged as a false decode.
------------------------------------------------------------------------
r7935 | k9an | 2017-07-22 18:12:48 +0100 (Sat, 22 Jul 2017) | 1 line
More informative end-of-line annotation for AP decodes.
------------------------------------------------------------------------
r7936 | k9an | 2017-07-24 15:23:22 +0100 (Mon, 24 Jul 2017) | 1 line
Bring msk144d2 more up to date. Runs now, but still needs more work.
------------------------------------------------------------------------
r7937 | k1jt | 2017-07-24 15:48:16 +0100 (Mon, 24 Jul 2017) | 2 lines
Correct the spacing between marked lowest and highest FT8 tones for RxFreq (green) and TxFreq (red). 
------------------------------------------------------------------------
r7938 | bsomervi | 2017-07-24 20:27:14 +0100 (Mon, 24 Jul 2017) | 4 lines
Add double clickable push button and radio button widgets
These emit  doubleClicked signal  when double-clicked,  otherwise they
are identical to their super-classes.
------------------------------------------------------------------------
r7939 | bsomervi | 2017-07-24 20:27:23 +0100 (Mon, 24 Jul 2017) | 42 lines
Add the  option to ALT+click  a decoded CQ  or QRZ message  which only
moves the Rx  frequency to theirs, this facilitates  calling a station
who is busy and may have  many callers on their frequency. Updated the
corresponding mouse shortcuts help text.
Allow for times with seconds when parsing fast mode and FT8 decodes.
Exclude the RR73 grid square from  and grid validation or matching, it
is not a grid square any more as  far as WSJT-X is concerned, it is an
RRR substitute.
Add a  simple state  machine for  QSO progress  such that  replies and
auto-sequencing can be better controlled.
Get compound callsign edge cases working again and allow QSOs from and
to compound callsign holders working in as many situations as possible
including  auto-sequencing and  FT8 auto-reply  mode.  This  does mean
that a  "DE W6/K1ABC DM93"  type message close to  a callers Tx  or Rx
frequency will be taken  as a reply to a CQ call  despite it not being
explicitly addressed back to the  CQ caller. Compound callsigns should
work in MSK144 contest  mode also as well as in  short code modes with
some  minor  restrictions   (short  codes  will  not   be  used  where
configuration demands that  a message be used to send  a full compound
callsign).
Auto sequencing  has been made  generic such that  it can be  used for
more than one mode if desired.
Allow the use of free text messages to sign off in auto sequenced QSOs
without the message  being overwritten by the  sequencer. Double click
actions have  been added to the  Tx5 radio and push  buttons to revert
back to the default standard 73 message.
Make DisplayText  class interface  more idiomatic  C++ and  simplify a
bit.
Fixed  some  displayed widget  arrangements  for  different modes  and
sub-modes  so that  they  are  consistent when  starting  up and  when
switching mode or sub-mode.
This is  a big change which  has been extensively tested  but no doubt
there will also be some new defects introduced.
------------------------------------------------------------------------
r7940 | bsomervi | 2017-07-25 17:51:19 +0100 (Tue, 25 Jul 2017) | 1 line
Fix issue with Tx5 not being generated with a new DX Call
------------------------------------------------------------------------
r7941 | bsomervi | 2017-07-25 17:51:27 +0100 (Tue, 25 Jul 2017) | 1 line
Fix country name display that broke in r7939
------------------------------------------------------------------------
r7942 | bsomervi | 2017-07-25 17:51:34 +0100 (Tue, 25 Jul 2017) | 1 line
Ensure JT9 lowest decode frequency spin box is disabled when not available
------------------------------------------------------------------------
r7943 | bsomervi | 2017-07-25 17:51:42 +0100 (Tue, 25 Jul 2017) | 4 lines
Pick up tail-enders when completing a call 1st QSO after re-enabling auto Tx
Allow  any message  to  start  a QSO  so  long as  we  are  not in  an
auto-reply QSO.
------------------------------------------------------------------------
r7944 | bsomervi | 2017-07-25 17:51:49 +0100 (Tue, 25 Jul 2017) | 1 line
Exclude all decode quality markers from internal decode parsing and matching
------------------------------------------------------------------------
r7945 | k9an | 2017-07-25 20:06:05 +0100 (Tue, 25 Jul 2017) | 1 line
Move '?' quality warning to message(22:22).
------------------------------------------------------------------------
r7946 | k9an | 2017-07-25 21:55:13 +0100 (Tue, 25 Jul 2017) | 1 line
Reject candiates with fewer than 7 correct hard-decoded sync symbols.
------------------------------------------------------------------------
r7947 | bsomervi | 2017-07-26 02:38:37 +0100 (Wed, 26 Jul 2017) | 1 line
Force Settings tab to Radio tab when navigating there from a rig error message
------------------------------------------------------------------------
r7948 | bsomervi | 2017-07-26 02:38:44 +0100 (Wed, 26 Jul 2017) | 1 line
Correct the highlighting of the Call 1st check box label
------------------------------------------------------------------------
r7949 | bsomervi | 2017-07-26 02:38:57 +0100 (Wed, 26 Jul 2017) | 5 lines
Option to skip using grid reply message
Enable and disable  by double-clicking the Tx1 button  or the adjacent
radio button.  Tx1 message shows  grayed out  when the Tx1  message is
elided.
------------------------------------------------------------------------
r7950 | bsomervi | 2017-07-26 02:39:04 +0100 (Wed, 26 Jul 2017) | 6 lines
Option to use RR73 grid message as RRR message substitutes
Enable or  disable by double-clicking  the Tx4 button or  the adjacent
radio button. Is auto disabled by a band change as it is expected that
the user  reassess the  conditions to see  if message  repetitions are
unlikely to be needed.
------------------------------------------------------------------------
r7951 | bsomervi | 2017-07-26 02:39:11 +0100 (Wed, 26 Jul 2017) | 1 line
Fix highlighting of the call first check box label
------------------------------------------------------------------------
r7952 | bsomervi | 2017-07-26 02:39:23 +0100 (Wed, 26 Jul 2017) | 1 line
Better behavior and tool tips for Txn buttons and radio buttons
------------------------------------------------------------------------
r7953 | bsomervi | 2017-07-26 02:39:30 +0100 (Wed, 26 Jul 2017) | 1 line
Auto Tx stop when calling a CQer who answers another station on your Tx frequency
------------------------------------------------------------------------
r7954 | bsomervi | 2017-07-26 11:56:12 +0100 (Wed, 26 Jul 2017) | 1 line
Add menu option to turn on AP decoding in FT8 mode
------------------------------------------------------------------------
r7955 | k9an | 2017-07-26 14:05:34 +0100 (Wed, 26 Jul 2017) | 1 line
Enable AP for any decoding level.
------------------------------------------------------------------------
r7956 | k1jt | 2017-07-26 14:44:31 +0100 (Wed, 26 Jul 2017) | 1 line
Remove obsolete test program.
------------------------------------------------------------------------
r7957 | bsomervi | 2017-07-26 22:18:59 +0100 (Wed, 26 Jul 2017) | 11 lines
Use the low confidence decode quality marker to elide spots and pass info via UDP
The UDP  decode and reply message  have been augmented with  a boolean
flag denoting a  low confidence decode when set.  Existing clients can
safely use the  reply message without passing the flag  as the default
value will  still action  messages that have  high confidence.  If low
confidence decodes  are to be passed  back via the reply  message then
the low  confidence flag must be  included and correctly set  to match
the original decode.
See NetworkMessage.hpp for message fields and meanings.
------------------------------------------------------------------------
r7958 | bsomervi | 2017-07-26 22:19:21 +0100 (Wed, 26 Jul 2017) | 3 lines
Add QSO state machine state and tx audio offset to parameters passed to slow decoders
Required to pick best AP masks in FT8 decoder
------------------------------------------------------------------------
r7959 | bsomervi | 2017-07-26 23:03:02 +0100 (Wed, 26 Jul 2017) | 1 line
Extend grids looked up from CALL3.TXT from 4 to 6-digits if first 4 match
------------------------------------------------------------------------
r7960 | k9an | 2017-07-27 16:35:40 +0100 (Thu, 27 Jul 2017) | 1 line
nQSOProgress now controls AP decoding. Needs testing - may not be stable with AP enabled.
------------------------------------------------------------------------
r7961 | k9an | 2017-07-27 19:07:54 +0100 (Thu, 27 Jul 2017) | 1 line
Correct some logic so that AP is only on when selected and so that AP decodes of type 4 or greater are limited to the vicinity of nfqso or nftx.
------------------------------------------------------------------------
r7962 | k1jt | 2017-07-27 19:57:53 +0100 (Thu, 27 Jul 2017) | 2 lines
Remove unused arguments from the call to fix_contest_msg().
------------------------------------------------------------------------
r7963 | k1jt | 2017-07-27 21:17:30 +0100 (Thu, 27 Jul 2017) | 1 line
Working on some features for NA VHF contests.  Not finished!
------------------------------------------------------------------------
r7964 | bsomervi | 2017-07-28 01:00:42 +0100 (Fri, 28 Jul 2017) | 1 line
Fix syntax error in statement function definition
------------------------------------------------------------------------
r7965 | bsomervi | 2017-07-28 02:20:22 +0100 (Fri, 28 Jul 2017) | 6 lines
Revert "Extend grids looked up from CALL3.TXT from 4 to 6-digits if first 4 match"
Bad idea, need to  find a better way to extend  grids to 6-digits from
CALL3.TXT.
This reverts commit r7959
------------------------------------------------------------------------
r7968 | k9an | 2017-07-28 16:35:17 +0100 (Fri, 28 Jul 2017) | 1 line
Comment out diagnostic write to lun 81.
------------------------------------------------------------------------
r7969 | k1jt | 2017-07-28 16:50:13 +0100 (Fri, 28 Jul 2017) | 2 lines
Make 72-bit "contest mode" available in FT8 as well as MSK144.
------------------------------------------------------------------------
r7970 | bsomervi | 2017-07-29 00:25:32 +0100 (Sat, 29 Jul 2017) | 7 lines
Change tolerances for auto stop and auto-sequence of some messages
FT8 auto-stop  will only react to  messages within +/- 50Hz  of our Tx
frequency.
Auto-sequence on  "DE ..." and free  text 73 messages will  respond if
they are within 25Hz of our Tx or Rx frequency.
------------------------------------------------------------------------
r7971 | bsomervi | 2017-07-31 02:28:25 +0100 (Mon, 31 Jul 2017) | 1 line
Add extra hidden string length argument to genft8 interface
------------------------------------------------------------------------
r7972 | bsomervi | 2017-07-31 02:28:33 +0100 (Mon, 31 Jul 2017) | 5 lines
Fix FT8 call first behaviour with "Lock Tx=Rx"
Call first combined with "Lock Tx=Rx" (why would anyone consider doing
that!)   should continue  on the  Tx  frequency of  the station  being
worked and not be switched another calling station's frequency.
------------------------------------------------------------------------
r7973 | k1jt | 2017-08-01 19:01:27 +0100 (Tue, 01 Aug 2017) | 1 line
Utility for generating figure for QST/RadCom article.
------------------------------------------------------------------------
r7974 | k1jt | 2017-08-01 19:16:01 +0100 (Tue, 01 Aug 2017) | 2 lines
Tidy up some details for 72-bit contest mode in FT8.
------------------------------------------------------------------------
r7975 | k1jt | 2017-08-01 19:46:12 +0100 (Tue, 01 Aug 2017) | 2 lines
Don't highlight FT8 contest-mode Tx3 message as a free-text message.
------------------------------------------------------------------------
r7976 | k1jt | 2017-08-01 20:32:54 +0100 (Tue, 01 Aug 2017) | 2 lines
Fix the "F4" shortcut description; add usage advuice to "Lock Tx=Rx" tool tip.
------------------------------------------------------------------------
r7980 | k1jt | 2017-08-02 15:05:37 +0100 (Wed, 02 Aug 2017) | 2 lines
Enable "nagain" for FT8, as in other modes.
------------------------------------------------------------------------
r7987 | k1jt | 2017-08-02 20:23:42 +0100 (Wed, 02 Aug 2017) | 2 lines
Updates to the WSJT-X User Guide for Version 1.8.
------------------------------------------------------------------------
r7988 | k1jt | 2017-08-02 20:27:43 +0100 (Wed, 02 Aug 2017) | 2 lines
Add several new screen shots.
------------------------------------------------------------------------
r7989 | k1jt | 2017-08-02 21:43:06 +0100 (Wed, 02 Aug 2017) | 2 lines
Allow auto-seq in QRA64 mode; updates to User Guide.
------------------------------------------------------------------------
r7992 | bsomervi | 2017-08-03 12:23:07 +0100 (Thu, 03 Aug 2017) | 7 lines
Fix an issue with VFO tuning while running Doppler correction
Holding down  the SHIFT  key while  tuning the  rig should  update the
nominal  sked frequency,  not holding  done the  SHIFT key  should not
update the  sked frequency. This  is not  yet perfect and  sometimes a
change to the nominal sked frequency can  get through but it is a rare
as yet unfound race condition.
------------------------------------------------------------------------
r7993 | k9an | 2017-08-03 15:46:21 +0100 (Thu, 03 Aug 2017) | 1 line
1. Use norder=3 for nagain, 2. Renumber aptypes.
------------------------------------------------------------------------
r7994 | k1jt | 2017-08-03 15:48:59 +0100 (Thu, 03 Aug 2017) | 2 lines
Remove the "Weak" checkbox from GUI, it's not implemented. 
------------------------------------------------------------------------
r7995 | k1jt | 2017-08-03 16:12:30 +0100 (Thu, 03 Aug 2017) | 2 lines
More updates to the WSJT-X User Guide.
------------------------------------------------------------------------
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx-1.8@7996 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
											
										 
										
											2017-08-03 16:42:10 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 *                         Low confidence         bool
							 | 
						
					
						
							
								
									
										
										
										
											2015-04-15 16:40:49 +00:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *
							 | 
						
					
						
							
								
									
										
										
										
											2015-11-13 15:44:11 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 *      In order for a server  to provide a useful cooperative service
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      to WSJT-X it  is possible for it to initiate  a QSO by sending
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      this message to a client. WSJT-X filters this message and only
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      acts upon it  if the message exactly describes  a prior decode
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      and that decode  is a CQ or QRZ message.   The action taken is
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      exactly equivalent to the user  double clicking the message in
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      the "Band activity" window. The  intent of this message is for
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      servers to be able to provide an advanced look up of potential
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      QSO partners, for example determining if they have been worked
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      before  or if  working them  may advance  some objective  like
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      award progress.  The  intention is not to  provide a secondary
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      user  interface for  WSJT-X,  it is  expected  that after  QSO
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      initiation the rest  of the QSO is carried  out manually using
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      the normal WSJT-X user interface.
							 | 
						
					
						
							
								
									
										
										
										
											2015-05-10 12:02:14 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 *
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *
							 | 
						
					
						
							
								
									
										
										
										
											2015-04-15 16:40:49 +00:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 * QSO Logged    Out       5                      quint32
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *                         Id (unique key)        utf8
							 | 
						
					
						
							
								
									
										
										
										
											2016-12-30 15:45:31 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 *                         Date & Time Off        QDateTime
							 | 
						
					
						
							
								
									
										
										
										
											2015-04-15 16:40:49 +00:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *                         DX call                utf8
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *                         DX grid                utf8
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *                         Dial frequency (Hz)    quint64
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *                         Mode                   utf8
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *                         Report send            utf8
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *                         Report received        utf8
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *                         Tx power               utf8
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *                         Comments               utf8
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *                         Name                   utf8
							 | 
						
					
						
							
								
									
										
										
										
											2016-12-30 15:45:31 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 *                         Date & Time On         QDateTime
							 | 
						
					
						
							
								
									
										
										
										
											2015-04-15 16:40:49 +00:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *
							 | 
						
					
						
							
								
									
										
										
										
											2015-11-13 15:44:11 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 *      The  QSO logged  message is  sent  to the  server(s) when  the
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      WSJT-X user accepts the "Log  QSO" dialog by clicking the "OK"
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      button.
							 | 
						
					
						
							
								
									
										
										
										
											2015-05-10 12:02:14 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 *
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *
							 | 
						
					
						
							
								
									
										
										
										
											2015-04-15 16:40:49 +00:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 * Close         Out       6                      quint32
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *                         Id (unique key)        utf8
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *
							 | 
						
					
						
							
								
									
										
										
										
											2015-11-13 15:44:11 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 *      Close is sent by a client immediately prior to it shutting
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      down gracefully.
							 | 
						
					
						
							
								
									
										
										
										
											2015-05-10 12:02:14 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 *
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *
							 | 
						
					
						
							
								
									
										
										
										
											2015-04-15 16:40:49 +00:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 * Replay        In        7                      quint32
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *                         Id (unique key)        utf8
							 | 
						
					
						
							
								
									
										
										
										
											2015-05-06 20:30:29 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 *
							 | 
						
					
						
							
								
									
										
										
										
											2015-11-13 15:44:11 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 *      When a server starts it may  be useful for it to determine the
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      state  of preexisting  clients. Sending  this message  to each
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      client as it is discovered  will cause that client (WSJT-X) to
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      send a "Decode" message for each decode currently in its "Band
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      activity"  window. Each  "Decode" message  sent will  have the
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      "New" flag set to false so that they can be distinguished from
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      new decodes. After  all the old decodes have  been broadcast a
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      "Status" message  is also broadcast.  If the server  wishes to
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      determine  the  status  of  a newly  discovered  client;  this
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      message should be used.
							 | 
						
					
						
							
								
									
										
										
										
											2015-05-10 12:02:14 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 *
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *
							 | 
						
					
						
							
								
									
										
										
										
											2015-05-06 20:30:29 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 * Halt Tx       In        8
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *                         Id (unique key)        utf8
							 | 
						
					
						
							
								
									
										
										
										
											2015-05-06 22:25:56 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 *                         Auto Tx Only           bool
							 | 
						
					
						
							
								
									
										
										
										
											2015-05-06 20:30:29 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 *
							 | 
						
					
						
							
								
									
										
										
										
											2015-11-13 15:44:11 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 *      The server may stop a client from transmitting messages either
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      immediately or at  the end of the  current transmission period
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      using this message.
							 | 
						
					
						
							
								
									
										
										
										
											2015-05-10 12:02:14 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 *
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *
							 | 
						
					
						
							
								
									
										
										
										
											2015-05-06 20:30:29 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 * Free Text     In        9
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *                         Id (unique key)        utf8
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *                         Text                   utf8
							 | 
						
					
						
							
								
									
										
										
										
											2015-05-28 17:33:39 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 *                         Send                   bool
							 | 
						
					
						
							
								
									
										
										
										
											2015-05-10 12:02:14 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 *
							 | 
						
					
						
							
								
									
										
										
										
											2015-11-13 15:44:11 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 *      This message  allows the server  to set the current  free text
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      message content. Sending this  message with a non-empty "Text"
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      field is equivalent to typing  a new message (old contents are
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      discarded) in to  the WSJT-X free text message  field or "Tx5"
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      field (both  are updated) and if  the "Send" flag is  set then
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      clicking the "Now" radio button for the "Tx5" field if tab one
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      is current or clicking the "Free  msg" radio button if tab two
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      is current.
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      It is the responsibility of the  sender to limit the length of
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      the  message   text  and   to  limit   it  to   legal  message
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      characters. Despite this,  it may be difficult  for the sender
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      to determine the maximum message length without reimplementing
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      the complete message encoding protocol. Because of this is may
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      be better  to allow any  reasonable message length and  to let
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      the WSJT-X application encode and possibly truncate the actual
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      on-air message.
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      If the  message text is  empty the  meaning of the  message is
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      refined  to send  the  current free  text  unchanged when  the
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      "Send" flag is set or to  clear the current free text when the
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      "Send" flag is  unset.  Note that this API does  not include a
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      command to  determine the  contents of  the current  free text
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      message.
							 | 
						
					
						
							
								
									
										
										
										
											2015-10-21 18:56:29 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 *
							 | 
						
					
						
							
								
									
										
										
										
											2015-11-15 23:03:11 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								 * WSPRDecode    Out       10                     quint32
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *                         Id (unique key)        utf8
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *                         New                    bool
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *                         Time                   QTime
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *                         snr                    qint32
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *                         Delta time (S)         float (serialized as double)
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *                         Frequency (Hz)         quint64
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *                         Drift (Hz)             qint32
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *                         Callsign               utf8
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *                         Grid                   utf8
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *                         Power (dBm)            qint32
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      The decode message is sent when  a new decode is completed, in
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      this case the 'New' field is true. It is also used in response
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      to  a "Replay"  message where  each  old decode  in the  "Band
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      activity" window, that  has not been erased, is  sent in order
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      as  a one  of  these  messages with  the  'New'  field set  to
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *      false. See the "Replay" message below for details of usage.
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 *
							 | 
						
					
						
							
								
									
										
										
										
											2015-04-15 16:40:49 +00:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								 */
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								#include <QDataStream>
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								#include "pimpl_h.hpp"
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								class QIODevice;
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								class QByteArray;
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								class QString;
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								namespace NetworkMessage
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								{
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								  // NEVER DELETE MESSAGE TYPES
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								  enum Type
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    {
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								      Heartbeat,
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								      Status,
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								      Decode,
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								      Clear,
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								      Reply,
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								      QSOLogged,
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								      Close,
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								      Replay,
							 | 
						
					
						
							
								
									
										
										
										
											2015-05-06 20:30:29 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								      HaltTx,
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								      FreeText,
							 | 
						
					
						
							
								
									
										
										
										
											2015-11-15 23:03:11 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								      WSPRDecode,
							 | 
						
					
						
							
								
									
										
										
										
											2015-04-15 16:40:49 +00:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								      maximum_message_type_     // ONLY add new message types
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								                                // immediately before here
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    };
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								  quint32 constexpr pulse {15}; // seconds
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								  //
							 | 
						
					
						
							
								
									
										
										
										
											2015-10-21 18:56:29 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								  // NetworkMessage::Builder - build a message containing serialized Qt types
							 | 
						
					
						
							
								
									
										
										
										
											2015-04-15 16:40:49 +00:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								  //
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								  class Builder
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    : public QDataStream
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								  {
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								  public:
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    static quint32 constexpr magic {0xadbccbda}; // never change this
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    // increment this if a newer Qt schema is required and add decode
							 | 
						
					
						
							
								
									
										
										
										
											2015-10-21 18:56:29 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								    // logic to the Builder and Reader class implementations
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								#if QT_VERSION >= 0x050400
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    static quint32 constexpr schema_number {3};
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								#elif QT_VERSION >= 0x050200
							 | 
						
					
						
							
								
									
										
										
										
											2015-04-16 22:17:14 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								    static quint32 constexpr schema_number {2};
							 | 
						
					
						
							
								
									
										
										
										
											2015-10-21 18:56:29 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								#else
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    // Schema 1 (Qt_5_0) is broken
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								#error "Qt version 5.2 or greater required"
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								#endif
							 | 
						
					
						
							
								
									
										
										
										
											2015-04-15 16:40:49 +00:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								
							 | 
						
					
						
							
								
									
										
										
										
											2015-10-21 18:56:29 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								    explicit Builder (QIODevice *, Type, QString const& id, quint32 schema);
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    explicit Builder (QByteArray *, Type, QString const& id, quint32 schema);
							 | 
						
					
						
							
								
									
										
										
										
											2015-04-15 16:40:49 +00:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    Builder (Builder const&) = delete;
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    Builder& operator = (Builder const&) = delete;
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								  private:
							 | 
						
					
						
							
								
									
										
										
										
											2015-10-21 18:56:29 +00:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								    void common_initialization (Type type, QString const& id, quint32 schema);
							 | 
						
					
						
							
								
									
										
										
										
											2015-04-15 16:40:49 +00:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								  };
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								  //
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								  // NetworkMessage::Reader - read a message containing serialized Qt types
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								  //
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								  // Message  is as  per NetworkMessage::Builder  above, the  schema()
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								  // member  may be  used  to  determine the  schema  of the  original
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								  // message.
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								  //
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								  class Reader
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    : public QDataStream
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								  {
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								  public:
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    explicit Reader (QIODevice *);
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    explicit Reader (QByteArray const&);
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    Reader (Reader const&) = delete;
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    Reader& operator = (Reader const&) = delete;
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    ~Reader ();
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    quint32 schema () const;
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    Type type () const;
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    QString id () const;
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								  private:
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    class impl;
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								    pimpl<impl> m_;
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								  };
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								}
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								#endif
							 |