Click or drag to resize

RfidBank01 Class

The contents of the EPC/UII Bank (MB01) of an EPCglobal Gen2 / ISO 18000-6C RFID tag.
Inheritance Hierarchy
SystemObject
  GS1.EPC.ApiRfidBank01

Namespace: GS1.EPC.Api
Assembly: epc-epconly (in epc-epconly.dll) Version: 2.1.0.28145 (2.1.0.0)
Syntax
C#
public class RfidBank01

The RfidBank01 type exposes the following members.

Properties
 NameDescription
Public propertyAfi Returns the contents of the AFI portion of the UII bank (bits 18 to 1F hex). Bit 18 hex of the UII bank is the most significant bit of the result.
Public propertyAfiUiiBytes Returns the contents of the AFI and UII portions of the UII bank (i.e., beginning with bit 18 hex) as a sequence of 8-bit bytes. Bit 18 hex of the UII bank becomes the most significant bit of the zeroth element of the result. The number of elements in the result is always an odd number.
Public propertyAfiUiiHex Returns the contents of the AFI and UII portion of the UII bank (i.e., beginning with bit 18 hex) as a hexadecimal numeral. Bit 18 hex of the UII bank becomes the most significant bit of the first hex digit of the result. The number of hex digits in the result is always two plus a multiple of four.
Public propertyAttributeBits Returns the contents of the attribute bits of the EPC bank (bits 18 to 1F hex). Bit 18 hex of the EPC bank is the most significant bit of the result.
Public propertyBackscatterBytes Returns the contents of the PC, XPC, and EPC/UII portions of the EPC/UII bank (i.e., beginning with bit 10 hex) as a sequence of 8-bit bytes. Bit 10 hex of the EPC/UII bank becomes the most significant bit of the zeroth element of the result. If the XPC indicator bit (bit 16 hex) is zero, then the XPC is not included in the result. If the XPC indicator bit is one, then the XPC is elements 2 and 3 of the result, with the EPC/UII portion beginning at element 4. This corresponds to the sequence in which bits are backscattered in the Gen2/18000-6C Air Interface protocol, excluding the CRC bits. The number of elements in the result is always a multiple of two.
Public propertyBackscatterHex Returns the contents of the PC, XPC, and EPC/UII portions of the EPC/UII bank (i.e., beginning with bit 10 hex) as a hexadecimal numeral. Bit 10 hex of the EPC/UII bank becomes the most significant bit of the first character of the result. If the XPC indicator bit (bit 16 hex) is zero, then the XPC is not included in the result. If the XPC indicator bit is one, then the XPC is the fourth through eighth characters of the result, with the EPC/UII portion beginning with the ninth character. This corresponds to the sequence in which bits are backscattered in the Gen2/18000-6C Air Interface protocol, excluding the CRC bits. The number of elements in the result is always a multiple of four.
Public propertyBackscatterWords Returns the contents of the PC, XPC, and EPC/UII portions of the EPC/UII bank (i.e., beginning with bit 10 hex) as a sequence of 16-bit words. Bit 10 hex of the EPC/UII bank becomes the most significant bit of the zeroth element of the result. If the XPC indicator bit (bit 16 hex) is zero, then the XPC is not included in the result. If the XPC indicator bit is one, then the XPC is element 1 of the result, with the EPC/UII portion beginning at element 2. This corresponds to the sequence in which bits are backscattered in the Gen2/18000-6C Air Interface protocol, excluding the CRC bits.
Public propertyBarCodeCharacters Returns a Barcode String representation of the EPC contained in this EPC bank.
Public propertyDigitalLink Returns a Digital Link representation of the EPC contained in this EPC bank.
Public propertyEpcBytes Returns the contents of the EPC portion of the EPC bank (i.e., beginning with bit 20 hex) as a sequence of 8-bit bytes. Bit 20 hex of the EPC bank becomes the most significant bit of the zeroth element of the result. The number of elements in the result is always a multiple of two.
Public propertyEPCglobal Returns true if the PC toggle bit (bit 17 hex) is set to zero, indicating an EPCglobal application.
Public propertyEpcHex Returns the contents of the EPC portion of the EPC bank (i.e., beginning with bit 20 hex) as a hexadecimal numeral. Bit 20 hex of the EPC bank becomes the most significant bit of the first hex digit of the result. The number of hex digits in the result is always a multiple of four.
Public propertyEpcTagScheme Returns the EPC Tag Scheme of the the EPC contained in this EPC bank, if possible; otherwise throws an EPCException. An EPC Tag Scheme is returned if An EPC is returned if all of the following are true: (a) the toggle bit (bit 17 hex) is zero; (b) bits 20 hex through 27 hex, inclusive, exist and are equal to the EPC header for a defined EPC binary encoding; (c) the remaining bits required by that EPC binary encoding exist and do not violate any of the decoding rules for that encoding.
Public propertyEpcWords Returns the contents of the EPC portion of the EPC bank (i.e., beginning with bit 20 hex) as a sequence of 16-bit words. Bit 20 hex of the EPC bank becomes the most significant bit of the zeroth element of the result.
Public propertyHasUserMemory Returns true if the PC User Memory Indicator (UMI) bit (bit 15 hex) is set to one, indicating that user memory is present and non-empty.
Public propertyHasXpc Returns true if the PC XPC Indicator (XI) bit (bit 16 hex) is set to one, indicating that the tag supports the eXtended Protocol Control (XPC) word and that the XPC is non-zero.
Public propertyHumanReadable Returns a human readable GS1 Element String representation of the EPC contained in this EPC bank.
Public propertyISO Returns true if the PC toggle bit (bit 17 hex) is set to one, indicating an ISO application.
Public propertyRawDecimalUri Returns a representation of the contents of this EPC bank an EPC Raw URI (in decimal), regardless of whether the contents may be decoded as an EPC.
Public propertyRawUri Returns a representation of the contents of this EPC/UII bank an EPC Raw URI (in hexadecimal), regardless of whether the contents may be decoded as an EPC.
Public propertyTagOrRawUri Returns a representation of the contents of this EPC bank as an EPC Tag URI, if possible, or as an EPC Raw URI (in hexadecimal), if not. An EPC Tag URI is returned if the following are all true: (a) the toggle bit (bit 17 hex) is zero; (b) bits 20 hex through 27 hex, inclusive, exist and are equal a defined EPC header; (c) the remaining bits required by that header exist and do not violate any of the decoding rules for that header.
Public propertyTagSchemeName Returns the EPC Tag Scheme name of the EPC contained in this EPC bank.
Public propertyTagUri Returns a representation of the contents of this EPC bank as an EPC Tag URI, if possible; otherwise throws an EPCException. An EPC Tag URI is returned if all of the following are true: (a) the toggle bit (bit 17 hex) is zero; (b) bits 20 hex through 27 hex, inclusive, exist and are equal a defined EPC header; (c) the remaining bits required by that header exist and do not violate any of the decoding rules for that header.
Public propertyUiiBytes Returns the contents of the UII portion of the UII bank (i.e., beginning with bit 20 hex) as a sequence of 8-bit bytes. Bit 20 hex of the UII bank becomes the most significant bit of the zeroth element of the result. The number of elements in the result is always a multiple of two.
Public propertyUiiHex Returns the contents of the UII portion of the UII bank (i.e., beginning with bit 20 hex) as a hexadecimal numeral. Bit 20 hex of the UII bank becomes the most significant bit of the first hex digit of the result. The number of hex digits in the result is always a multiple of four.
Public propertyUiiWords Returns the contents of the UII portion of the UII bank (i.e., beginning with bit 20 hex) as a sequence of 16-bit words. Bit 20 hex of the UII bank becomes the most significant bit of the zeroth element of the result.
Public propertyXpc Returns the contents of the eXtended Protocol Control (XPC) word, or zero if the tag does not support the XPC.
Top
Methods
 NameDescription
