/* * qTabSettings.h * * Created on: May 10, 2012 * Author: l_maliakal_d */ #ifndef QTABSETTINGS_H_ #define QTABSETTINGS_H_ #include "qDefs.h" /** Form Header */ #include "ui_form_tab_settings.h" /** Project Class Headers */ class multiSlsDetector; /** Qt Include Headers */ #include /** *@short sets up the Settings parameters */ class qTabSettings:public QWidget, private Ui::TabSettingsObject{ Q_OBJECT public: /** \short The constructor * @param parent is the parent tab widget * @param detector is the detector returned from the detector tab */ qTabSettings(QWidget *parent,multiSlsDetector*& detector); /** Destructor */ ~qTabSettings(); /** To refresh and update widgets */ void Refresh(); /** To enable expert mode * @param enable to enable if true */ void SetExpertMode(bool enable){expertMode = enable;}; private: /** The sls detector object */ multiSlsDetector *myDet; /** detector type */ slsDetectorDefs::detectorType detType; /** expert mode */ bool expertMode; enum{Standard,Fast,HighGain,DynamicGain,LowGain,MediumGain,VeryHighGain,LowNoise, DynamicHG0,FixGain1,FixGain2,ForceSwitchG1,ForceSwitchG2, VeryLowGain, Undefined,Uninitialized,NumSettings}; /** To be able to index items on a combo box */ QStandardItemModel* model; QModelIndex index[NumSettings]; QStandardItem* item[NumSettings]; /** Sets up the widget */ void SetupWidgetWindow(); /** Sets up the detector settings */ void SetupDetectorSettings(); /** Sets up all the slots and signals */ void Initialization(); /** Gets the dynamic range and sets it on the gui * @param setvalue the value set by the gui when used as a check */ void GetDynamicRange(int setvalue = -1); private slots: /** Set settings according to selection * @param index index of selection */ void setSettings(int index); /** Set number of modules if possible * @param index number of modules */ void SetNumberOfModules(int index); /** Set dynamic range if possible * @param index selection */ void SetDynamicRange(int index); /** Set threshold energy */ void SetEnergy(); signals: /**Update Trimbits after Set Settings */ void UpdateTrimbitSignal(int); }; #endif /* QTABSETTINGS_H_ */