Options
All
  • Public
  • Public/Protected
  • All
Menu

Hierarchy

Implements

Index

Constructors

constructor

Properties

Private pairs

pairs: any = new Array<any>(RSSExpandedReader.MAX_PAIRS)

Private rows

rows: any = new Array<any>()

Private Readonly startEnd

startEnd: number[] = [2]

Private startFromEven

startFromEven: boolean

Static Private Readonly EVEN_TOTAL_SUBSET

EVEN_TOTAL_SUBSET: number[] = [4, 20, 52, 104, 204]

Static Private Readonly FINDER_PATTERNS

FINDER_PATTERNS: Int32Array[] = [Int32Array.from([1, 8, 4, 1]), // AInt32Array.from([3, 6, 4, 1]), // BInt32Array.from([3, 4, 6, 1]), // CInt32Array.from([3, 2, 8, 1]), // DInt32Array.from([2, 6, 5, 1]), // EInt32Array.from([2, 2, 9, 1]) // F]

Static Private Readonly FINDER_PATTERN_SEQUENCES

FINDER_PATTERN_SEQUENCES: number[][] = [[RSSExpandedReader.FINDER_PAT_A, RSSExpandedReader.FINDER_PAT_A],[RSSExpandedReader.FINDER_PAT_A, RSSExpandedReader.FINDER_PAT_B, RSSExpandedReader.FINDER_PAT_B],[RSSExpandedReader.FINDER_PAT_A, RSSExpandedReader.FINDER_PAT_C, RSSExpandedReader.FINDER_PAT_B, RSSExpandedReader.FINDER_PAT_D],[RSSExpandedReader.FINDER_PAT_A, RSSExpandedReader.FINDER_PAT_E, RSSExpandedReader.FINDER_PAT_B, RSSExpandedReader.FINDER_PAT_D, RSSExpandedReader.FINDER_PAT_C],[RSSExpandedReader.FINDER_PAT_A, RSSExpandedReader.FINDER_PAT_E, RSSExpandedReader.FINDER_PAT_B, RSSExpandedReader.FINDER_PAT_D, RSSExpandedReader.FINDER_PAT_D, RSSExpandedReader.FINDER_PAT_F],[RSSExpandedReader.FINDER_PAT_A, RSSExpandedReader.FINDER_PAT_E, RSSExpandedReader.FINDER_PAT_B, RSSExpandedReader.FINDER_PAT_D, RSSExpandedReader.FINDER_PAT_E, RSSExpandedReader.FINDER_PAT_F, RSSExpandedReader.FINDER_PAT_F],[RSSExpandedReader.FINDER_PAT_A, RSSExpandedReader.FINDER_PAT_A, RSSExpandedReader.FINDER_PAT_B, RSSExpandedReader.FINDER_PAT_B, RSSExpandedReader.FINDER_PAT_C, RSSExpandedReader.FINDER_PAT_C, RSSExpandedReader.FINDER_PAT_D, RSSExpandedReader.FINDER_PAT_D],[RSSExpandedReader.FINDER_PAT_A, RSSExpandedReader.FINDER_PAT_A, RSSExpandedReader.FINDER_PAT_B, RSSExpandedReader.FINDER_PAT_B, RSSExpandedReader.FINDER_PAT_C, RSSExpandedReader.FINDER_PAT_C, RSSExpandedReader.FINDER_PAT_D, RSSExpandedReader.FINDER_PAT_E, RSSExpandedReader.FINDER_PAT_E],[RSSExpandedReader.FINDER_PAT_A, RSSExpandedReader.FINDER_PAT_A, RSSExpandedReader.FINDER_PAT_B, RSSExpandedReader.FINDER_PAT_B, RSSExpandedReader.FINDER_PAT_C, RSSExpandedReader.FINDER_PAT_C, RSSExpandedReader.FINDER_PAT_D, RSSExpandedReader.FINDER_PAT_E, RSSExpandedReader.FINDER_PAT_F, RSSExpandedReader.FINDER_PAT_F],[RSSExpandedReader.FINDER_PAT_A, RSSExpandedReader.FINDER_PAT_A, RSSExpandedReader.FINDER_PAT_B, RSSExpandedReader.FINDER_PAT_B, RSSExpandedReader.FINDER_PAT_C, RSSExpandedReader.FINDER_PAT_D, RSSExpandedReader.FINDER_PAT_D, RSSExpandedReader.FINDER_PAT_E, RSSExpandedReader.FINDER_PAT_E, RSSExpandedReader.FINDER_PAT_F, RSSExpandedReader.FINDER_PAT_F],]

Static Private Readonly FINDER_PAT_A

FINDER_PAT_A: 0 = 0

Static Private Readonly FINDER_PAT_B

FINDER_PAT_B: 1 = 1

Static Private Readonly FINDER_PAT_C

FINDER_PAT_C: 2 = 2

Static Private Readonly FINDER_PAT_D

FINDER_PAT_D: 3 = 3

Static Private Readonly FINDER_PAT_E

FINDER_PAT_E: 4 = 4

Static Private Readonly FINDER_PAT_F

FINDER_PAT_F: 5 = 5

Static Private Readonly GSUM

GSUM: number[] = [0, 348, 1388, 2948, 3988]

Static Private Readonly MAX_PAIRS

MAX_PAIRS: 11 = 11

Static Private Readonly SYMBOL_WIDEST

SYMBOL_WIDEST: number[] = [7, 5, 4, 3, 1]

Static Private Readonly WEIGHTS

WEIGHTS: number[][] = [[1, 3, 9, 27, 81, 32, 96, 77],[20, 60, 180, 118, 143, 7, 21, 63],[189, 145, 13, 39, 117, 140, 209, 205],[193, 157, 49, 147, 19, 57, 171, 91],[62, 186, 136, 197, 169, 85, 44, 132],[185, 133, 188, 142, 4, 12, 36, 108],[113, 128, 173, 97, 80, 29, 87, 50],[150, 28, 84, 41, 123, 158, 52, 156],[46, 138, 203, 187, 139, 206, 196, 166],[76, 17, 51, 153, 37, 111, 122, 155],[43, 129, 176, 106, 107, 110, 119, 146],[16, 48, 144, 10, 30, 90, 59, 177],[109, 116, 137, 200, 178, 112, 125, 164],[70, 210, 208, 202, 184, 130, 179, 115],[134, 191, 151, 31, 93, 68, 204, 190],[148, 22, 66, 198, 172, 94, 71, 2],[6, 18, 54, 162, 64, 192, 154, 40],[120, 149, 25, 75, 14, 42, 126, 167],[79, 26, 78, 23, 69, 207, 199, 175],[103, 98, 83, 38, 114, 131, 182, 124],[161, 61, 183, 127, 170, 88, 53, 159],[55, 165, 73, 8, 24, 72, 5, 15],[45, 135, 194, 160, 58, 174, 100, 89]]

Methods

Private adjustOddEvenCounts

  • adjustOddEvenCounts(numModules: any): void

Private checkChecksum

  • checkChecksum(): boolean

Private checkRows

  • checkRows(collectedRows: any, currentRow: number): Array<ExpandedPair>

Private checkRowsBoolean

decode

decodeDataCharacter

decodeRow

decodeRow2pairs

Private findNextPair

Protected getDataCharacterCounters

  • getDataCharacterCounters(): Int32Array

Protected getDecodeFinderCounters

  • getDecodeFinderCounters(): Int32Array

Protected getEvenCounts

  • getEvenCounts(): number[]

Protected getEvenRoundingErrors

  • getEvenRoundingErrors(): number[]

Protected getOddCounts

  • getOddCounts(): number[]

Protected getOddRoundingErrors

  • getOddRoundingErrors(): number[]

getRows

  • getRows(): any

isEmptyPair

  • isEmptyPair(pairs: any): boolean

Protected parseFinderValue

  • parseFinderValue(counters: Int32Array, finderPatterns: Int32Array[]): number

Private parseFoundFinderPattern

Private removePartialRows

reset

  • reset(): void

retrieveNextPair

Private storeRow

  • storeRow(rowNumber: number, wasReversed: boolean): void

Static constructResult

Static Protected count

  • count(array: number[]): number

Static Protected decrement

  • decrement(array: number[], errors: number[]): void

Static Private getNextSecondBar

  • getNextSecondBar(row: BitArray, initialPos: number): number

Static Protected increment

  • increment(array: number[], errors: number[]): void

Static Protected isFinderPattern

  • isFinderPattern(counters: Int32Array): boolean

Static Private isNotA1left

  • isNotA1left(pattern: FinderPattern, isOddPattern: boolean, leftChar: boolean): boolean

Static Private isPartialRow

  • isPartialRow(pairs: any, rows: any): boolean

Static Private isValidSequence

Static Protected patternMatchVariance

  • patternMatchVariance(counters: Int32Array, pattern: Int32Array, maxIndividualVariance: number): number
  • Determines how closely a set of observed counts of runs of black/white values matches a given target pattern. This is reported as the ratio of the total variance from the expected pattern proportions across all pattern elements, to the length of the pattern.

    Parameters

    • counters: Int32Array

      observed counters

    • pattern: Int32Array

      expected pattern

    • maxIndividualVariance: number

      The most any counter can differ before we give up

    Returns number

    ratio of total variance between counters and pattern compared to total pattern size

Static Protected recordPattern

  • recordPattern(row: BitArray, start: number, counters: Int32Array): void
  • Records the size of successive runs of white and black pixels in a row, starting at a given point. The values are recorded in the given array, and the number of runs recorded is equal to the size of the array. If the row starts on a white pixel at the given start point, then the first count recorded is the run of white pixels starting from that point; likewise it is the count of a run of black pixels if the row begin on a black pixels at that point.

    throws

    NotFoundException if counters cannot be filled entirely from row before running out of pixels

    Parameters

    • row: BitArray

      row to count from

    • start: number

      offset into row to start at

    • counters: Int32Array

      array into which to record counts

    Returns void

Static Protected recordPatternInReverse

  • recordPatternInReverse(row: BitArray, start: number, counters: Int32Array): void

Static Private reverseCounters

  • reverseCounters(counters: any): void

Generated using TypeDoc