Public methodEquals Returns true if the specified object is an RfidBank01 instance that is bit-for-bit identical to this RfidBank01.
(Overrides ObjectEquals(Object))
Public methodStatic memberFromAfiUiiBytes(Byte) Creates an RfidBank01 instance with the toggle bit set to indicate an ISO application, and having the specified contents of the AFI and UII portions. The specified byte array provides the contents of both the AFI and UII portions: the first byte becomes bits 18 through 1F (hex), and the most significant bit of byte array element 1 becomes bit 20 (hex). Sufficient zero padding bits are added to make the total length of the UII portion (not counting the AFI) a multiple of 16 bits (that is, either 0 or 8 bits of padding are added). The PC length bits are calculated based on this padded length. The PC toggle bit (bit 17 hex) is set to one. PC bits 15 hex and 16 hex are set to zero. If a zero-length array is specified, it is equivalent to specifying a byte array containing a single zero element (that is, an AFI of zero and a zero-length UII).
Public methodStatic memberFromAfiUiiBytes(Byte, Byte) Creates an RfidBank01 instance with the toggle bit set to indicate an ISO application, and having the specified contents of the AFI and UII portions. The specified afi populates bits 18 through 1F (hex), and the most significant bit of element 0 of the specified byte array becomes bit 20 (hex). Sufficient zero padding bits are added to make the total length a multiple of 16 bits (that is, either 0 or 8 bits of padding are added). The PC length bits are calculated based on this padded length. The PC toggle bit (bit 17 hex) is set to one. PC bits 15 hex and 16 hex are set to zero.
Public methodStatic memberFromAfiUiiHex Parses the input as a hexadecimal representation of the AFI and UII portion of the Bank 01, beginning with bit 18 (hex), to create an RfidBank01 instance with the toggle bit set to indicate an ISO application. The specified hexadecimal string provides the contents of both the AFI and UII portions: the most significant (leftmost) bit of the hexadecimal representation becomes bit 18 (hex). Sufficient zero padding bits are added to make the total length of the UII portion (not counting the AFI) a multiple of 16 bits. The PC length bits are calculated based on this padded length. The PC toggle bit (bit 17 hex) is set to one. PC bits 15 hex and 16 hex are set to zero. If a hexadecimal string shorter than two characters is specified, it is padded on the right with zero characters to make two characters total, prior to parsing as specified above.
Public methodStatic memberFromAfiUiiWords Creates an RfidBank01 instance with the toggle bit set to indicate an ISO application, and having the specified contents of the AFI and UII portions. The specified afi populates bits 18 through 1F (hex), and the most significant bit of element 0 of the specified array becomes bit 20 (hex). The PC length bits are calculated based on the length of the specified array. The PC toggle bit (bit 17 hex) is set to one. PC bits 15 hex and 16 hex are set to zero.
Public methodStatic memberFromBackscatterBytes

