Wideband autonomous SDR analysis engine forked from sdr-visual-suite
Nevar pievienot vairāk kā 25 tēmas
Tēmai ir jāsākas ar burtu vai ciparu, tā var saturēt domu zīmes ('-') un var būt līdz 35 simboliem gara.
|
- package main
-
- import "sdr-wideband-suite/internal/pipeline"
-
- func buildWindowStats(windows []pipeline.RefinementWindow) *RefinementWindowStats {
- if len(windows) == 0 {
- return nil
- }
- stats := &RefinementWindowStats{Sources: map[string]int{}}
- minSpan := 0.0
- maxSpan := 0.0
- sum := 0.0
- for i, w := range windows {
- span := w.SpanHz
- if span <= 0 {
- continue
- }
- if i == 0 || span < minSpan {
- minSpan = span
- }
- if i == 0 || span > maxSpan {
- maxSpan = span
- }
- sum += span
- stats.Count++
- if w.Source != "" {
- stats.Sources[w.Source]++
- }
- }
- if stats.Count == 0 {
- return nil
- }
- stats.MinSpan = minSpan
- stats.MaxSpan = maxSpan
- stats.AvgSpan = sum / float64(stats.Count)
- return stats
- }
|