package tvark.old;
import java.io.Serializable;

/*
 * Class Teacher
 * Stores and analyses teachers information
 * Status: Debug
 * Last modified: April 05 2007
 * Speed Unknown
 */
public class Teacher implements Serializable{
	/**
	 * 
	 */ 
	private static final long serialVersionUID = 9115962850948965839L;
	private int hours[];
	private int HoursNeaded[];
	private String ClassGrops[][];
	private int TeachRooms[][];
	private String name, code, subjCode[];
	private Subject[] subjects;
	private int nr;
	private int[] Off = new int [5];
	
	private boolean[][] busy;
	private boolean[][][] full;
	
	Teacher(){
		name ="";
		code ="";
		busy = new boolean[5][24];
//		full = new boolean[5][24][33];
	}
	

	public boolean isFull(int i,int j,int k) {
		return full[i][j][k];
	}
	public void setFull(int i,int j,int k) {
		this.full[i][j][k] = true;
	}
	public void unsetFull(int i,int j,int k) {
		this.full[i][j][k] = false;
	}


	public String getCode() {
		return code;
	}
	public void setCode(String code) {
		this.code = code;
	}

	
	public int[] getHours() {
		return hours;
	}
	public void setHours(int[] hours) {
		this.hours = hours;
	}

	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}

	public boolean isBusy(int i, int j) {
		return busy[i][j];
	}
	public void setBusy(int i, int j) {
		busy[i][j]=true;
	}
	public void unsetBusy(int i, int j) {
		busy[i][j]=false;
	}
	public boolean[][] getBusy() {
		return busy;
	}

	
	public String[] getSubjCode() {
		return subjCode;
	}
	public void setSubjCode(String[] subjCode) {
		this.subjCode = subjCode;
	}
	
	
	public void allocateNeeds(int subjCount){
		HoursNeaded = new int [subjCount];
	}
	
	
	public Subject[] getSubjects() {
		return subjects;
	}
	public void setSubjects(Subject[] subjects) {
		this.subjects = subjects;
	}

	
	public int[] getHoursNeaded() {
		return HoursNeaded;
	}
	public void setHoursNeaded(int[] hoursNeaded) {
		HoursNeaded = hoursNeaded;
	}
	public void setHoursNeaded(int index, int value) {
		HoursNeaded[index] = value;
	}

	
	public int getNr() {
		return nr;
	}
	public void setNr(int nr) {
		this.nr = nr;
	}

	
	public String[][] getClassGrops() {
		return ClassGrops;
	}
	public void setClassGrops(String[][] classGrops) {
		ClassGrops = classGrops;
	}

// kabinetu nasyvo elementu paëmimui
	public int[][] getRooms() {
		return TeachRooms;
	}
// kabinetu nasyvo elementu saugojimui	
	public void setRooms(int[][] teachRooms) {
		TeachRooms = teachRooms;
	}


	public int[] getOff() {
		return Off;
	}
	public void setOff(int index, int num) {
		Off[index] = num;
	}

}
