#ifndef PANEL_SOLVATION_H
#define PANEL_SOLVATION_H

#ifndef PANEL_H
#include "Panel.h"
#endif

#ifndef DYNAMIC_SINGLETON_H
#include "Dynamic_singleton.h"
#endif

#ifndef UI_PANEL_SOLVATION_H
#include "ui_Panel_solvation.h"
#endif

#ifndef TITLE_H
#include "Program_title.h"
#endif

namespace MM
{

class Panel_solvation
:
    public Panel,
    public Ui_Panel_solvation,
    public Dynamic_singleton <Panel_solvation>
{
    Q_OBJECT

public:    
    Panel_solvation ();
   ~Panel_solvation ();

   Text             path () const;

public slots:
    void            set_method (const QString & text);

    void            set_on         (int);

#ifndef ASCALAPH
    void            set_Sigma   (double);
    void            set_F       (double);
    void            set_Phi     (double);
    void            set_a       (double);
    void            set_b       (double);
    void            set_Shift   (double);
    void            set_Power   (double);
    void            set_R_probe (double);
    void            set_R_H     (double);
    void            set_ignore_HNO (int);
    void            set_FF_radii   (int);
#endif

    void            set_a_Sheffield   (double);
    void            set_R_H_Sheffield (double);

    //void            check_OPLS    ();
    //void            check_AMBER94 ();
    void            check ();
    void            check (const char *);
    void            calc (Model &, const char * ff_name);
};

}//MM

#endif //PANEL_SOLVATION_H
