defmodule Microwaveprop.Propagation.BandConfig do @moduledoc """ Band configuration for microwave propagation scoring. Defines frequency bands and their display labels for the propagation map. """ @bands [ %{freq_mhz: 1_296, label: "1296 MHz"}, %{freq_mhz: 2_304, label: "2304 MHz"}, %{freq_mhz: 3_456, label: "3456 MHz"}, %{freq_mhz: 5_760, label: "5760 MHz"}, %{freq_mhz: 10_000, label: "10 GHz"}, %{freq_mhz: 24_000, label: "24 GHz"}, %{freq_mhz: 47_000, label: "47 GHz"}, %{freq_mhz: 75_000, label: "75 GHz"} ] @doc """ Returns all band configurations as a list of maps with `:freq_mhz` and `:label` keys. """ @spec all_bands() :: [%{freq_mhz: integer(), label: String.t()}] def all_bands, do: @bands end