2
* Tlf - contest logging program for amateur radio operators
3
* Copyright (C) 2011 Thomas Beierlein <tb@forth-ev.de>
5
* This program is free software; you can redistribute it and/or modify
6
* it under the terms of the GNU General Public License as published by
7
* the Free Software Foundation; either version 2 of the License, or
8
* (at your option) any later version.
10
* This program is distributed in the hope that it will be useful,
11
* but WITHOUT ANY WARRANTY; without even the implied warranty of
12
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
* GNU Library General Public License for more details.
15
* You should have received a copy of the GNU General Public License
16
* along with this program; if not, write to the Free Software
17
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
25
int freq; /* freq in Hz */
30
char dupe; /* only used internal in bm_show() */
33
#define SPOT_NEW (bm_config.livetime)
34
#define SPOT_NORMAL (SPOT_NEW * 95) / 100
35
#define SPOT_OLD (SPOT_NEW * 2) / 3
45
extern bm_config_t bm_config;
61
/** check if call is new multi
63
* \return true if new multi
65
int bm_ismulti(char *call);
68
/** check if call is a dupe
70
* \return true if is dupe
72
int bm_isdupe(char *call, int band);
75
/** add a new spot to bandmap data
76
* \param call the call to add
77
* \param frequ on which frequency heard
78
* \param reason - new cluster spot
79
* - local announcement (Ctrl-A)
80
* - own cluster announcement (Ctrl-B)
81
* - just worked in S&P
83
void bandmap_addspot(char *call, unsigned int frequ, char node);
85
* - if call already on that band and mode replace old entry with new one and
86
* set age to 0 otherwise add it to collection
87
* - if other call on same frequency (with some tolerance) replace it and set
89
* - round all frequencies from cluster to 100 Hz, remember all other exactly
90
* but display only rounded to 100 Hz - sort exact
95
* - go through all entries
97
* + set state to new, normal, aged or dead
98
* + if dead -> drop it from collection
103
* display depending on filter state
108
* If more entries to show than place in window, show around current frequency
110
* mark entries according to age, source and worked state. Mark new multis
114
* - worked small caps
115
* - new multi underlined
116
* - self announced stations
117
* small preceeding letter for repoting station
119
* maybe show own frequency as dashline in other color
120
* (maybee green highlighted)
121
* - highligth actual spot if near its frequency
123
* Allow selection of one of the spots (switches to S&P)
125
* - '.' and cursor plus 'Enter'
127
* '.' goes into map, shows help line above and supports
129
* - 'ESC' leaves mode
130
* - 'Enter' selects spot
131
* - 'B', 'D', 'M' switches filtering for band, dupes and mode on or off.
134
spot *bandmap_lookup(char *partialcall);
136
spot *bandmap_next(unsigned int upwards, unsigned int freq);