e-CryptIt Engine - Checksums Xojo Plugin

CRC16 Class

A class to calculate CRC16 checksums. On strings, bytes or streams.

The class supports the following CRC16 variations:
  • GENERIC
  • AUG_CCITT
  • CCITT
  • DECT_R
  • DECT_X
  • EN_13757
  • GENIBUS
  • T10_DIF
  • TELEDISK
  • BUYPASS
  • DDS_110
  • DNP
  • MAXIM
  • RIELLO
  • MCRF4XX
  • TMS37157
  • USB
  • CRC_A
  • KERMIT
  • MODBUS
  • IBM_SDLC

    Object
       CRC16

    class CRC16

    Constructors

    CRC16 (console safe) Constructor that takes CRC16MethodEnum selector to choose CRC16 variation.
    CRC16 (console safe) A constructor to create instance of CRC16 with settings for custom variation.

    Properties

    ReferenceInitValue (console safe) A reference starting value for the CRC for the selected CRC variation.

    Methods

    Final (console safe) Gets the final checksum from the CRC.
    shared PluginVersionReturns the version number of the plugin.
    Reset (console safe) Resets the CRC stream.
    Update (console safe) Updates the CRC checksum with a string.
    UpdateByte (console safe) Updates the CRC checksum with a single byte
    UpdateMemoryBlock (console safe) Updates the CRC checksum with a memory block taking all bytes from the block.
    UpdateMemoryBlock (console safe) Updates the CRC checksum with a memory block taking selected bytes from the block.

    Enumerations

    CRC16MethodEnumA enum to supply for the CRC16 constructor to choose CRC16 variation.

    Examples


    Dim crc as CRC16 = new CRC16(CRC16.CRC16MethodEnum.CRC16_CCITT)
    Dim value as UInt16
    Dim testData as String = "123456789"

    testData = testData.ConvertEncoding(Encodings.ASCII)

    value = crc.Update(testData,crc.ReferenceInitValue)
    MsgBox Hex(crc.Final(value))

    Supported Platforms:

  • macOS Intel 64 bit
  • macOS Apple Silicon
  • Windows 32 bit
  • Windows 64 bit
  • Windows ARM 64 bit
  • Linux 32 bit
  • Linux 64 bit
  • Linux ARM 32 bit
  • Linux ARM 64 bit
  • iOS