Wideband autonomous SDR analysis engine forked from sdr-visual-suite
No puede seleccionar más de 25 temas Los temas deben comenzar con una letra o número, pueden incluir guiones ('-') y pueden tener hasta 35 caracteres de largo.

32 líneas
1.1KB

  1. package main
  2. import "sdr-wideband-suite/internal/pipeline"
  3. type compactDecision struct {
  4. ID int64 `json:"id"`
  5. Class string `json:"class,omitempty"`
  6. Record bool `json:"record"`
  7. Decode bool `json:"decode"`
  8. Reason string `json:"reason,omitempty"`
  9. RecordAdmission *pipeline.PriorityAdmission `json:"record_admission,omitempty"`
  10. DecodeAdmission *pipeline.PriorityAdmission `json:"decode_admission,omitempty"`
  11. Candidate pipeline.Candidate `json:"candidate"`
  12. }
  13. func compactDecisions(decisions []pipeline.SignalDecision) []compactDecision {
  14. out := make([]compactDecision, 0, len(decisions))
  15. for _, d := range decisions {
  16. out = append(out, compactDecision{
  17. ID: d.Candidate.ID,
  18. Class: d.Class,
  19. Record: d.ShouldRecord,
  20. Decode: d.ShouldAutoDecode,
  21. Reason: d.Reason,
  22. RecordAdmission: d.RecordAdmission,
  23. DecodeAdmission: d.DecodeAdmission,
  24. Candidate: d.Candidate,
  25. })
  26. }
  27. return out
  28. }