Object/Class

spinal.lib

StreamUnpacker

Related Docs: class StreamUnpacker | package lib

Permalink

object StreamUnpacker

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

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. def apply[T <: Data, B <: PackedBundle](input: Stream[T], packedbundle: B): StreamUnpacker[T]

    Permalink

    Unpacks a Stream into a given PackedBundle The StreamUnpacker will read as many words from input as necessary to unpack all fields.

    Unpacks a Stream into a given PackedBundle The StreamUnpacker will read as many words from input as necessary to unpack all fields. Fields that exceed a word width will be wrapped into as many subsequent words needed.

    T

    Stream Data type

    B

    PackedBundle type

    input

    Stream to read from

    packedbundle

    PackedBundle to unpack into

    returns

    Unpacker instance

  5. def apply[T <: Data](input: Stream[T], layout: List[(Data, Int)]): StreamUnpacker[T]

    Permalink

    Unpacks a Stream given a layout of Data fields.

    Unpacks a Stream given a layout of Data fields. Field layout is accepted as pairs of Data and their start bits. Starting bits are interpreted as absolute bit positions within a multi-word layout. The StreamUnpacker will read as many words from input as necessary to unpack all fields. Fields that exceed a word width will be wrapped into as many subsequent words needed.

    T

    Stream Data type

    input

    Stream to read from

    layout

    List of Data fields and their start bits

    returns

    Unpacker instance

  6. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  7. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @HotSpotIntrinsicCandidate() @throws( ... )
  8. def decomposeField(field: Data, startBit: Int, wordWidth: Int): Map[Int, (Range, Range)]

    Permalink

    Decomposes a Data field into a map of words to Word-relative range -> Field-relative range.

    Decomposes a Data field into a map of words to Word-relative range -> Field-relative range. The starting bit is any absolute position within some set of words,

    For example, a word with 16 bits starting at bit 4 decomposed into 8 bit words would result in: { 0 -> ((4 to 7) -> (0 to 3)), 1 -> ((0 to 7) -> (4 to 11)), 2 -> ((0 to 3) -> (12 to 15)) }

    field

    Data to decompose

    startBit

    Bit to start at, as absolute position (may be greater than wordWidth)

    wordWidth

    Word width to decompose into it

    returns

    Map of word index to Word-relative range -> Field-relative range

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

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

    Permalink
    Definition Classes
    AnyRef → Any
  11. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
    Annotations
    @HotSpotIntrinsicCandidate()
  12. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
    Annotations
    @HotSpotIntrinsicCandidate()
  13. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  14. def layoutToWordMap(wordWidth: Int, layout: List[(Data, Int)]): LinkedHashMap[Data, Map[Int, (Range, Range)]]

    Permalink

    Converts a layout of Data and starting bit pairs into a map of word range to Data range slices for each word that the Data spans, indexed by each Data.

    Converts a layout of Data and starting bit pairs into a map of word range to Data range slices for each word that the Data spans, indexed by each Data. The return type is a 2D map relating each Data to each word index. The range pairs for each word index represent which bits of the word (local to the width of the word) map to the bits of Data that lie within the word.

    wordWidth

    Width of the Stream's words

    layout

    List of Data to starting bit pairs

    returns

    Map of Data, Map of word index to word range, Data range pair

  15. final def ne(arg0: AnyRef): Boolean

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

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @HotSpotIntrinsicCandidate()
  17. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @HotSpotIntrinsicCandidate()
  18. final def synchronized[T0](arg0: ⇒ T0): T0

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

    Permalink
    Definition Classes
    AnyRef → Any
  20. final def wait(arg0: Long, arg1: Int): Unit

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

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  22. final def wait(): Unit

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

Deprecated Value Members

  1. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @Deprecated @deprecated @throws( classOf[java.lang.Throwable] )
    Deprecated

    (Since version ) see corresponding Javadoc for more information.

Inherited from AnyRef

Inherited from Any

Ungrouped