geotrellis.benchmark

CalcFastFocalMean

final class CalcFastFocalMean extends AnyRef

This class encompasses an attempt to create a fast sequential focal mean operation, using whatever tricks we can to eke out some speed.

We require the raster to contain array data, which we will look up via apply instead of get. The kernel is a square, and the length of a side is twice the radius plus one. Thus, radius=1 means a 3x3 square kernel (9 cells), and radius=3 means a 7x7 square kernel (49 cells).

Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. CalcFastFocalMean
  2. AnyRef
  3. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Instance Constructors

  1. new CalcFastFocalMean(r: Tile, n: Int)

Value Members

  1. final def !=(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  2. final def !=(arg0: Any): Boolean

    Definition Classes
    Any
  3. final def ##(): Int

    Definition Classes
    AnyRef → Any
  4. final def ==(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  5. final def ==(arg0: Any): Boolean

    Definition Classes
    Any
  6. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  7. final def calc: Tile

    This is the function that manages the whole calculation.

  8. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  9. final val countsByCol: Array[Array[Int]]

  10. final val data: ArrayTile

  11. final val diameter: Int

  12. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  13. def equals(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  14. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  15. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  16. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  17. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  18. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  19. final def notify(): Unit

    Definition Classes
    AnyRef
  20. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  21. final val out: MutableArrayTile

  22. final def precalc(row: Int): Unit

    For a particular row, we want to create all the horizontal sums for each cell in that row, and store those sums in the appropriate "line".

    For a particular row, we want to create all the horizontal sums for each cell in that row, and store those sums in the appropriate "line".

    At the start (where the kernel goes off the left side of the raster) line(0) will be the sum of the first (radius + 1) cells, line(1) will be the sum of the first (radius + 2) cells, and so on. By the middle of the raster each sum will involve diameter cells, and then at the right we will taper back to down (radius + 1) cells.

  23. final val radius: Int

  24. final def sumall(row: Int): Unit

    For a particular row, sum all the available "row sums" and record the results in the out.

    For a particular row, sum all the available "row sums" and record the results in the out. After we've called sumall() on all rows, the calculation will be complete.

  25. final val sumsByCol: Array[Array[Int]]

  26. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  27. def toString(): String

    Definition Classes
    AnyRef → Any
  28. final def wait(): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  29. final def wait(arg0: Long, arg1: Int): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  30. final def wait(arg0: Long): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  31. final def zero(row: Int): Unit

    Initialize a particular line to zeros.

    Initialize a particular line to zeros. We need to do this once we're on the "right edge" of the raster and don't have new data to use.

Inherited from AnyRef

Inherited from Any

Ungrouped