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 #ifndef BALL_VIEW_KERNEL_PREFERENCESENTRY
00013 # include <BALL/VIEW/KERNEL/preferencesEntry.h>
00014 #endif
00015
00016 #include <BALL/VIEW/UIC/ui_molecularDynamicsDialog.h>
00017
00018 namespace BALL
00019 {
00020 namespace VIEW
00021 {
00022 class AmberConfigurationDialog;
00023 class CharmmConfigurationDialog;
00024 class MMFF94ConfigurationDialog;
00025
00029 class BALL_VIEW_EXPORT MolecularDynamicsDialog
00030 : public QDialog,
00031 public Ui_MolecularDynamicsDialogData,
00032 public PreferencesEntry
00033 {
00034 Q_OBJECT
00035
00036 public:
00037
00039 MolecularDynamicsDialog(QWidget* parent = NULL, const char* name = "MolecularDynamicsDialog" );
00040
00042 virtual ~MolecularDynamicsDialog();
00043
00045 float getSimulationTime() const;
00046
00048 Size getNumberOfSteps() const;
00049
00051 void setNumberOfSteps(Size steps);
00052
00054 void setTimeStep(float time);
00055
00057 float getTimeStep() const;
00058
00060 bool useMicroCanonical() const;
00061
00063 void setMicroCanonical(bool state);
00064
00066 void setTemperature(float temperature);
00067
00069 float getTemperature() const;
00070
00072 String getDCDFile() const;
00073
00075 void setDCDFile(const String& name);
00076
00078 Size getStepsBetweenRefreshs() const;
00079
00081 void setAmberDialog(AmberConfigurationDialog* amber_dialog);
00082
00084 void setCharmmDialog(CharmmConfigurationDialog* charmm_dialog);
00085
00087 void setMMFF94Dialog(MMFF94ConfigurationDialog* dialog);
00088
00090 void selectForceField(Position nr);
00091
00093 Position selectedForceField() const;
00094
00095 public slots:
00096
00098 virtual void accept();
00099
00100 protected slots:
00101
00102 virtual void enableDCDFileSelected();
00103
00105 void advancedOptions();
00106
00108 void chooseDCDFile();
00109
00110 void timeChanged();
00111
00112 private:
00113 AmberConfigurationDialog* amber_dialog_;
00114 CharmmConfigurationDialog* charmm_dialog_;
00115 MMFF94ConfigurationDialog* mmff_dialog_;
00116 };
00117
00118 } }
00119 #endif