.Simulation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Pages
DataVisualizerGUIEX.h
Go to the documentation of this file.
1 // DataVisualizerGUIEX.h - Data Visualizer GUI class extension declaration.
2 // Written By Jesse Z. Zhong
4 #ifndef __Data_Visualizer_GUI_EX_H__
5 #define __Data_Visualizer_GUI_EX_H__
6 #pragma region Includes
7 #include "stdafx.h"
8 #include "ui_DataVisualizerGUI.h"
9 
10 #include "DataFile.h"
11 #include "G_DensityRadius.h"
12 #include "G_IonizationRadius.h"
13 #include "G_TempRadius.h"
14 #include "G_WallRadTime.h"
15 #include "GLParticleDist.h"
16 #include "GLEnergyCollision.h"
17 
18 #include "MetadataName.h"
19 using namespace std;
20 using namespace Ui;
21 using namespace DataReader;
22 #pragma endregion
23 namespace DataVisualizerGUI {
30  class DataVisualizerGUIEX : public DataVisualizerGUIClass {
31  #pragma region Constants
32  #pragma region Plot
33  static const int DefaultWidth = 460;
35 
37  static const int PlotPadding = 40;
38 
41  static const int PlotLeftMargin = 4;
42 
45  static const int PlotTopMargin = 4;
46 
49  static const int PlotRowSize = 2;
50  #pragma endregion
51  #pragma region Metadata Table
52  static const int MDTableCols = 2;
55 
58  static const int MDValueCol = 1;
59 
62  static const int MDNameCol = 0;
63  #pragma endregion
64  #pragma endregion
65  public:
66  // Plots
71  GLParticleDist* ParticleDist;
72  GLEnergyCollision* EnergyCollision;
73 
80 
88  void InitializeUI(QMainWindow *parent);
89 
93  void ClearAll();
94 
98  void RefreshAll();
99 
103  void ChangePlotWidths(int width);
104 
109  void ChangeLabelDisplayMode(bool mode);
110 
114  void ChangeMDValue(MDName::EName fieldName, double value);
115 
119  int GetGraphWidth() const;
120  protected:
124  void SetupGraphs(QMainWindow *parent);
125 
129  void SetupMetadataTable();
130 
134  int Height(int width = DefaultWidth);
135 
136  // Members
137  vector<Graph<DataFile>*> Plots_;
138  vector<GraphGL*> PlotsGL_;
140  };
141 }
142 #endif // End : DataVisualizerGUIEX.h
Implements shell density versus shell radius plots using data from snapshots.
Definition: G_DensityRadius.h:16
This class takes in a DataCollisionEnergy and outputs an OpenGL plot of points with color for tempera...
Definition: GLEnergyCollision.h:16
Implements the plotting of data from RPK files.
Definition: G_WallRadTime.h:16
Implements shell ionization levels versus shell radius plots using data from snapshots.
Definition: G_IonizationRadius.h:16
G_DensityRadius * DensityRadius
Density versus radius plot.
Definition: DataVisualizerGUIEX.h:68
G_WallRadTime * WallRadTime
Wall radius versus time plot.
Definition: DataVisualizerGUIEX.h:70
Implements shell temperatures versus shell radius plots using data from snapshots.
Definition: G_TempRadius.h:17
EName
Names of the metadata.
Definition: MetadataName.h:20
This class takes in a DataSavepoint and outputs an OpenGL plot of points.
Definition: GLParticleDist.h:14
int GraphSize_
Stores the graph width to memory every time there is a size update.
Definition: DataVisualizerGUIEX.h:139
Extends the primary GUI window to have the intended items and behaviors.
Definition: DataVisualizerGUIEX.h:30
G_TempRadius * TempRadius
Temperature versus radius plot.
Definition: DataVisualizerGUIEX.h:69
G_IonizationRadius * IonRadius
Ionization level versus radius plot.
Definition: DataVisualizerGUIEX.h:67
vector< Graph< DataFile > * > Plots_
Reference to all of the plots.
Definition: DataVisualizerGUIEX.h:137