package temp;

import java.io.PrintStream;
import java.util.Vector;

public class TransferFcn extends Block 
{
	Vector<Double> numerator;
	Vector<Double> denominator;
	boolean reset;
	
	public TransferFcn() 
	{
		reset=false;
		numerator=new Vector<Double>();
		denominator=new Vector<Double>();
	}
	
	public void translate(PrintStream ps, Assist assist)
	{
		int count=numerator.size();
		if(count!=5)
		{
			while(count!=5)
			{
				numerator.add(0.0);
				count++;
			}
		}
		int count2=denominator.size();
		if(count2!=5)
		{
			while(count2!=5)
			{
				denominator.add(0.0);
				count2++;
			}
		}
		if(numerator.get(0)!=0)
		{
			if(reset)
				ps.println("component simulinkLib.TransferFcnOIRes "+this.block_name+"("+this.numerator.get(0)+","+ this.numerator.get(1)+","+this.numerator.get(2)+","+this.numerator.get(3)+","+this.numerator.get(4) +","+this.denominator.get(0)+","+this.denominator.get(1)+","+this.denominator.get(2)+","+this.denominator.get(3)+","+this.denominator.get(4)+")");
			else
				ps.println("component simulinkLib.TransferFcnOI "+this.block_name+"("+this.numerator.get(0)+","+ this.numerator.get(1)+","+this.numerator.get(2)+","+this.numerator.get(3)+","+this.numerator.get(4) +","+this.denominator.get(0)+","+this.denominator.get(1)+","+this.denominator.get(2)+","+this.denominator.get(3)+","+this.denominator.get(4)+")");
		}
		else
		{
			if(reset)
				ps.println("component simulinkLib.TransferFcnIORes "+this.block_name+"("+this.numerator.get(0)+","+ this.numerator.get(1)+","+this.numerator.get(2)+","+this.numerator.get(3)+","+this.numerator.get(4) +","+this.denominator.get(0)+","+this.denominator.get(1)+","+this.denominator.get(2)+","+this.denominator.get(3)+","+this.denominator.get(4)+")");
			else
				ps.println("component simulinkLib.TransferFcnIO "+this.block_name+"("+this.numerator.get(0)+","+ this.numerator.get(1)+","+this.numerator.get(2)+","+this.numerator.get(3)+","+this.numerator.get(4) +","+this.denominator.get(0)+","+this.denominator.get(1)+","+this.denominator.get(2)+","+this.denominator.get(3)+","+this.denominator.get(4)+")");
		}
		assist.name.add(this.block_name+".act");
	}
}
