package tvark.beans;

import tvark.old.Bayes;
import tvark.old.Property;
import tvark.old.Schedule;

public class ParamsBayesBean extends MethodParamsBean {
	
	private int mIterationsSa = 100;
	private int mIterationsBayes = 5;
	private int mbayes_on = 1;     //spausdinimo pajungimui
	private int mbayes_x1 = 1000;   //x1_min
	private int mbayes_x2 = 10000; //x1_max
	private int mbayes_y1 = 1;     //x2_min
	private int mbayes_y2 = 10;    //x2_max
	private int bayes_best = 1;
	private int bayes_best_current=0;

	public void setmBeyes_on(int mbayes_on) {
		this.mbayes_on = 1;}
	public int getmBayes_on() {   // metodas kuriamas spausdinimui
		return mbayes_on;}
	//------------------------------- Bayes parametrai --------------------
	public void setBayesX1(int pbayes_x1)
		{this.mbayes_x1 = pbayes_x1;}
	public int getBayesX1()
	 	{return mbayes_x1;}// bayes x1
	
	public void setBayesY1(int pbayes_y1)
		{this.mbayes_y1 = pbayes_y1;}
	public int getBayesY1()
 		{return mbayes_y1;}// bayes y1
	
	public void setBayesX2(int pbayes_x2)
		{this.mbayes_x2 = pbayes_x2;}
	public int getBayesX2()
 		{return mbayes_x2;}// bayes x2
	public void setBayesY2(int pbayes_y2)
		{this.mbayes_y2 = pbayes_y2;}
	public int getBayesY2()
		{return mbayes_y2;}// bayes y2
	
	public int getbayes_best() {
		return bayes_best;	}
	public void setbayes_best(int bayes_best) {
		this.bayes_best = bayes_best;
	}
	public int getbayes_best_current() {//----------------- einamasis beyes rezultatas
		return bayes_best_current;	}
	public void setbayes_best_current(int bayes_best_current) {
		this.bayes_best_current = bayes_best_current;
	}
//--------------------------------------------------------------------------
	
	public int getIterationsSa() {
		return mIterationsSa;	}
	public void setIterationsSa(int pIterationsSa) {
		mIterationsSa = pIterationsSa;	}

	public int getIterationsBayes() {
		return mIterationsBayes;	}
	public void setIterationsBayes(int pIterationsBayes) {
		mIterationsBayes = pIterationsBayes;	}

	@Override
	protected Schedule execute(Schedule pSchedule, Property pProperty) {
		return new Bayes(pSchedule, pProperty).getBest();
	}

}
