Class

geotrellis.benchmark

CalcFastFocalMean

Related Doc: package benchmark

Permalink

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
Visibility
  1. Public
  2. All

Instance Constructors

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

    Permalink

Value Members

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

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

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

    Permalink
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  5. final def calc: Tile

    Permalink

    This is the function that manages the whole calculation.

  6. def clone(): AnyRef

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

    Permalink
  8. final val data: ArrayTile

    Permalink
  9. final val diameter: Int

    Permalink
  10. final def eq(arg0: AnyRef): Boolean

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

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

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

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

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

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

    Permalink
    Definition Classes
    AnyRef
  17. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  18. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  19. final val out: MutableArrayTile

    Permalink
  20. final def precalc(row: Int): Unit

    Permalink

    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.

  21. final val radius: Int

    Permalink
  22. final def sumall(row: Int): Unit

    Permalink

    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.

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

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

    Permalink
    Definition Classes
    AnyRef
  25. def toString(): String

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

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

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

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

    Permalink

    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