Creates an RfidBank01 instance having the specified contents of the PC, XPC, and EPC/UII portion. The most significant bit of element 0 of the specified byte array becomes bit 10 (hex). Elements 0 and 1 of the specified byte array become bits 10 (hex) through 1F (hex) (the PC bits). If the XPC indicator (bit 16 hex, extracted from element 0 of the specified byte array) is zero, then the remaining elements of the byte array become bits 20 (hex) onward, with the most significant bit of element 2 becoming bit 20 (hex). If the XPC indicator is one, then elements 2 and 3 of the specified byte array become the XPC bits 210 (hex) through 21F (hex), and the remaining elements of the specified byte array become bits 20 (hex) onward (with the most significant bit of element 4 becoming bit 20 hex). This interpretation of the byte array corresponds to the way that the contents of Bank 01 are backscattered in the Gen2/18000-6C Air Interface protocol, excluding the CRC bits.

If adjustEpcUiiLength is false, then sufficient zero padding bits are added to make the total length of the EPC/UII portion a multiple of 16 bits (that is, either 0 or 8 bits of padding are added), and the PC length bits are calculated based on this padded length, replacing whatever PC length value was provided in the input.

If adjustEpcUiiLength is true, then the contents of the EPC/UII portion is either right-truncated or padded on the right with zeros to match the length implied by the PC bits provided in the input.

If the specified byte array is smaller than two bytes (or four if the XPC indicator is one), then additional zero bytes are assumed to bring the total size to two (or four if the XPC indicator is one), for the purposes of parsing the input as specified above.

Public methodStatic memberFromBackscatterHex

Creates an RfidBank01 instance having the specified contents of the PC, XPC, and EPC/UII portion. The most significant bit of the first character of the input becomes bit 10 (hex). The first four characters of the input become bits 10 (hex) through 1F (hex) (the PC bits). If the XPC indicator (bit 16 hex, extracted from the second character of the input) is zero, then the remaining characters of the input become bits 20 (hex) onward, with the most significant bit of the fifth character becoming bit 20 (hex). If the XPC indicator is one, then the fifth through eighth characters of the input become the XPC bits 210 (hex) through 21F (hex), and the remaining characters of the input become bits 20 (hex) onward (with the most significant bit of the ninth character becoming bit 20 hex). This interpretation of the input corresponds to the way that the contents of Bank 01 are backscattered in the Gen2/18000-6C Air Interface protocol, excluding the CRC bits.

If adjustEpcUiiLength is false, then sufficient zero padding bits are added to make the total length of the EPC/UII portion a multiple of 16 bits (that is, either 0, 4, 8, or 12 bits of padding are added), and the PC length bits are calculated based on this padded length, replacing whatever PC length value was provided in the input.

If adjustEpcUiiLength is true, then the contents of the EPC/UII portion is either right-truncated or padded on the right with zeros to match the length implied by the PC bits provided in the input.

If the length of the specified hexadecimal string is fewer than four characters, then sufficient zero characters are added to the right to make a total of four characters, and the result is interpreted as specified above.

Public methodStatic memberFromBackscatterWords Creates an RfidBank01 instance having the specified contents of the PC, XPC, and EPC/UII portion. The most significant bit of element 0 of the specified word array becomes bit 10 (hex). Element 0 of the specified byte array become bits 10 (hex) through 1F (hex) (the PC bits). If the XPC indicator (bit 16 hex, extracted from element 0 of the specified word array) is zero, then the remaining elements of the word array become bits 20 (hex) onward, with the most significant bit of element 1 becoming bit 20 (hex). If the XPC indicator is one, then element 1 of the specified byte array becomes the XPC bits 210 (hex) through 21F (hex), and the remaining elements of the specified byte array become bits 20 (hex) onward (with the most significant bit of element 2 becoming bit 20 hex). This interpretation of the byte array corresponds to the way that the contents of Bank 01 are backscattered in the Gen2/18000-6C Air Interface protocol, excluding the CRC bits.

If adjustEpcUiiLength is false, then the PC length bits are calculated based on the length of the specified array, replacing whatever PC length value was provided in the input.

If adjustEpcUiiLength is true, then the contents of the EPC/UII portion is either right-truncated or padded on the right with zeros to match the length implied by the PC bits provided in the input.

If a zero-length array is specified, it is equivalent to specifying a word array containing a single zero-valued element (that is, a zero-length EPC). If a one-length array is specified, and the XPC indicator is one, it is equivalent to specifying a word array with an additional zero-valued element.

