Trait

de.sciss.lucre.matrix.Matrix

Reader

Related Doc: package Matrix

Permalink

trait Reader extends AnyRef

A reader is a two dimensional view of the matrix, where time proceeds along the streaming dimension used when calling getKey. The streaming dimension is reflected by the number of frames.

The reader is stateful and remembers the number of frames read (current position). When created, the reader's position is zero. If one tries to read more than numFrames frames, an exception will be thrown.

Linear Supertypes
AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Reader
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Abstract Value Members

  1. abstract def numChannels: Int

    Permalink

    The number of channels is the matrix size divided by the number of frames.

  2. abstract def numFrames: Long

    Permalink

    The number of frames which is the size of the streaming dimension, or 1 if no streaming is used.

  3. abstract def readDouble1D(buf: Array[Double], off: Int, len: Int): Unit

    Permalink

    Reads a chunk of matrix data into a provided buffer.

    Reads a chunk of matrix data into a provided buffer. Multi-dimensional matrices are de-interleaved according to their natural dimensional ordering.

    Note: Calls must not be mixed with calls to readFloat2D or readWindowDouble1D!

    buf

    the buffer to read into. This must have at least a size of off + len.

    off

    the offset into buf

    len

    the number of elements to read

  4. abstract def readFloat2D(buf: Array[Array[Float]], off: Int, len: Int): Unit

    Permalink

    Reads a chunk of matrix data into a provided buffer.

    Reads a chunk of matrix data into a provided buffer. If the stream-transposed matrix has more than two dimensions, the de-interleaving is regularly from from to back. E.g. in a matrix of shape [a][b][c], if a is the streaming dimension, the first channel is b0, c0, the second channel is b0, c1, and so on until b0, ck-1 where k is the size of third dimension, followed by b1, c0 etc.

    Note: Calls must not be mixed with calls to readDouble1 or readWindowDouble1D!

    buf

    the buffer to read into. This must be two-dimensional with the outer dimension corresponding to channels, and the inner arrays having at least a size of off + len.

    off

    the offset into each channel of buf

    len

    the number of frames to read

  5. abstract def readWindowDouble1D(dims: Array[Int], buf: Array[Double], off: Int): Unit

    Permalink

    Reads a window (chunk) of matrix data into a provided buffer.

    Reads a window (chunk) of matrix data into a provided buffer. The window is a selection of dimensions, provided by the dims argument. For each call, a successive window is read, where successive means iterating over the remaining dimensions.

    For example, if the input matrix has shape [time: 180][lon: 12][lat: 36][alt: 601], then specifying dims = [0, 3] means that we get time-altitude windows, the first window corresponding to lon = 0, lat = 0, the second window corresponding to lon = 0, lat = 1, the 37th window corresponding to lon = 1, lat = 0, etc.

    Note: Calls must not be mixed with calls to readFloat2D or readDouble1D! Also in repeated calls, dims must not be changed.

    dims

    array of dimension indices which form the window.

    buf

    the buffer to read into. This must have at least a size of off + len.

    off

    the offset into buf

  6. abstract def size: Long

    Permalink

    The number of elements in the underlying matrix (section).

Concrete 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. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  6. final def eq(arg0: AnyRef): Boolean

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

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

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

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

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

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

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

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

    Permalink
    Definition Classes
    AnyRef
  15. final def synchronized[T0](arg0: ⇒ T0): T0

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

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

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

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

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from AnyRef

Inherited from Any

Ungrouped