Kaynağa Gözat

Persist config updates and add detector stability controls

master
Jan Svabenik 3 gün önce
ebeveyn
işleme
30885695e6
2 değiştirilmiş dosya ile 24 ekleme ve 1 silme
  1. +8
    -1
      cmd/sdrd/main.go
  2. +16
    -0
      internal/config/save.go

+ 8
- 1
cmd/sdrd/main.go Dosyayı Görüntüle

@@ -12,6 +12,8 @@ import (
"path/filepath"
"runtime/debug"
"sort"

"sdr-visual-suite/internal/config"
"strconv"
"strings"
"sync"
@@ -21,7 +23,6 @@ import (
"github.com/gorilla/websocket"

"sdr-visual-suite/internal/classifier"
"sdr-visual-suite/internal/config"
"sdr-visual-suite/internal/detector"
"sdr-visual-suite/internal/dsp"
"sdr-visual-suite/internal/events"
@@ -428,6 +429,9 @@ func main() {
return
}
}
if err := config.Save(cfgPath, next); err != nil {
log.Printf("config save failed: %v", err)
}
detChanged := prev.Detector.ThresholdDb != next.Detector.ThresholdDb ||
prev.Detector.MinDurationMs != next.Detector.MinDurationMs ||
prev.Detector.HoldMs != next.Detector.HoldMs ||
@@ -497,6 +501,9 @@ func main() {
iqBalance: next.IQBalance,
})
}
if err := config.Save(cfgPath, next); err != nil {
log.Printf("config save failed: %v", err)
}
_ = json.NewEncoder(w).Encode(next)
})



+ 16
- 0
internal/config/save.go Dosyayı Görüntüle

@@ -0,0 +1,16 @@
package config

import (
"os"

"gopkg.in/yaml.v3"
)

// Save writes the current config back to disk.
func Save(path string, cfg Config) error {
b, err := yaml.Marshal(cfg)
if err != nil {
return err
}
return os.WriteFile(path, b, 0o644)
}

Yükleniyor…
İptal
Kaydet