Cheetah - SKA - PSS - Prototype Time Domain Search Pipeline
Public Member Functions | List of all members
ska::cheetah::tdas::TdasBase< T > Class Template Reference

Top-level synchronous interface for the Tdas module. More...

#include <cheetah/tdas/Tdas.h>

Inheritance diagram for ska::cheetah::tdas::TdasBase< T >:
Inheritance graph
Collaboration diagram for ska::cheetah::tdas::TdasBase< T >:
Collaboration graph

Public Member Functions

 TdasBase (Config const &config)
 Construct a new TdasBase instance. More...
 
 TdasBase (TdasBase const &)=delete
 
 TdasBase (TdasBase &&)=default
 
template<typename Arch , typename... Args>
std::shared_ptr< data::Cclprocess (panda::PoolResource< Arch > &resource, DmTimeSliceType const &data, Args &&... args)
 Process a DmTimeSlice in search of significant periodic signals over a range of acceleration values. More...
 

Detailed Description

template<typename T>
class ska::cheetah::tdas::TdasBase< T >

Top-level synchronous interface for the Tdas module.

Tdas stands for time-domain acceleration search. Here we search for significant periodic signal at multiple accelerations using the technique of time domain resampling + FFT.

Template Parameters
TThe value type to use for processing (float or double)

Definition at line 57 of file Tdas.h.

Constructor & Destructor Documentation

◆ TdasBase()

template<typename T >
ska::cheetah::tdas::TdasBase< T >::TdasBase ( Config const &  config)

Construct a new TdasBase instance.

Parameters
configThe algorithm configuration

Definition at line 33 of file Tdas.cpp.

34  : _config(config)
35  , _implementations(cuda::Tdas<T>(_config.cuda_config(),_config))
36 {
37 }
cuda::Config const & cuda_config() const
Configuration details for the cuda based RFIM algorithm.
Definition: Config.cpp:72

Member Function Documentation

◆ process()

template<typename T >
template<typename Arch , typename... Args>
std::shared_ptr< data::Ccl > ska::cheetah::tdas::TdasBase< T >::process ( panda::PoolResource< Arch > &  resource,
DmTimeSliceType const &  data,
Args &&...  args 
)

Process a DmTimeSlice in search of significant periodic signals over a range of acceleration values.

This is a forwarding interface that will forward the call to the relevant implementation based on the provided arguments.

Parameters
resourceThe resource to process on
dataThe input DmTimeSlice
[in]argsAdditional arguments to be passed to the implementation
Template Parameters
ArchThe architecture to process on
ArgsThe types of any additional arguments
Returns
A shared pointer to a list of candidate signals

Definition at line 41 of file Tdas.cpp.

44 {
45  auto& algo = _implementations.template get<Arch>();
46  return algo.process(resource, data, std::forward<Args>(args)...);
47 }

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