PolnCalExtFreqIntegrate.h
1//-*-C++-*-
2/***************************************************************************
3 *
4 * Copyright (C) 2019 by Willem van Straten
5 * Licensed under the Academic Free License version 2.1
6 *
7 ***************************************************************************/
8
9// psrchive/More/Polarimetry/Pulsar/PolnCalExtFreqIntegrate.h
10
11#ifndef __Pulsar_PolnCalExtFreqIntegrate_h
12#define __Pulsar_PolnCalExtFreqIntegrate_h
13
14#include "Pulsar/Integrate.h"
15#include "Pulsar/EvenlySpaced.h"
16#include "Pulsar/EvenlyWeighted.h"
17#include "Pulsar/PolnCalibratorExtension.h"
18
19namespace Pulsar {
20
22 class PolnCalExtFreqIntegrate : public Integrate<PolnCalibratorExtension>
23 {
24
25 public:
26
29
32
34 class EvenlySpaced;
35
37 class EvenlyWeighted;
38
39 };
40
41 class PolnCalExtFreqIntegrate::EvenlySpaced :
42 public Integrate<PolnCalibratorExtension>::EvenlySpaced
43 {
44 unsigned get_size (const PolnCalibratorExtension* sub)
45 { return sub->get_nchan(); }
46 };
47
48 class PolnCalExtFreqIntegrate::EvenlyWeighted :
49 public Integrate<PolnCalibratorExtension>::EvenlyWeighted
50 {
51 unsigned get_size (const PolnCalibratorExtension* sub)
52 { return sub->get_nchan(); }
53
54 double get_weight (const PolnCalibratorExtension* sub, unsigned ichan)
55 { return sub->get_weight (ichan); }
56 };
57
58}
59
60#endif
virtual unsigned get_nchan() const
Get the number of frequency channels.
Definition CalibratorExtension.C:83
Profile integration algorithms.
Definition Integrate.h:36
PolnCalExtFreqIntegrate()
Default constructor.
Definition PolnCalExtFreqIntegrate.C:17
void transform(PolnCalibratorExtension *)
The frequency integration operation.
Definition PolnCalExtFreqIntegrate.C:47
Stores PolnCalibrator parameters in an Archive instance.
Definition PolnCalibratorExtension.h:23
Defines the PSRCHIVE library.
Definition CalSource.h:17

Generated using doxygen 1.14.0