Cheetah - SKA - PSS - Prototype Time Domain Search Pipeline
Rfim.h
1 #ifndef SKA_CHEETAH_SUM_THRESHOLD_RFIM_H
2 #define SKA_CHEETAH_SUM_THRESHOLD_RFIM_H
3 
4 #include "cheetah/rfim/sum_threshold/Config.h"
5 #include "cheetah/data/TimeFrequency.h"
6 #include "cheetah/rfim/RfimBase.h"
7 #include "cheetah/data/RfimFlaggedData.h"
8 
9 namespace ska {
10 namespace cheetah {
11 namespace rfim {
12 namespace sum_threshold {
13 
22 template<typename RfimTraits>
23 class Rfim : public RfimBase<Rfim<RfimTraits>, typename RfimTraits::Policy>
24 {
25  typedef RfimBase<Rfim<RfimTraits>, typename RfimTraits::Policy> BaseT;
26  friend BaseT;
27 
28  typedef typename RfimTraits::Policy Policy;
29  typedef typename PolicyInfo<Policy>::AdapterType DataAdapter;
30 
31  public:
32  typedef typename PolicyInfo<Policy>::ReturnType ReturnType;
33  typedef cheetah::Cpu Architecture;
34 
35  public:
36  Rfim(Config const& config);
37  ~Rfim();
38 
39  using BaseT::operator();
40 
41  protected:
42  template<typename DataType>
43  void operator()(DataType& data, DataAdapter& adpater);
44 
45  private:
46  Config const& _config;
47 };
48 
49 
50 } // namespace sum_threshold
51 } // namespace rfim
52 } // namespace cheetah
53 } // namespace ska
54 #include "detail/Rfim.cpp"
55 
56 #endif // SKA_CHEETAH_SUM_THRESHOLD_RFIM_H
Wrap a Rfim flaggeing style detector and adjust the data according to the flags and a specific policy...
Definition: RfimBase.h:20
std::conditional< std::is_same< void, AdapterDataReturnType >::value, DataArgumentType, AdapterDataReturnType >::type ReturnType
the data type the policy will return
Definition: PolicyInfo.h:67
A CPU implementation of the sum_threshold algorithm.
Definition: Rfim.h:23
Some limits and constants for FLDO.
Definition: Brdz.h:35