24 #include "cheetah/rcpt_low/PacketGeneratorConfig.h" 25 #include "cheetah/rcpt_low/BeamFormerPacket.h" 32 PacketGeneratorConfig::PacketGeneratorConfig()
33 : cheetah::utils::Config(
"ska_low")
34 , _number_of_channels(number_of_channels_low)
35 , _number_of_spectra(BeamFormerPacketLow::number_of_time_samples())
36 , _bandwidth(225.0*data::megahertz)
37 , _fch1(350.0*data::megahertz)
38 , _number_of_channels_per_packet(BeamFormerPacketLow::number_of_channels())
39 , _interval((unsigned)((double)_number_of_channels/static_cast<PacketGeneratorConfig::FrequencyType>(_bandwidth).value()*_number_of_spectra/(_number_of_channels/_number_of_channels_per_packet)))
43 PacketGeneratorConfig::~PacketGeneratorConfig()
47 void PacketGeneratorConfig::add_options(OptionsDescriptionEasyInit& add_options)
50 (
"interval", boost::program_options::value<std::size_t>()->default_value(_interval.count())
51 ->notifier([
this](std::size_t interval)
53 _interval = std::chrono::microseconds(interval);
54 }),
"time seperation between packets in microseconds");
59 return _number_of_channels;
64 return _number_of_spectra;
89 return _number_of_channels_per_packet;
const FrequencyType & fch1() const
returns frequency of the highest channel.
const std::chrono::microseconds & interval() const
time sepearation between consequetive packets in micro seconds
const FrequencyType & bandwidth() const
returns the bandwidth in Megahertz
Some limits and constants for FLDO.
const data::DimensionSize< data::Frequency > & number_of_channels() const
number of channels per chunk
const std::size_t & number_of_channels_per_packet() const
return the number of channels per packet
const data::DimensionSize< data::Time > & number_of_spectra() const
number of spectra per packet