Cheetah - SKA - PSS - Prototype Time Domain Search Pipeline
Public Member Functions | List of all members
ska::cheetah::brdz::Brdz Class Reference

Class for performing birdie zapping. More...

#include <cheetah/brdz/Brdz.h>

Collaboration diagram for ska::cheetah::brdz::Brdz:
Collaboration graph

Public Member Functions

 Brdz (Config const &config)
 Create a new Brdz instance. More...
 
 Brdz (Brdz const &)=delete
 
 Brdz (Brdz &&)=default
 
template<typename Arch , typename T , typename Alloc , typename... Args>
void process (panda::PoolResource< Arch > &resource, data::FrequencySeries< Arch, typename data::ComplexTypeTraits< Arch, T >::type, Alloc > &input, Args &&... args)
 Excise the power for birdie frequencies in a spectrum. More...
 

Detailed Description

Class for performing birdie zapping.

This class provides an interface to implementations of the Brdz module. This module provides simple functionality to excise frequencies from a spectrum. Frequencies are provided in the form of a list/vector of Birdie instances.

Definition at line 47 of file Brdz.h.

Constructor & Destructor Documentation

◆ Brdz()

ska::cheetah::brdz::Brdz::Brdz ( Config const &  config)

Create a new Brdz instance.

Parameters
configThe Brdz algorithm configuration

Definition at line 30 of file Brdz.cpp.

31  : _config(config)
32  , _implementations(cuda::Brdz(_config.cuda_config(),_config))
33 {
34 }
cuda::Config const & cuda_config() const
Configuration for cuda implementation of Brdz.
Definition: Config.cpp:45

Member Function Documentation

◆ process()

template<typename Arch , typename T , typename Alloc , typename... Args>
void ska::cheetah::brdz::Brdz::process ( panda::PoolResource< Arch > &  resource,
data::FrequencySeries< Arch, typename data::ComplexTypeTraits< Arch, T >::type, Alloc > &  input,
Args &&...  args 
)

Excise the power for birdie frequencies in a spectrum.

This method forwards to a specific implementation based on the Arch type and the arguments types.

Parameters
resourceThe resource to process on
inputThe input spectrum to excise birdies from
[in]argsAdditional arguments to be passed to the implementation
Template Parameters
ArchThe architecture to run on
TThe base type of the input complex spectrum
AllocThe allocator of the frequency series
ArgsThe types for additional arguments

Definition at line 32 of file Brdz.cpp.

35 {
36  auto& algo = _implementations.get<Arch>();
37  algo.template process<T,Alloc,Args...>(resource,input,std::forward<Args>(args)...);
38 }
void process(panda::PoolResource< Arch > &resource, data::FrequencySeries< Arch, typename data::ComplexTypeTraits< Arch, T >::type, Alloc > &input, Args &&... args)
Excise the power for birdie frequencies in a spectrum.
Definition: Brdz.cpp:32

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