LineOverlaysTab.qo.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025 #ifndef LINEOVERLAYSTAB_QO_H
00026 #define LINEOVERLAYSTAB_QO_H
00027
00028 #include <QtGui/QWidget>
00029 #include <display/QtPlotter/LineOverlaysTab.ui.h>
00030 #include <display/QtPlotter/LineOverlaysSearchResultsDialog.qo.h>
00031 #include <display/QtPlotter/SearchRedshiftDialog.qo.h>
00032 #include <casa/BasicSL/String.h>
00033 #include <coordinates/Coordinates/SpectralCoordinate.h>
00034
00035
00036 namespace casa {
00037
00038 class QtCanvas;
00039 class SearchMoleculesWidget;
00040 class Converter;
00041
00042 class LineOverlaysTab : public QWidget {
00043 Q_OBJECT
00044
00045 public:
00046 LineOverlaysTab(QWidget *parent = 0);
00047 void setRange( double min, double max, String units );
00048 void setInitialReferenceFrame( QString referenceStr );
00049 void setSpectralCoordinate( SpectralCoordinate coord );
00050 void setCanvas( QtCanvas* canvas );
00051 void unitsChanged(QString graphUnits );
00052 ~LineOverlaysTab();
00053
00054 private slots:
00055 void graphSelectedLines();
00056 void graphSelectedSpecies();
00057 void searchCompleted();
00058 void eraseLines();
00059 void saveIdentifiedLines();
00060 void findRedshift( double center, double peak );
00061 void redshiftChanged();
00062
00063 private:
00064 void addLineToPixelCanvas( float center, float peak,
00065 QString molecularName, QString chemicalName,
00066 QString resolvedQNs, QString frequencyUnit, Converter* converter);
00067 float getShiftedCenter( float center, Converter* converter, bool* valid );
00068 Ui::LineOverlaysTabClass ui;
00069 SearchMoleculesWidget* searchWidget;
00070 QtCanvas* pixelCanvas;
00071 LineOverlaysSearchResultsDialog searchResults;
00072 SearchRedshiftDialog searchRedshiftDialog;
00073 SpectralCoordinate spectralCoordinate;
00074
00075 };
00076 }
00077 #endif // LINEOVERLAYSTAB_QO_H