Cheetah - SKA - PSS - Prototype Time Domain Search Pipeline
Public Types | Public Member Functions | List of all members
ska::cheetah::rcpt::PacketGenerator< DataGenerator > Class Template Reference

Packs data into a UDP stream Packet Header format of the BeamFormer. More...

#include <cheetah/rcpt/PacketGenerator.h>

Collaboration diagram for ska::cheetah::rcpt::PacketGenerator< DataGenerator >:
Collaboration graph

Public Types

typedef BeamFormerDataTraits::DataType::NumericalRep SampleDataType
 

Public Member Functions

 PacketGenerator (DataGenerator &model, data::DimensionSize< data::Frequency > number_of_channels, data::DimensionSize< data::Time > number_of_time_samples=data::DimensionSize< data::Time >(100U))
 
template<typename Handler >
void send_one (Handler &&)
 send out a single packet More...
 
ska::panda::Buffer< char > next ()
 
long interval () const
 
void abort ()
 

Detailed Description

template<class DataGenerator>
class ska::cheetah::rcpt::PacketGenerator< DataGenerator >

Packs data into a UDP stream Packet Header format of the BeamFormer.

Definition at line 46 of file PacketGenerator.h.

Constructor & Destructor Documentation

◆ PacketGenerator()

template<typename DataGenerator >
ska::cheetah::rcpt::PacketGenerator< DataGenerator >::PacketGenerator ( DataGenerator &  model,
data::DimensionSize< data::Frequency >  number_of_channels,
data::DimensionSize< data::Time >  number_of_time_samples = data::DimensionSize<data::Time>(100U) 
)
Parameters
number_of_channelsnumber of chnnnels for model to fill
number_of_time_samplesdefine the size of the blocks to ask to be filled from the generator

Definition at line 34 of file PacketGenerator.cpp.

38  : _model(model)
39  , _data(number_of_time_samples, number_of_channels)
40  , _data_iterator(_data.cend())
41  , _counter(0)
42  , _interval(1)
43  , _max_buffers(5)
44  , _buffer_index(0)
45 {
46  _buffers.reserve(_max_buffers);
47  for(unsigned i=0; i < _max_buffers; ++i) {
48  _buffers.emplace_back(Packet::size());
49  }
50 }
static constexpr std::size_t size()
the total size of the packet (header + payload + footer)
Here is the call graph for this function:

Member Function Documentation

◆ send_one()

template<class DataGenerator >
template<typename Handler >
void ska::cheetah::rcpt::PacketGenerator< DataGenerator >::send_one ( Handler &&  )

send out a single packet

Parameters
handlerthe handler to call when the packet has been sent

The documentation for this class was generated from the following files: