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

    CRC16Constructor that takes CRC16MethodEnum selector to choose CRC16 variation.
    CRC16A constructor to create instance of CRC16 with settings for custom variation.

    Properties

    ReferenceInitValueA reference starting value for the CRC for the selected CRC variation.

    Methods

    FinalGets the final checksum from the CRC.
    shared PluginVersionReturns the version number of the plugin.
    ResetResets the CRC stream.
    UpdateUpdates the CRC checksum with a string.
    UpdateByteUpdates the CRC checksum with a single byte
    UpdateMemoryBlockUpdates the CRC checksum with a memory block taking all bytes from the block.
    UpdateMemoryBlockUpdates 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 X Cocoa 32 bit
  • MacOS X Cocoa 64 bit
  • Windows 32 bit
  • Windows 64 bit
  • Linux 32 bit
  • Linux 64 bit
  • Linux ARM

    Unsupported Platforms:

  • MacOS X Carbon