StokesFluctPlot.h
1//-*-C++-*-
2/***************************************************************************
3 *
4 * Copyright (C) 2006 - 2015 by Willem van Straten
5 * Licensed under the Academic Free License version 2.1
6 *
7 ***************************************************************************/
8
9// psrchive/More/Plotting/Pulsar/StokesFluctPlot.h
10
11#ifndef __Pulsar_StokesFluctPlot_h
12#define __Pulsar_StokesFluctPlot_h
13
14#include "Pulsar/FluctPlot.h"
15
16namespace Pulsar {
17
18 class Profile;
19
21 class StokesFluctPlot : public FluctPlot {
22
23 public:
24
27
30
31 // Text interface to the StokesFluctPlot class
32 class Interface : public TextInterface::To<StokesFluctPlot> {
33 public:
34 Interface (StokesFluctPlot* = 0);
35 };
36
38 void prepare (const Archive* data);
39
41 void draw (const Archive*);
42
44 std::string get_ylabel (const Archive*);
45
47 void get_profiles (const Archive*);
48
50 void set_plot_values (const std::string& plot) { plot_values = plot; }
51 std::string get_plot_values () const { return plot_values; }
52
54 void set_signal_to_noise (const bool plot) { signal_to_noise = plot; }
55 bool get_signal_to_noise () const { return signal_to_noise; }
56
58 void set_harmonic_outliers (const bool plot)
59 {
60 harmonic_outliers = plot;
61 if (harmonic_outliers)
62 signal_to_noise = false;
63 }
64 bool get_harmonic_outliers () const { return harmonic_outliers; }
65
67 void set_plot_colours (const std::string& plot) { plot_colours = plot; }
68 std::string get_plot_colours () const { return plot_colours; }
69
71 void set_plot_lines (const std::string& plot) { plot_lines = plot; }
72 std::string get_plot_lines () const { return plot_lines; }
73
75 void set_plot_last_harmonic (bool p) { plot_last_harmonic = p; }
76 bool get_plot_last_harmonic () const { return plot_last_harmonic; }
77
79 void set_plot_fluctuation_phase (bool p) { plot_fluctuation_phase = p; }
80 bool get_plot_fluctuation_phase () const { return plot_fluctuation_phase; }
81
82 protected:
83
84 bool plot_log;
85 bool signal_to_noise;
86 bool harmonic_outliers;
87
88 std::string plot_values;
89 std::string plot_colours;
90 std::string plot_lines;
91
92 bool plot_last_harmonic;
93 bool plot_fluctuation_phase;
94 unsigned last_harmonic;
95
96 };
97
98}
99
100#endif
The primary interface to pulsar observational data.
Definition Archive.h:46
FluctPlot()
Default constructor.
Definition FluctPlot.C:10
Any quantity recorded as a function of pulse phase.
Definition Profile.h:40
virtual void plot(const Archive *)
Plot in the current viewport.
Definition SimplePlot.C:15
void set_harmonic_outliers(const bool plot)
Plot the harmonic outliers.
Definition StokesFluctPlot.h:58
void set_plot_colours(const std::string &plot)
Set the colour for each value plotted.
Definition StokesFluctPlot.h:67
void set_plot_values(const std::string &plot)
Set the values to be plotted (one or more of I,Q,U,V,L,p)
Definition StokesFluctPlot.h:50
void prepare(const Archive *data)
Perform any preprocessing steps.
Definition StokesFluctPlot.C:62
void draw(const Archive *)
Draw the profiles in the currently open window.
Definition StokesFluctPlot.C:73
void set_signal_to_noise(const bool plot)
Signal-to-noise ratio on the y-axis.
Definition StokesFluctPlot.h:54
StokesFluctPlot()
Default constructor.
Definition StokesFluctPlot.C:26
void get_profiles(const Archive *)
Return the fluctuation power spectra to be plotted.
Definition StokesFluctPlot.C:191
TextInterface::Parser * get_interface()
Get the text interface to the configuration attributes.
Definition StokesFluctPlot.C:57
void set_plot_lines(const std::string &plot)
Set the line style for each value plotted.
Definition StokesFluctPlot.h:71
void set_plot_last_harmonic(bool p)
Plot the last significant harmonic.
Definition StokesFluctPlot.h:75
std::string get_ylabel(const Archive *)
Get the default label for the y axis.
Definition StokesFluctPlot.C:87
void set_plot_fluctuation_phase(bool p)
Plot the fluctuation phase.
Definition StokesFluctPlot.h:79
Defines the PSRCHIVE library.
Definition CalSource.h:17

Generated using doxygen 1.14.0