Hi John,
Thanks for the suggested enhancement. Before we get to more detailed
review, perhaps you can describe how you handle 4-character locators
that span include more than one US state.
-- Joe, K1JT
On 11/18/2021 1:12 PM, John Korpal via wsjt-devel wrote:
Grid Locator to State Mapping Enhancement
The following is a description of the enhancement to WSJT-x -2.5.2 that
maps the grid locator in the message to be mapped to the state located
in that grid.
Why
The grid to state mapping helps the operator to know what state are
located within that grid. This helps when the operator is working on WAS
for that band. He then knows which stations he needs to focus on and
which ones he can work later.
How does the mapping work?
There is a grid to state file called grid.dat. it is in the same format
as the cty.dat file. This grid.dat file is read into two grid tables
(gridPrefix and gridState). The first two characters of the grid locator
is the two characters (A-Z) and is refer as the grid prefix. The second
two characters are numbers (0-1) and are refer as the grid index. When a
message is received with a grid locator in the message the grid prefix
is used to perform a binary search of the gridPrefix table. This table
is small (currenly only 25 entries) so the search is fast. This finds a
one of the indexes for the second table the gridState table. The second
index is obtained from the grid index of the grid locator. The gridState
table contain string of the states that as within that grid.
#define maxPrefix 25 //NJ0A
#define maxIndex 100 //NJ0A
QString gridPrefix [maxPrefix]; //NJ0A
QString gridState [maxPrefix] [maxIndex]; //NJ0A
int gridNumPrefix; //NJ0A
What has changed
The following files were added to WSJT-X-2.5.2
1.grid.dat
The following files were modified to WSJT-X-2.5.2
2.CMakeList.txt
a.Grid.dat was added
3.Logbook/AD1CCTY.cpp
a.Add gridPrifix and gridState tables.
b.Read in the grid.dat file into gridPrefix and gridState table
c.Add member findState that will parse the grid locator to state.
4.Logbook/ADQCCTY.hpp
a.Add findState to class
5.Widgets/displaytext.cpp
a.In displayDecodedText make call to logbook.contries()->findStat(dxGrid)
b.Add state to message
6.Configuration.ui/Configuration.cpp/Configuration.hpp
a.Added two switches to turn on/off this feature.
b.
Graphical user interface, text, application, email Description
automatically generated
A picture containing application Description automatically generated
I have fork the of the current wsjtx-2.5.2 into my branch
(jlkorpal/wsjt). Your can review the changes there. Also I have build
packages for MAC and window in my source forge account (jlkorpal)
https://sourceforge.net/projects/jlk-wsjtx/files/
<https://sourceforge.net/projects/jlk-wsjtx/files/>. Another ham (K6FA)
and I have been running the enhancement for close to two years and have
seen no issue today.
I wanted to run this by the group before request a merge.
John (NJ0A)
_______________________________________________
wsjt-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/wsjt-devel
_______________________________________________
wsjt-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/wsjt-devel