Class Filter

java.lang.Object
org.jacop.examples.fd.filters.Filter
Direct Known Subclasses:
AR, DCT, DFQ, DOT, EWF, FFT, FIR, FIR16

public abstract class Filter extends 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
    It denotes the delay of the addition.
    static final int
    It denotes the identifier of the addition.
    int[][]
    It specifies the dependencies between the operation.
    int[]
    It specifies the type of each operation of a given position.
    int[]
    It denotes the indexes of the operations on which no other operation depends on.
    int
    It denotes the delay of the multiplication.
    static final int
    It specifies the identifier of the multiplication.
    It specifies the name of the filter.
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    int
    It returns the delay of the addition operation.
    int
    It returns the id of the addition operation.
    int[]
    It returns the array with the delays of all operations.
    int[][]
    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[]
    It returns the list of operations which are not preceding any other operation.
    int
    It returns the delay of the multiplication operation.
    int
    It returns the id of the multiplication operation.
    It returns a string id of the problem.
    abstract List<String>
    It specifies the names of the operations for the representation of the solution in textual form.
    abstract List<String>
    It specifies the names of the operations for the textual representation of the pipelined solution.
    int
    It returns a number of addition operations in the current problem.
    int
    It returns a number of multiplications operations in the current problem.
    int
    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 Details

    • 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:
    • mulId

      public static final int mulId
      It specifies the identifier of the multiplication.
      See Also:
    • name

      public 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 Details

    • Filter

      public Filter()
  • Method Details

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