ExamplesJaCoP
Class Filter

java.lang.Object
  extended by ExamplesJaCoP.Filter
Direct Known Subclasses:
AR, DCT, DFQ, DOT, EWF, FFT, FIR, FIR16

public abstract class Filter
extends java.lang.Object

It provides the basic functionality which must be implemented by any filter problem.

Version:
3.0
Author:
Krzysztof Kuchcinski and Radoslaw Szymanek

Field Summary
 int addDel
          It denotes the delay of the addition.
static int addId
          It denotes the identifier of the addition.
 int[][] dependencies
          It specifies the dependencies between the operation.
 int[] ids
          It specifies the type of each operation of a given position.
 int[] last
          It denotes the indexes of the operations on which no other operation depends on.
 int mulDel
          It denotes the delay of the multiplication.
static int mulId
          It specifies the identifier of the multiplication.
 java.lang.String name
          It specifies the name of the filter.
 
Constructor Summary
Filter()
           
 
Method Summary
 int addDel()
          It returns the delay of the addition operation.
 int addId()
          It returns the id of the addition operation.
 int[] delays()
          It returns the array with the delays of all operations.
 int[][] dependencies()
          It returns the dependencies between operations which need to be satisfy in the final solution.
 int[] ids()
          It returns the ids of each operation.
 int[] lastOp()
          It returns the list of operations which are not preceding any other operation.
 int mulDel()
          It returns the delay of the multiplication operation.
 int mulId()
          It returns the id of the multiplication operation.
 java.lang.String name()
          It returns a string id of the problem.
abstract  java.util.ArrayList<java.lang.String> names()
          It specifies the names of the operations for the representation of the solution in textual form.
abstract  java.util.ArrayList<java.lang.String> namesPipeline()
          It specifies the names of the operations for the textual representation of the pipelined solution.
 int noAdd()
          It returns a number of addition operations in the current problem.
 int noMul()
          It returns a number of multiplications operations in the current problem.
 int noOp()
          It returns the number of operations in the filter.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

addDel

public int addDel
It denotes the delay of the addition.


mulDel

public int mulDel
It denotes the delay of the multiplication.


addId

public static final int addId
It denotes the identifier of the addition.

See Also:
Constant Field Values

mulId

public static final int mulId
It specifies the identifier of the multiplication.

See Also:
Constant Field Values

name

public java.lang.String name
It specifies the name of the filter.


dependencies

public int[][] dependencies
It specifies the dependencies between the operation. Each dependency is denoted by two element array. The first element of the array denotes the operation which must be executed before the operation denoted by the second element of the array.


ids

public int[] ids
It specifies the type of each operation of a given position.


last

public int[] last
It denotes the indexes of the operations on which no other operation depends on. The makespan of the schedule executing given filter depends on the maximal execution time of one of this operations.

Constructor Detail

Filter

public Filter()
Method Detail

dependencies

public int[][] dependencies()
It returns the dependencies between operations which need to be satisfy in the final solution.

Returns:
list of dependencies.

ids

public int[] ids()
It returns the ids of each operation.

Returns:
an array of ids.

delays

public int[] delays()
It returns the array with the delays of all operations. The length of the returned array is equal to the number of operations in the particular filter problem.

Returns:
an array with the delays of the operations.

noOp

public int noOp()
It returns the number of operations in the filter. It is not the number of different operations.

Returns:
number of operations present in the filter.

name

public java.lang.String name()
It returns a string id of the problem.

Returns:
id of the filter problem being modeled and solved.

noAdd

public int noAdd()
It returns a number of addition operations in the current problem.

Returns:
number of addition operations.

noMul

public int noMul()
It returns a number of multiplications operations in the current problem.

Returns:
number of multiplications operations.

addDel

public int addDel()
It returns the delay of the addition operation.

Returns:
the delay of the addition operation.

mulDel

public int mulDel()
It returns the delay of the multiplication operation.

Returns:
the delay of the multiplication operation.

addId

public int addId()
It returns the id of the addition operation.

Returns:
the id of the addition operation.

mulId

public int mulId()
It returns the id of the multiplication operation.

Returns:
the id of the multiplication operation.

lastOp

public int[] lastOp()
It returns the list of operations which are not preceding any other operation.

Returns:
it returns the indexes of the operations which are used to compute the makespan of the schedule.

names

public abstract java.util.ArrayList<java.lang.String> names()
It specifies the names of the operations for the representation of the solution in textual form.

Returns:
list of names.

namesPipeline

public abstract java.util.ArrayList<java.lang.String> namesPipeline()
It specifies the names of the operations for the textual representation of the pipelined solution.

Returns:
list of names.