Public methodStatic memberFromBarCodeCharacters(String, Gs1EpcLibTagSchemes, Int32) Parses the specified Barcode String and returns the equivalent RfidBank01 encoded using the specified tag scheme. Suitable for TDS 2.0 tag schemes where the GS1 company prefix length is not required.
Public methodStatic memberFromBarCodeCharacters(String, String, Int32) Parses the specified Barcode String and returns the equivalent RfidBank01 encoded using the specified tag scheme. Suitable for TDS 2.0 tag schemes where the GS1 company prefix length is not required.
Public methodStatic memberFromBarCodeCharacters(String, Gs1EpcLibTagSchemes, Int32, Int32) Parses the specified Barcode String and returns the equivalent RfidBank01 encoded using the specified tag scheme.
Public methodStatic memberFromBarCodeCharacters(String, String, Int32, Gs1EpcLibEncodings) Parses the specified Barcode String and returns the equivalent RfidBank01 encoded using the specified tag scheme. Suitable for TDS 2.0 tag schemes where the GS1 company prefix is not required, and the encoding method for variable length alpha-numeric components needs to be specified.
Public methodStatic memberFromBarCodeCharacters(String, String, Int32, Int32) Parses the specified Barcode String and returns the equivalent RfidBank01 encoded using the specified tag scheme.
Public methodStatic memberFromDigitalLink(String, Gs1EpcLibTagSchemes, Int32) Parses the specified Digital Link URI and returns the equivalent RfidBank01 encoded using the specified tag scheme. Suitable for TDS 2.0 tag schemes where the GS1 company prefix is not required.
Public methodStatic memberFromDigitalLink(String, String, Int32) Parses the specified Digital Link URI and returns the equivalent RfidBank01 encoded using the specified tag scheme. Suitable for TDS 2.0 tag schemes where the GS1 company prefix is not required.
Public methodStatic memberFromDigitalLink(String, Gs1EpcLibTagSchemes, Int32, Gs1EpcLibEncodings) Parses the specified Digital Link URI and returns the equivalent RfidBank01 encoded using the specified tag scheme. Suitable for TDS 2.0 tag schemes where the GS1 company prefix is not required, and the encoding method for variable length alpha-numeric components needs to be specified.
Public methodStatic memberFromDigitalLink(String, Gs1EpcLibTagSchemes, Int32, Int32) Parses the specified Digital Link URI and returns the equivalent RfidBank01 encoded using the specified tag scheme.
Public methodStatic memberFromDigitalLink(String, String, Int32, Gs1EpcLibEncodings) Parses the specified Digital Link URI and returns the equivalent RfidBank01 encoded using the specified tag scheme. Suitable for TDS 2.0 tag schemes where the GS1 company prefix is not required, and the encoding method for variable length alpha-numeric components needs to be specified.
Public methodStatic memberFromDigitalLink(String, String, Int32, Int32) Parses the specified Digital Link URI and returns the equivalent RfidBank01 encoded using the specified tag scheme.
Public methodStatic memberFromEpcBytes Creates an RfidBank01 instance with the toggle bit set to indicate an EPCglobal application, and having the specified contents of the EPC portion. The most significant bit of element 0 of the specified byte array becomes bit 20 (hex). Sufficient zero padding bits are added to make the total length a multiple of 16 bits (that is, either 0 or 8 bits of padding are added). The PC length bits are calculated based on this padded length. All other PC bits are set to zero.
Public methodStatic memberFromEpcHex Parses the input as a hexadecimal representation of the EPC portion of the EPC bank, beginning with bit 20 (hex), to create RfidBank01 instance. The most significant (leftmost) bit of the hexadecimal representation becomes bit 20 (hex). Sufficient zero padding bits are added to make the total length a multiple of 16 bits. The PC length bits are calculated based on this padded length. All other PC bits are set to zero.
Public methodStatic memberFromEpcWords Creates an RfidBank01 instance with the toggle bit set to indicate an EPCglobal application, and having the specified contents of the EPC portion. The most significant bit of element 0 of the specified array becomes bit 20 (hex). The PC length bits are calculated based on the length of the specified array. All other PC bits are set to zero.
Public methodStatic memberFromGs1ElementString(Gs1ElementString, String, Int32) Parses the specified GS1 Element String and returns the equivalent RfidBank01 encoded using the specified tag scheme. Suitable for TDS 2.0 tag schemes where the GS1 company prefix is not required.
Public methodStatic memberFromGs1ElementString(String, Gs1EpcLibTagSchemes, Int32) Parses the specified human readable GS1 Element String and returns the equivalent RfidBank01 encoded using the specified tag scheme. Suitable for TDS 2.0 tag schemes where the GS1 company prefix length is not required.
Public methodStatic memberFromGs1ElementString(String, String, Int32) Parses the specified human readable GS1 Element String and returns the equivalent RfidBank01 encoded using the specified tag scheme. Suitable for TDS 2.0 tag schemes where the GS1 company prefix length is not required.
Public methodStatic memberFromGs1ElementString(Gs1ElementString, Gs1EpcLibTagSchemes, Int32, Gs1EpcLibEncodings) Parses the specified GS1 Element String and returns the equivalent RfidBank01 encoded using the specified tag scheme. Suitable for TDS 2.0 tag schemes where the GS1 company prefix is not required, and the encoding method for variable length alpha-numeric components needs to be specified.
Public methodStatic memberFromGs1ElementString(Gs1ElementString, Gs1EpcLibTagSchemes, Int32, Int32) Parses the specified GS1 Element String and returns the equivalent RfidBank01 encoded using the specified tag scheme.
Public methodStatic memberFromGs1ElementString(Gs1ElementString, String, Int32, Gs1EpcLibEncodings) Parses the specified GS1 Element String and returns the equivalent RfidBank01 encoded using the specified tag scheme. Suitable for TDS 2.0 tag schemes where the GS1 company prefix is not required, and the encoding method for variable length alpha-numeric components needs to be specified.
Public methodStatic memberFromGs1ElementString(Gs1ElementString, String, Int32, Int32) Parses the specified GS1 Element String and returns the equivalent RfidBank01 encoded using the specified tag scheme.
Public methodStatic memberFromGs1ElementString(String, Gs1EpcLibTagSchemes, Int32, Gs1EpcLibEncodings) Parses the specified human readable GS1 Element String and returns the equivalent RfidBank01 encoded using the specified tag scheme.
Public methodStatic memberFromGs1ElementString(String, Gs1EpcLibTagSchemes, Int32, Int32) Parses the specified human readable GS1 Element String and returns the equivalent RfidBank01 encoded using the specified tag scheme.
Public methodStatic memberFromGs1ElementString(String, String, Int32, Gs1EpcLibEncodings) Parses the specified human readable GS1 Element String and returns the equivalent RfidBank01 encoded using the specified tag scheme.
Public methodStatic memberFromGs1ElementString(String, String, Int32, Int32) Parses the specified human readable GS1 Element String and returns the equivalent RfidBank01 encoded using the specified tag scheme.
Public methodStatic memberFromTagOrRawUri Parses the specified EPC Tag URI or EPC Raw URI and returns the equivalent RfidBank01
Public methodGetHashCode Return the hash of the current object
(Overrides ObjectGetHashCode)
Public methodGetTypeGets the Type of the current instance.
(Inherited from Object)
Public methodToEpc Returns the EPC contained in this EPC bank, if possible; otherwise throws an EPCException. An EPC is returned if all of the following are true: (a) the toggle bit (bit 17 hex) is zero; (b) bits 20 hex through 27 hex, inclusive, exist and are equal to the EPC header for a defined EPC binary encoding; (c) the remaining bits required by that EPC binary encoding exist and do not violate any of the decoding rules for that encoding.
Public methodToGs1ElementString Returns a GS1 Element String object
Public methodToStringReturns a string that represents the current object.
(Inherited from Object)
Top
See Also