FluctPlot.h
1 //-*-C++-*-
2 /***************************************************************************
3  *
4  * Copyright (C) 2006 by Willem van Straten
5  * Licensed under the Academic Free License version 2.1
6  *
7  ***************************************************************************/
8 
9 // psrchive/More/Plotting/Pulsar/FluctPlot.h
10 
11 #ifndef __Pulsar_FluctPlot_h
12 #define __Pulsar_FluctPlot_h
13 
14 #include "Pulsar/SimplePlot.h"
15 #include "Pulsar/ProfileVectorPlotter.h"
16 #include "Pulsar/Index.h"
17 
18 namespace Pulsar {
19 
20  class Profile;
21 
23  class FluctPlot : public SimplePlot {
24 
25  public:
26 
29 
32 
33  // Text interface to the FluctPlot class
34  class Interface : public TextInterface::To<FluctPlot> {
35  public:
36  Interface (FluctPlot* = 0);
37  };
38 
40  void prepare (const Archive*);
41 
43  void draw (const Archive*);
44 
46  std::string get_ylabel (const Archive*);
47 
49  std::string get_xlabel (const Archive*);
50 
52  virtual void get_profiles (const Archive*) = 0;
53 
55  void set_subint (Index _isubint) { isubint = _isubint; }
56  Index get_subint () const { return isubint; }
57 
59  void set_chan (Index _ichan) { ichan = _ichan; }
60  Index get_chan () const { return ichan; }
61 
63  void set_pol (Index _ipol) { ipol = _ipol; }
64  Index get_pol () const { return ipol; }
65 
66  protected:
67 
69 
70  Index isubint;
71  Index ichan;
72  Index ipol;
73 
74  };
75 
76 }
77 
78 #endif
Combines an index value and integrate flag.
Definition: Index.h:24
void set_subint(Index _isubint)
Set the sub-integration to plot (where applicable)
Definition: FluctPlot.h:60
PlotScale * get_y_scale(bool allow_transpose)
Get the x-scale.
Definition: PlotFrame.C:213
void set_buf_norm(float f)
Set the world-normalized buffer space on either side of the axis.
Definition: PlotScale.h:95
The primary interface to pulsar observational data.
Definition: Archive.h:45
Plots fluctuation power spectra.
Definition: FluctPlot.h:28
Plots flux profiles.
Definition: ProfileVectorPlotter.h:27
virtual void get_profiles(const Archive *)=0
Derived classes must compute the fluctuation power spectra.
void draw(const Archive *)
Draw the profiles in the currently open window.
Definition: FluctPlot.C:46
void prepare(const Archive *)
Perform any preprocessing steps.
Definition: FluctPlot.C:23
std::string get_ylabel(const Archive *)
Get the default label for the y axis.
Definition: FluctPlot.C:53
virtual PlotFrame * get_frame()
Get the frame.
Definition: FramedPlot.C:27
void set_chan(Index _ichan)
Set the frequency channel to plot (where applicable)
Definition: FluctPlot.h:64
void set_pol(Index _ipol)
Set the polarization to plot.
Definition: FluctPlot.h:68
TextInterface::Parser * get_interface()
Get the text interface to the configuration attributes.
Definition: FluctPlot.C:16
Defines the PSRCHIVE library.
Definition: CalSource.h:17
FluctPlot()
Default constructor.
Definition: FluctPlot.C:10
std::string get_xlabel(const Archive *)
Get the default label for the x axis.
Definition: FluctPlot.C:59

Generated using doxygen 1.8.17