#ifndef HAUSDORFF_SETTING_H
#define HAUSDORFF_SETTING_H

#include <QWidget>
#include "hausdorf_form.h"

#include <my_image.h>

#include <hausdorff/hausdorff.h>
#include <QTime>
#include <QMessageBox>
namespace Ui {
    class hausdorff_setting;
}

class hausdorff_setting : public QWidget {
    Q_OBJECT
public:
    hausdorff_setting(QWidget *parent = 0);
    ~hausdorff_setting();
    hausdorf_form *form;
    void load_image(my_image *img);
    void load_ref_image(my_image *img);
    std::vector<BOD> position;//vysledek

    int Time;
    int Time_ref;
protected:
    void changeEvent(QEvent *e);
    my_image * Make_Image_Modifi(my_image *im);
    my_image *image;
    my_image *image_ref;
    QPalette paletteOK;
    QPalette paletteERR;
    hausdorff * haus;
    bool CanHRun;
    bool ResultIsValid;
private:
    Ui::hausdorff_setting *ui;
public slots:
    void ShowResult();
    void ShowForm();//pri kliku na tlacitko zobraz formular
    void RefImageIsLoaded();//signal prjde pokud uzivatel nacte novy obraz - povoleni tlacitka pro nacteni obrazu do tridy
    void ImageIsLoaded();//signal prjde pokud uzivatel nacte novy obraz - povoleni tlacitka pro nacteni obrazu do tridy

    void NeedLoadRefImage();//tato funkce vysle signal hlavnimu oknu aby hlavni okno nacetlo obraz do tridy
    void NeedLoadImage();//tato funkce vysle signal hlavnimu oknu aby hlavni okno nacetlo obraz do tridy
signals:
    void NeedLoadRef(int i);
    void NeedLoadImg(int i);
};

#endif // HAUSDORFF_SETTING_H
