00001
00002
00003
00004
00005 #ifndef BALL_VIEW_DIALOGS_MOLECULARDYNAMICSDIALOG_H
00006 #define BALL_VIEW_DIALOGS_MOLECULARDYNAMICSDIALOG_H
00007
00008 #ifndef BALL_COMMON_GLOBAL_H
00009 # include <BALL/COMMON/global.h>
00010 #endif
00011
00012 #ifdef BALL_COMPILER_MSVC
00013 # include <BALL/VIEW/UIC/ui_molecularDynamicsDialog.h>
00014 #else
00015 # include <BALL/VIEW/UIC/molecularDynamicsDialogData.h>
00016 #endif
00017
00018
00019 #ifndef BALL_VIEW_KERNEL_PREFERENCESENTRY
00020 # include <BALL/VIEW/KERNEL/preferencesEntry.h>
00021 #endif
00022
00023 namespace BALL
00024 {
00025 namespace VIEW
00026 {
00027 class AmberConfigurationDialog;
00028 class CharmmConfigurationDialog;
00029 class MMFF94ConfigurationDialog;
00030
00034 class BALL_VIEW_EXPORT MolecularDynamicsDialog
00035 : public QDialog,
00036 public Ui_MolecularDynamicsDialogData,
00037 public PreferencesEntry
00038 {
00039 Q_OBJECT
00040
00041 public:
00042
00044 MolecularDynamicsDialog(QWidget* parent = NULL, const char* name = "MolecularDynamicsDialog" );
00045
00047 virtual ~MolecularDynamicsDialog();
00048
00050 float getSimulationTime() const;
00051
00053 Size getNumberOfSteps() const;
00054
00056 void setNumberOfSteps(Size steps);
00057
00059 void setTimeStep(float time);
00060
00062 float getTimeStep() const;
00063
00065 bool useMicroCanonical() const;
00066
00068 void setMicroCanonical(bool state);
00069
00071 void setTemperature(float temperature);
00072
00074 float getTemperature() const;
00075
00077 String getDCDFile() const;
00078
00080 void setDCDFile(const String& name);
00081
00083 Size getStepsBetweenRefreshs() const;
00084
00086 void setAmberDialog(AmberConfigurationDialog* amber_dialog);
00087
00089 void setCharmmDialog(CharmmConfigurationDialog* charmm_dialog);
00090
00092 void setMMFF94Dialog(MMFF94ConfigurationDialog* dialog);
00093
00095 void selectForceField(Position nr);
00096
00098 Position selectedForceField() const;
00099
00100 public slots:
00101
00103 virtual void accept();
00104
00105 protected slots:
00106
00107 virtual void enableDCDFileSelected();
00108
00110 void advancedOptions();
00111
00113 void chooseDCDFile();
00114
00115 void timeChanged();
00116
00117 private:
00118 AmberConfigurationDialog* amber_dialog_;
00119 CharmmConfigurationDialog* charmm_dialog_;
00120 MMFF94ConfigurationDialog* mmff_dialog_;
00121 };
00122
00123 } }
00124 #endif