11#ifndef __Pulsar_FrequencyIntegrate_h
12#define __Pulsar_FrequencyIntegrate_h
14#include "Pulsar/Integrate.h"
15#include "Pulsar/EvenlySpaced.h"
16#include "Pulsar/EvenlyWeighted.h"
17#include "Pulsar/NonlinearlySpaced.h"
19#include "Pulsar/Integration.h"
53 bool get_dedisperse ()
const;
57 bool get_defaraday ()
const;
66 class WavelengthSquaredSpaced;
75 class FrequencyIntegrate::EvenlySpaced :
76 public Integrate<Integration>::EvenlySpaced
82 class FrequencyIntegrate::EvenlyWeighted :
83 public Integrate<Integration>::EvenlyWeighted
85 unsigned get_size (
const Integration* sub)
88 double get_weight (
const Integration* sub,
unsigned ichan)
92 class FrequencyIntegrate::WavelengthSquaredSpaced :
93 public Integrate<Integration>::NonlinearlySpaced
95 unsigned get_size (
const Integration* sub)
98 double get_value (
const Integration* sub,
unsigned ichan)
double get_centre_frequency(unsigned ichan) const
Get the Profile centre frequency attribute of the given channel.
Definition Integration.C:365
virtual unsigned get_nchan() const =0
Get the number of chans.
float get_weight(unsigned ichan) const
Get the Profile weight attribute of the given channel.
Definition Integration.C:400
void set_defaraday(bool flag)
Correct Faraday rotation before integrating, if necessary.
Definition FrequencyIntegrate.C:37
FrequencyIntegrate()
Default constructor.
Definition FrequencyIntegrate.C:18
void transform(Integration *)
The frequency integration operation.
Definition FrequencyIntegrate.C:47
void set_dedisperse(bool)
Correct dispersion before integrating, if necessary.
Definition FrequencyIntegrate.C:26
Profile integration algorithms.
Definition Integrate.h:36
Array of Profiles integrated over the same time interval.
Definition Integration.h:37
virtual unsigned get_nchan() const =0
Get the number of chans.
Defines the PSRCHIVE library.
Definition CalSource.h:17