mirror of
https://git.vladimir.cc/vladimir/ewsdr.git
synced 2026-08-25 18:43:51 +00:00
add nb nr
This commit is contained in:
+55
-21
@@ -117,8 +117,9 @@ type
|
||||
TWebCmdRun = procedure(On_: Boolean) of object;
|
||||
TWebCmdMute = procedure(On_: Boolean) of object;
|
||||
TWebCmdCtun = procedure(On_: Boolean) of object;
|
||||
TWebCmdNR = procedure(On_: Boolean) of object;
|
||||
TWebCmdNB = procedure(On_: Boolean) of object;
|
||||
TWebCmdNRMode = procedure(Mode: Integer) of object;
|
||||
TWebCmdNBMode = procedure(Mode: Integer) of object;
|
||||
TWebCmdSNB = procedure(On_: Boolean) of object;
|
||||
TWebCmdANF = procedure(On_: Boolean) of object;
|
||||
|
||||
// ── Главный класс сервера ─────────────────────────────────────────────────
|
||||
@@ -169,8 +170,9 @@ type
|
||||
FTrxRunning: Boolean;
|
||||
FMuted: Boolean;
|
||||
FCtun: Boolean;
|
||||
FNR: Boolean;
|
||||
FNB: Boolean;
|
||||
FNRMode: Integer;
|
||||
FNBMode: Integer;
|
||||
FSNB: Boolean;
|
||||
FANF: Boolean;
|
||||
FCenterHz: Double;
|
||||
FFilterIdx: Integer;
|
||||
@@ -190,8 +192,9 @@ type
|
||||
FOnRun: TWebCmdRun;
|
||||
FOnMute: TWebCmdMute;
|
||||
FOnCtun: TWebCmdCtun;
|
||||
FOnNR: TWebCmdNR;
|
||||
FOnNB: TWebCmdNB;
|
||||
FOnNR: TWebCmdNRMode;
|
||||
FOnNB: TWebCmdNBMode;
|
||||
FOnSNB: TWebCmdSNB;
|
||||
FOnANF: TWebCmdANF;
|
||||
|
||||
FWebClientActive: Boolean;
|
||||
@@ -232,7 +235,8 @@ type
|
||||
SpanHz: Double; Volume: Integer;
|
||||
WfAGC, WfNF: Boolean; BandIdx: Integer;
|
||||
TrxConnected: Boolean;
|
||||
TrxRunning, Muted, Ctun, NR, NB, ANF: Boolean;
|
||||
TrxRunning, Muted, Ctun: Boolean;
|
||||
NRMode, NBMode: Integer; SNB, ANF: Boolean;
|
||||
CenterHz: Double; FilterIdx: Integer);
|
||||
|
||||
property WebClientActive: Boolean read FWebClientActive;
|
||||
@@ -250,8 +254,9 @@ type
|
||||
property OnRun: TWebCmdRun read FOnRun write FOnRun;
|
||||
property OnMute: TWebCmdMute read FOnMute write FOnMute;
|
||||
property OnCtun: TWebCmdCtun read FOnCtun write FOnCtun;
|
||||
property OnNR: TWebCmdNR read FOnNR write FOnNR;
|
||||
property OnNB: TWebCmdNB read FOnNB write FOnNB;
|
||||
property OnNR: TWebCmdNRMode read FOnNR write FOnNR;
|
||||
property OnNB: TWebCmdNBMode read FOnNB write FOnNB;
|
||||
property OnSNB: TWebCmdSNB read FOnSNB write FOnSNB;
|
||||
property OnANF: TWebCmdANF read FOnANF write FOnANF;
|
||||
end;
|
||||
|
||||
@@ -905,15 +910,39 @@ begin
|
||||
end
|
||||
else if Cmd = 'set_nr' then
|
||||
begin
|
||||
On_ := JsonGetBool(Json, 'on', FNR);
|
||||
FStateLock.Enter; FNR := On_; FStateLock.Leave;
|
||||
if Assigned(FOnNR) then FOnNR(On_);
|
||||
On_ := JsonGetBool(Json, 'on', FNRMode <> 0);
|
||||
ModeValue := Ord(On_);
|
||||
FStateLock.Enter; FNRMode := ModeValue; FStateLock.Leave;
|
||||
if Assigned(FOnNR) then FOnNR(ModeValue);
|
||||
end
|
||||
else if Cmd = 'set_nr_mode' then
|
||||
begin
|
||||
ModeValue := JsonGetInt(Json, 'mode', FNRMode);
|
||||
if ModeValue < 0 then ModeValue := 0;
|
||||
if ModeValue > 4 then ModeValue := 4;
|
||||
FStateLock.Enter; FNRMode := ModeValue; FStateLock.Leave;
|
||||
if Assigned(FOnNR) then FOnNR(ModeValue);
|
||||
end
|
||||
else if Cmd = 'set_nb' then
|
||||
begin
|
||||
On_ := JsonGetBool(Json, 'on', FNB);
|
||||
FStateLock.Enter; FNB := On_; FStateLock.Leave;
|
||||
if Assigned(FOnNB) then FOnNB(On_);
|
||||
On_ := JsonGetBool(Json, 'on', FNBMode <> 0);
|
||||
ModeValue := Ord(On_);
|
||||
FStateLock.Enter; FNBMode := ModeValue; FStateLock.Leave;
|
||||
if Assigned(FOnNB) then FOnNB(ModeValue);
|
||||
end
|
||||
else if Cmd = 'set_nb_mode' then
|
||||
begin
|
||||
ModeValue := JsonGetInt(Json, 'mode', FNBMode);
|
||||
if ModeValue < 0 then ModeValue := 0;
|
||||
if ModeValue > 2 then ModeValue := 2;
|
||||
FStateLock.Enter; FNBMode := ModeValue; FStateLock.Leave;
|
||||
if Assigned(FOnNB) then FOnNB(ModeValue);
|
||||
end
|
||||
else if Cmd = 'set_snb' then
|
||||
begin
|
||||
On_ := JsonGetBool(Json, 'on', FSNB);
|
||||
FStateLock.Enter; FSNB := On_; FStateLock.Leave;
|
||||
if Assigned(FOnSNB) then FOnSNB(On_);
|
||||
end
|
||||
else if Cmd = 'set_anf' then
|
||||
begin
|
||||
@@ -1015,7 +1044,7 @@ begin
|
||||
'"span_hz":%.0f,"center_hz":%.0f,"volume":%d,' +
|
||||
'"wf_agc":%s,"wf_nf":%s,"band_idx":%d,"smeter_dbm":%.1f,' +
|
||||
'"running":%s,"mute":%s,"ctun":%s,' +
|
||||
'"nr":%s,"nb":%s,"anf":%s,"connected":%s}',
|
||||
'"nr_mode":%d,"nr":%s,"nb_mode":%d,"nb":%s,"snb":%s,"anf":%s,"connected":%s}',
|
||||
[FFreq, FMode, MODE_N[FMode mod 8],
|
||||
FFilterIdx, FFilterBW,
|
||||
FAGCMode, FAGCTop,
|
||||
@@ -1026,8 +1055,11 @@ begin
|
||||
BoolToStr(FTrxRunning, 'true', 'false'),
|
||||
BoolToStr(FMuted, 'true', 'false'),
|
||||
BoolToStr(FCtun, 'true', 'false'),
|
||||
BoolToStr(FNR, 'true', 'false'),
|
||||
BoolToStr(FNB, 'true', 'false'),
|
||||
FNRMode,
|
||||
BoolToStr(FNRMode <> 0, 'true', 'false'),
|
||||
FNBMode,
|
||||
BoolToStr(FNBMode <> 0, 'true', 'false'),
|
||||
BoolToStr(FSNB, 'true', 'false'),
|
||||
BoolToStr(FANF, 'true', 'false'),
|
||||
BoolToStr(FConnected, 'true', 'false')
|
||||
]);
|
||||
@@ -1091,7 +1123,8 @@ procedure TWebServer.PushSpectrum(
|
||||
SpanHz: Double; Volume: Integer;
|
||||
WfAGC, WfNF: Boolean; BandIdx: Integer;
|
||||
TrxConnected: Boolean;
|
||||
TrxRunning, Muted, Ctun, NR, NB, ANF: Boolean;
|
||||
TrxRunning, Muted, Ctun: Boolean;
|
||||
NRMode, NBMode: Integer; SNB, ANF: Boolean;
|
||||
CenterHz: Double; FilterIdx: Integer);
|
||||
var N, i: Integer;
|
||||
begin
|
||||
@@ -1116,8 +1149,9 @@ begin
|
||||
FTrxRunning := TrxRunning;
|
||||
FMuted := Muted;
|
||||
FCtun := Ctun;
|
||||
FNR := NR;
|
||||
FNB := NB;
|
||||
FNRMode := NRMode;
|
||||
FNBMode := NBMode;
|
||||
FSNB := SNB;
|
||||
FANF := ANF;
|
||||
FCenterHz := CenterHz;
|
||||
FFilterIdx := FilterIdx;
|
||||
|
||||
Reference in New Issue
Block a user