SpikeStream Nemo Plugin
0.2
|
00001 #ifndef NEMOPARAMETERSDIALOG_H 00002 #define NEMOPARAMETERSDIALOG_H 00003 00004 //SpikeStream includes 00005 00006 00007 //Qt includes 00008 #include <QComboBox> 00009 #include <QDialog> 00010 #include <QLabel> 00011 #include <QLayout> 00012 #include <QLineEdit> 00013 00014 //Other includes 00015 #include "nemo.h" 00016 00017 00018 namespace spikestream { 00019 00021 class NemoParametersDialog : public QDialog { 00022 Q_OBJECT 00023 00024 public: 00025 NemoParametersDialog(nemo_configuration_t nemoConfig, unsigned stdpFunctionID, QWidget* parent=0); 00026 ~NemoParametersDialog(); 00027 nemo_configuration_t getNemoConfig(){ return currentNemoConfig; } 00028 unsigned getSTDPFunctionID() { return stdpFunctionID; } 00029 00030 private slots: 00031 void backendChanged(int index); 00032 void defaultButtonClicked(); 00033 void okButtonClicked(); 00034 void stdpParameterButtonClicked(); 00035 00036 00037 private: 00038 //===================== VARIABLES ====================== 00040 nemo_configuration_t currentNemoConfig; 00041 00043 nemo_configuration_t defaultNemoConfig; 00044 00046 unsigned stdpFunctionID; 00047 00049 QComboBox* backendCombo; 00050 00052 QComboBox* cudaDeviceCombo; 00053 00055 QLabel* cudaDeviceLabel; 00056 00058 QComboBox* stdpCombo; 00059 00060 00061 //========================= METHODS =========================== 00062 void addButtons(QVBoxLayout* mainVLayout); 00063 void checkNemoOutput(nemo_status_t result, const QString& errorMessage); 00064 void getCudaDevices(QComboBox* combo); 00065 void getStdpFunctions(QComboBox* combo); 00066 void loadParameters(nemo_configuration_t config); 00067 void storeParameterValues(); 00068 }; 00069 00070 } 00071 00072 #endif//NEMOPARAMETERSDIALOG_H 00073