Class 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:
    4.8
    • Field Summary

      Fields 
      Modifier and Type Field Description
      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

      Constructors 
      Constructor Description
      Filter()  
    • Method Summary

      All Methods Instance Methods Abstract Methods Concrete Methods 
      Modifier and Type Method Description
      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.List<java.lang.String> names()
      It specifies the names of the operations for the representation of the solution in textual form.
      abstract java.util.List<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

        clone, equals, finalize, 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.List<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.List<java.lang.String> namesPipeline()
        It specifies the names of the operations for the textual representation of the pipelined solution.
        Returns:
        list of names.