com.unitech.lib.uhf

## Class BaseUHF

- java.lang.Object
- - com.unitech.lib.uhf.BaseUHF

- Direct Known Subclasses:
    UHFRM100, UHFST25RU3993

      public abstract class BaseUHF
      extends java.lang.Object

  BaseUHF class is a class that provides the function to control RFID UHF module installed in Device when BaseReader instance is connected to Device.

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected BaseModuleUHF` | `_module`
    `protected IReader` | `_reader`
    `protected RfidUhfEventManager` | `_rfidUhfEventManager`
    `protected java.lang.String` | `TAG`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `BaseUHF(IReader reader)` Create an instance of the BaseUHF class.

  - ### Method Summary

    All Methods Instance Methods Abstract Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addListener(IRfidUhfEventListener listener)` Adds an event handler to receive events that occur in the instance.
    `void` | `clearListener()` Removes all event handlers from the instance.
    `void` | `destroy()` BaseUHF Destroys the instance and returns the resource.
    `abstract AlgorithmType` | `getAlgorithmType()` Returns the algorithm that the RFID UHF module of the appliance uses to perform the inventory.
    `abstract BLFType` | `getBLF()` Returns the status of the BLF that the RFID UHF module of the appliance uses to perform the inventory.
    `abstract RFIDConfig` | `getConfig()` Returns the config of RFID module
    `abstract boolean` | `getContinuousMode()` Returns whether the RFID UHF module on the device will cause the Inventory to run continuously.
    `abstract Encoding` | `getEncoding()` Returns the status of the encoding that the RFID UHF module of the appliance uses to perform the inventory.
    `abstract boolean` | `getFastMode()` Returns the status of the fast mode that the RFID UHF module of the appliance uses to perform the inventory.
    `abstract GlobalBandType` | `getGlobalBand()` Returns the national orientation of the RFID UHF module of the instrument.
    `abstract int` | `getIdleTime()` The RFID UHF module of the instrument returns the time that the radio waves are not output in the Inventory operation and is resting.
    `abstract int` | `getInventoryTime()` Returns the time at which radio waves are actually output from the Inventory operation of the RFID UHF module in the instrument.
    `abstract int` | `getMaxQ()` If the algorithm of the RFID UHF module of the device uses Dynamic Q, it returns the maximum Q value.
    `abstract int` | `getMinQ()` If the algorithm of the RFID UHF module of the device uses Dynamic Q, it returns the minimum Q value.
    `abstract int` | `getModuleProfile()` Returns the status of the module's profile that the RFID UHF module of the appliance uses to perform the inventory.
    `abstract int` | `getPower()` Returns the antenna output of the RFID UHF module of the instrument.
    `abstract PowerMode` | `getPowerMode()` Returns the status of the power mode that the RFID UHF module of the appliance uses to perform the inventory.
    `abstract PowerRange` | `getPowerRange()` Returns the antenna output range of the RFID UHF module of the instrument.
    `abstract SelectMask6cParam` | `getSelectMask6c(int index)` Returns the Selection Mask item of the RFID UHF module of the Device.
    `abstract Mask6cAction` | `getSelectMask6cAction(int index)` Returns the comparison behavior of the Selection Mask item of the RFID UHF module of the Device.
    `abstract BankType` | `getSelectMask6cBank(int index)` The Selection Mask item of the Device's RFID UHF module returns the memory bank to compare.
    `abstract boolean` | `getSelectMask6cEnabled(int index)` Returns whether to use the Selection Mask item of the RFID UHF module of the Device.
    `abstract int` | `getSelectMask6cMaxSize()` Returns the max size of select mask list status of the RFID UHF module.
    `abstract int` | `getSelectMask6cOffset(int index)` The Selection Mask item of the RFID UHF module of the Device returns the starting address of the memory to start the comparison.
    `abstract Mask6cPattern` | `getSelectMask6cPattern(int index)` Returns the comparison value and length of the Selection Mask item of the RFID UHF module of the Device.
    `abstract Mask6cTarget` | `getSelectMask6cTarget(int index)` Returns the Flag of the tag to store the comparison result of Selection Mask item of RFID UHF module of Device.
    `abstract Session` | `getSession()` The RFID UHF module of the device returns the Session to check the state of the Session of the tag to be read by the Inventory operation.
    `abstract int` | `getStartQ()` If the algorithm of the RFID UHF module of the device is using Dynamic Q, it returns the starting Q value.
    `abstract Target` | `getTarget()` The RFID UHF module of the device returns the status of the Target of the tag to be read by the Inventory operation.
    `abstract TARIType` | `getTARI()` Returns the status of the TARI that the RFID UHF module of the appliance uses to perform the inventory.
    `abstract boolean` | `getToggleTarget()` Returns the status of the toggle target that the RFID UHF module of the appliance uses to perform the inventory.
    `ModuleUHFType` | `getType()` Returns the RFID UHF module type of the connected Device.
    `abstract java.lang.String` | `getVersion()` Returns the version of the RFID UHF module.
    `abstract boolean` | `initModule()` After the Device is connected, it calls to instantiate the BaseUHF instance.
    `abstract ResultCode` | `inventory6c()` Device instructs to inventory the RFID UHF tag of ISO18000-6c Gen2 standard.
    `abstract ResultCode` | `kill6c(java.lang.String password)` Device instructs the RFID UHF tag of ISO18000-6c Gen2 specification to be no longer available.
    `abstract ResultCode` | `lock6c(Lock6cParam param, java.lang.String password)` Instructs the Device to lock or unlock the RFID UHF tags of the ISO18000-6c Gen2 standard.
    `abstract ResultCode` | `permaLock6c(PermaLock6cParam param, java.lang.String password)` Instructs the Device to permanent lock or unlock the RFID UHF tags of the ISO18000-6c Gen2 standard.
    `void` | `PumpEvent(int event, java.lang.Object data)`
    `abstract ResultCode` | `readMemory6c(BankType bank, int offset, int length, java.lang.String password)` Device instructs to read specific memory of RFID UHF tag of ISO18000-6c Gen2 standard.
    `void` | `removeListener(IRfidUhfEventListener listener)` Removes an event handler when it no longer needs to receive events raised by the instance.
    `abstract void` | `setAlgorithmType(AlgorithmType type)` Sets the algorithm that the RFID UHF module of the appliance uses to perform the inventory.
    `abstract void` | `setBLF(BLFType type)` Sets the status of the BLF that the RFID UHF module of the appliance uses to perform the inventory.
    `abstract void` | `setConfig(RFIDConfig rfidConfig)` Setup the config of the RFID module
    `abstract void` | `setContinuousMode(boolean enabled)` Sets whether or not the RFID UHF module of the device will run the Inventory continuously.
    `abstract void` | `setEncoding(Encoding encoding)` Sets the status of the encoding that the RFID UHF module of the appliance uses to perform the inventory.
    `abstract void` | `setFastMode(boolean enabled)` Sets the status of the fast mode that the RFID UHF module of the appliance uses to perform the inventory.
    `abstract void` | `setGlobalBand(GlobalBandType band)` Set the national orientation of the RFID UHF module of the instrument.
    `abstract void` | `setIdleTime(int time)` The RFID UHF module of the instrument sets the time for which the radio waves are not output in the Inventory operation and the rest of the time.
    `abstract void` | `setInventoryTime(int time)` Sets the time at which radio waves are actually output in Inventory operation of the RFID UHF module of the instrument.
    `abstract void` | `setMaxQ(int value)` If the algorithm of the RFID UHF module of the device uses Dynamic Q, set the maximum Q value.
    `abstract void` | `setMinQ(int value)` If the algorithm of the RFID UHF module of the device uses Dynamic Q, set the minimum Q value.
    `abstract void` | `setModuleProfile(int id)` Sets the status of the module's profile that the RFID UHF module of the appliance uses to perform the inventory.
    `abstract void` | `setPower(int power)` Set the antenna output of the RFID UHF module of the instrument.
    `abstract void` | `setPowerMode(PowerMode powerMode)` Sets the status of the power mode the RFID UHF module of the appliance uses to perform the inventory.
    `abstract void` | `setSelectMask6c(int index, SelectMask6cParam param)` Set the Selection Mask item of the RFID UHF module of the Device.
    `abstract void` | `setSelectMask6cAction(int index, Mask6cAction action)` Set the comparison behavior of the Selection Mask item of the RFID UHF module of the device.
    `abstract void` | `setSelectMask6cBank(int index, BankType bank)` The Selection Mask item of the RFID UHF module of the device sets the memory bank to be compared.
    `abstract void` | `setSelectMask6cEnabled(int index, boolean enabled)` Set whether or not to use the Selection Mask item of the RFID UHF module of the Device.
    `abstract void` | `setSelectMask6cOffset(int index, int offset)` The Selection Mask item of the RFID UHF module of the device sets the start address of the memory to start the comparison.
    `abstract void` | `setSelectMask6cPattern(int index, Mask6cPattern pattern)` Set the comparison value and length of the Selection Mask item of the RFID UHF module of the device.
    `abstract void` | `setSelectMask6cTarget(int index, Mask6cTarget target)` Set the Flag of the tag to save the comparison result of Selection Mask item of the RFID UHF module of the device.
    `abstract void` | `setSession(Session session)` Device's RFID UHF module sets the Session to check the status of the Session of the tag to be read by Inventory operation.
    `abstract void` | `setStartQ(int value)` If the algorithm of the RFID UHF module of the device is using Dynamic Q, set the starting Q value.
    `abstract void` | `setTarget(Target target)` Sets the state of target of tag to read by Inventory operation.
    `abstract void` | `setTARI(TARIType type)` Sets the status of the TARI that the RFID UHF module of the appliance uses to perform the inventory.
    `abstract void` | `setToggleTarget(boolean enabled)` Sets the status of the toggle target that the RFID UHF module of the appliance uses to perform the inventory.
    `abstract ResultCode` | `stop()` Instructs the Device to stop the operation being performed.
    `abstract ResultCode` | `writeMemory6c(BankType bank, int offset, java.lang.String data, java.lang.String password)` Device instructs to store data in a specific memory of RFID UHF tag of ISO18000-6c Gen2 standard.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### TAG

          protected java.lang.String TAG

    - #### _module

          protected BaseModuleUHF _module

    - #### _reader

          protected IReader _reader

    - #### _rfidUhfEventManager

          protected RfidUhfEventManager _rfidUhfEventManager

  - ### Constructor Detail

    - #### BaseUHF

          public BaseUHF(IReader reader)

      Create an instance of the BaseUHF class.
      Parameters:
        `reader` -

  - ### Method Detail

    - #### destroy

          public void destroy()

      BaseUHF Destroys the instance and returns the resource.

    - #### getType

          public ModuleUHFType getType()

      Returns the RFID UHF module type of the connected Device.
      Returns:
        ModuleUHFType enumeration representing the RFID UHF module type.

    - #### addListener

          public void addListener(IRfidUhfEventListener listener)

      Adds an event handler to receive events that occur in the instance.
      Parameters:
        `listener` - An instance that implements the IRfidUhfEventListener interface to receive events from RFID UHF modules.

    - #### removeListener

          public void removeListener(IRfidUhfEventListener listener)

      Removes an event handler when it no longer needs to receive events raised by the instance.
      Parameters:
        `listener` - An instance that implements the IRfidUhfEventListener interface to receive events from RFID UHF modules.

    - #### clearListener

          public void clearListener()

      Removes all event handlers from the instance.

    - #### PumpEvent

          public void PumpEvent(int event,
                                java.lang.Object data)

    - #### initModule

          public abstract boolean initModule()

      After the Device is connected, it calls to instantiate the BaseUHF instance.
      Returns:
        Returns true if the initialization of the instance succeeds, false otherwise.

    - #### inventory6c

          public abstract ResultCode inventory6c()

      Device instructs to inventory the RFID UHF tag of ISO18000-6c Gen2 standard.
      Returns:
        The ResultCode enumeration indicating the result of executing the command.

    - #### readMemory6c

          public abstract ResultCode readMemory6c(BankType bank,
                                                  int offset,
                                                  int length,
                                                  java.lang.String password)

      Device instructs to read specific memory of RFID UHF tag of ISO18000-6c Gen2 standard.
      Parameters:
        `bank` - The BankType enumeration that specifies the Bank for reading memory.
        `offset` - An integer specifying the starting address to start reading from the specified bank. Unit is WORD unit.
        `length` - An integer that specifies the length of data to read from the specified start address. Unit is WORD unit.
        `password` - If the tag is locked, it is a hex string specifying the Access Password set in the tag. Up to 8 characters (2 words) can be input.
      Returns:
        The ResultCode enumeration indicating the result of executing the command.

    - #### writeMemory6c

          public abstract ResultCode writeMemory6c(BankType bank,
                                                   int offset,
                                                   java.lang.String data,
                                                   java.lang.String password)

      Device instructs to store data in a specific memory of RFID UHF tag of ISO18000-6c Gen2 standard.
      Parameters:
        `bank` - The BankType enumeration that specifies the Bank for writing memory.
        `offset` - An integer specifying the starting address to start writing from the specified bank. Unit is WORD unit.
        `data` - An Hex type string that specifies the data to be stored in memory from the specified start address. Data must be specified in WORD units (4 characters).
        `password` - If the tag is locked, it is a hex string specifying the Access Password set in the tag. Up to 8 characters (2 words) can be input.
      Returns:
        The ResultCode enumeration indicating the result of executing the command.

    - #### lock6c

          public abstract ResultCode lock6c(Lock6cParam param,
                                            java.lang.String password)

      Instructs the Device to lock or unlock the RFID UHF tags of the ISO18000-6c Gen2 standard.
      Parameters:
        `param` - An instance of Lock6cParam that specifies the lock area of the tag memory.
        `password` - If the tag is locked, it is a hex string specifying the Access Password set in the tag. Up to 8 characters (2 words) can be input.
      Returns:
        The ResultCode enumeration indicating the result of executing the command.

    - #### permaLock6c

          public abstract ResultCode permaLock6c(PermaLock6cParam param,
                                                 java.lang.String password)

      Instructs the Device to permanent lock or unlock the RFID UHF tags of the ISO18000-6c Gen2 standard.
      Parameters:
        `param` - An instance of PermaLock6cParam that specifies a permanent lock area for tag memory.
        `password` - If the tag is locked, it is a hex string specifying the Access Password set in the tag. Up to 8 characters (2 words) can be input.
      Returns:
        The ResultCode enumeration indicating the result of executing the command.

    - #### kill6c

          public abstract ResultCode kill6c(java.lang.String password)

      Device instructs the RFID UHF tag of ISO18000-6c Gen2 specification to be no longer available.
      Parameters:
        `password` - Hex type string that specifies the Kill Password set in the tag
      Returns:
        The ResultCode enumeration indicating the result of executing the command.

    - #### stop

          public abstract ResultCode stop()

      Instructs the Device to stop the operation being performed.
      Returns:
        The ResultCode enumeration indicating the result of executing the command.

    - #### getVersion

          public abstract java.lang.String getVersion()
                                               throws ReaderException

      Returns the version of the RFID UHF module.
      Returns:
        A string representing version information.
      Throws:
        `ReaderException` - An ReaderException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### getPowerRange

          public abstract PowerRange getPowerRange()
                                            throws ReaderException

      Returns the antenna output range of the RFID UHF module of the instrument.
      Returns:
        An instance of PowerRange that represents the antenna output range of the RFID UHF module of the device. The return unit is dBm.
      Throws:
        `ReaderException` - An ReaderException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### getPower

          public abstract int getPower()
                                throws ReaderException

      Returns the antenna output of the RFID UHF module of the instrument.
      Returns:
        An integer specifying the antenna output of the RFID UHF module. The setting unit is dBm.
      Throws:
        `ReaderException` - An ReaderException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### setPower

          public abstract void setPower(int power)
                                 throws ReaderException

      Set the antenna output of the RFID UHF module of the instrument.
      Parameters:
        `power` - An integer specifying the antenna output of the RFID UHF module. The setting unit is dBm.
      Throws:
        `ReaderException` - An ReaderException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### getContinuousMode

          public abstract boolean getContinuousMode()
                                             throws ReaderException

      Returns whether the RFID UHF module on the device will cause the Inventory to run continuously.
      Returns:
        A boolean specifying whether the RFID UHF module will continue to perform Inventory operations.
      Throws:
        `ReaderException` - An ReaderException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### setContinuousMode

          public abstract void setContinuousMode(boolean enabled)
                                          throws ReaderException

      Sets whether or not the RFID UHF module of the device will run the Inventory continuously.
      Parameters:
        `enabled` - A boolean specifying whether the RFID UHF module will continue to perform Inventory operations.
      Throws:
        `ReaderException` - An ReaderException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### getGlobalBand

          public abstract GlobalBandType getGlobalBand()
                                                throws ReaderException

      Returns the national orientation of the RFID UHF module of the instrument.
      Returns:
        GlobalBandType enumeration that represents the national orientation of the RFID UHF module.
      Throws:
        `ReaderException` - An ReaderException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### setGlobalBand

          public abstract void setGlobalBand(GlobalBandType band)
                                      throws ReaderException

      Set the national orientation of the RFID UHF module of the instrument.
      Parameters:
        `band` - GlobalBandType enumeration that represents the national orientation of the RFID UHF module.
      Throws:
        `ReaderException` - An ReaderException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### getInventoryTime

          public abstract int getInventoryTime()
                                        throws ReaderException

      Returns the time at which radio waves are actually output from the Inventory operation of the RFID UHF module in the instrument.
      Returns:
        An integer that specifies the Inventory time( Tx On ) of the RFID UHF module. Inventory Time ( Tx On ) is in milliseconds (ms).
      Throws:
        `ReaderException` - An ReaderException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### setInventoryTime

          public abstract void setInventoryTime(int time)
                                         throws ReaderException

      Sets the time at which radio waves are actually output in Inventory operation of the RFID UHF module of the instrument.
      Parameters:
        `time` - An integer that specifies the Inventory time ( Tx On ) of the RFID UHF module. Inventory Time ( Tx On ) is in milliseconds (ms).
      Throws:
        `ReaderException` - An ReaderException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### getIdleTime

          public abstract int getIdleTime()
                                   throws ReaderException

      The RFID UHF module of the instrument returns the time that the radio waves are not output in the Inventory operation and is resting.
      Returns:
        An integer that specifies the Inventory idle time ( Tx Off ) for the RFID UHF module. Idle Time ( Tx Off ) is in milliseconds (ms).
      Throws:
        `ReaderException` - An ReaderException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### setIdleTime

          public abstract void setIdleTime(int time)
                                    throws ReaderException

      The RFID UHF module of the instrument sets the time for which the radio waves are not output in the Inventory operation and the rest of the time.
      Parameters:
        `time` - An integer that specifies the Inventory idle time ( Tx Off ) for the RFID UHF module. Idle Time ( Tx Off ) is in milliseconds (ms).
      Throws:
        `ReaderException` - An ReaderException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### getAlgorithmType

          public abstract AlgorithmType getAlgorithmType()
                                                  throws ReaderException

      Returns the algorithm that the RFID UHF module of the appliance uses to perform the inventory.
      Returns:
        An AlgorithmType enumeration specifying the algorithm.
      Throws:
        `ReaderException` - An ReaderException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### setAlgorithmType

          public abstract void setAlgorithmType(AlgorithmType type)
                                         throws ReaderException

      Sets the algorithm that the RFID UHF module of the appliance uses to perform the inventory.
      Parameters:
        `type` - An AlgorithmType enumeration specifying the algorithm.
      Throws:
        `ReaderException` - An ReaderException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### getStartQ

          public abstract int getStartQ()
                                 throws ReaderException

      If the algorithm of the RFID UHF module of the device is using Dynamic Q, it returns the starting Q value.
      Returns:
        An integer that specifies the starting Q value of the algorithm.
      Throws:
        `ReaderException` - An ReaderException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### setStartQ

          public abstract void setStartQ(int value)
                                  throws ReaderException

      If the algorithm of the RFID UHF module of the device is using Dynamic Q, set the starting Q value.
      Parameters:
        `value` - Dynamic Q An integer that specifies the starting Q value of the algorithm.
      Throws:
        `ReaderException` - An ReaderException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### getMinQ

          public abstract int getMinQ()
                               throws ReaderException

      If the algorithm of the RFID UHF module of the device uses Dynamic Q, it returns the minimum Q value.
      Returns:
        Dynamic type that specifies the minimum Q value of the Q algorithm. The Min Q value must be less than the Max Q value.
      Throws:
        `ReaderException` - An ReaderException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### setMinQ

          public abstract void setMinQ(int value)
                                throws ReaderException

      If the algorithm of the RFID UHF module of the device uses Dynamic Q, set the minimum Q value.
      Parameters:
        `value` - Dynamic type that specifies the minimum Q value of the Q algorithm. The Min Q value must be less than the Max Q value.
      Throws:
        `ReaderException` - An ReaderException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### getMaxQ

          public abstract int getMaxQ()
                               throws ReaderException

      If the algorithm of the RFID UHF module of the device uses Dynamic Q, it returns the maximum Q value.
      Returns:
        Dynamic type that specifies the maximum Q value of the Q algorithm. The Max Q value must be greater than the Min Q value.
      Throws:
        `ReaderException` - An ReaderException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### setMaxQ

          public abstract void setMaxQ(int value)
                                throws ReaderException

      If the algorithm of the RFID UHF module of the device uses Dynamic Q, set the maximum Q value.
      Parameters:
        `value` - Dynamic type that specifies the maximum Q value of the Q algorithm. The Max Q value must be greater than the Min Q value.
      Throws:
        `ReaderException` - An ReaderException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### getTarget

          public abstract Target getTarget()
                                    throws ReaderException

      The RFID UHF module of the device returns the status of the Target of the tag to be read by the Inventory operation.
      Returns:
        The Target enumeration type that specifies the state of the Target of the tag to be read by the RFID UHF module.
      Throws:
        `ReaderException` - An ReaderException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### setTarget

          public abstract void setTarget(Target target)
                                  throws ReaderException

      Sets the state of target of tag to read by Inventory operation.
      Parameters:
        `target` - The Target enumeration type that specifies the state of the Target of the tag to be read by the RFID UHF module.
      Throws:
        `ReaderException` - An ReaderException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### getSession

          public abstract Session getSession()
                                      throws ReaderException

      The RFID UHF module of the device returns the Session to check the state of the Session of the tag to be read by the Inventory operation.
      Returns:
        The Session enumeration that specifies the session of the tag to read from the RFID UHF module.
      Throws:
        `ReaderException` - An ReaderException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### setSession

          public abstract void setSession(Session session)
                                   throws ReaderException

      Device's RFID UHF module sets the Session to check the status of the Session of the tag to be read by Inventory operation.
      Parameters:
        `session` - The Session enumeration that specifies the session of the tag to read from the RFID UHF module.
      Throws:
        `ReaderException` - An ReaderException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### getSelectMask6cEnabled

          public abstract boolean getSelectMask6cEnabled(int index)
                                                  throws ReaderException

      Returns whether to use the Selection Mask item of the RFID UHF module of the Device.
      Parameters:
        `index` - Integer specifying the radix of the item from 0 to getSelectMask6cMaxSize().
      Returns:
        A boolean specifying whether to apply the item.
      Throws:
        `ReaderException` - An ReaderException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### setSelectMask6cEnabled

          public abstract void setSelectMask6cEnabled(int index,
                                                      boolean enabled)
                                               throws ReaderException

      Set whether or not to use the Selection Mask item of the RFID UHF module of the Device.
      Parameters:
        `index` - Integer specifying the radix of the item from 0 to getSelectMask6cMaxSize().
        `enabled` - A boolean specifying whether to apply the item.
      Throws:
        `ReaderException` - An ReaderException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### getSelectMask6cTarget

          public abstract Mask6cTarget getSelectMask6cTarget(int index)
                                                      throws ReaderException

      Returns the Flag of the tag to store the comparison result of Selection Mask item of RFID UHF module of Device.
      Parameters:
        `index` - Integer specifying the radix of the item from 0 to getSelectMask6cMaxSize().
      Returns:
        The Mask6cTarget enumeration that specifies the Flag of the tag to store the result of the specified Selection Mask item comparison.
      Throws:
        `ReaderException` - An ReaderException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### setSelectMask6cTarget

          public abstract void setSelectMask6cTarget(int index,
                                                     Mask6cTarget target)
                                              throws ReaderException

      Set the Flag of the tag to save the comparison result of Selection Mask item of the RFID UHF module of the device.
      Parameters:
        `index` - Integer specifying the radix of the item from 0 to getSelectMask6cMaxSize().
        `target` - The Mask6cTarget enumeration that specifies the Flag of the tag to store the result of the specified Selection Mask item comparison.
      Throws:
        `ReaderException` - An ReaderException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### getSelectMask6cAction

          public abstract Mask6cAction getSelectMask6cAction(int index)
                                                      throws ReaderException

      Returns the comparison behavior of the Selection Mask item of the RFID UHF module of the Device.
      Parameters:
        `index` - Integer specifying the radix of the item from 0 to getSelectMask6cMaxSize().
      Returns:
        The Mask6cAction enumeration specifying how to compare the specified Selection Mask items.
      Throws:
        `ReaderException` - An ReaderException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### setSelectMask6cAction

          public abstract void setSelectMask6cAction(int index,
                                                     Mask6cAction action)
                                              throws ReaderException

      Set the comparison behavior of the Selection Mask item of the RFID UHF module of the device.
      Parameters:
        `index` - Integer specifying the radix of the item from 0 to getSelectMask6cMaxSize().
        `action` - The Mask6cAction enumeration specifying how to compare the specified Selection Mask items.
      Throws:
        `ReaderException` - An ReaderException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### getSelectMask6cBank

          public abstract BankType getSelectMask6cBank(int index)
                                                throws ReaderException

      The Selection Mask item of the Device's RFID UHF module returns the memory bank to compare.
      Parameters:
        `index` - Integer specifying the radix of the item from 0 to getSelectMask6cMaxSize().
      Returns:
        The BankType enumeration that specifies the memory bank to be compared with the specified Selection Mask item. Reserved bank is not used.
      Throws:
        `ReaderException` - An ReaderException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### setSelectMask6cBank

          public abstract void setSelectMask6cBank(int index,
                                                   BankType bank)
                                            throws ReaderException

      The Selection Mask item of the RFID UHF module of the device sets the memory bank to be compared.
      Parameters:
        `index` - Integer specifying the radix of the item from 0 to getSelectMask6cMaxSize().
        `bank` - The BankType enumeration that specifies the memory bank to be compared with the specified Selection Mask item. Reserved bank is not used.
      Throws:
        `ReaderException` - An ReaderException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### getSelectMask6cOffset

          public abstract int getSelectMask6cOffset(int index)
                                             throws ReaderException

      The Selection Mask item of the RFID UHF module of the Device returns the starting address of the memory to start the comparison.
      Parameters:
        `index` - Integer specifying the radix of the item from 0 to getSelectMask6cMaxSize().
      Returns:
        An integer specifying the starting address at which the specified Selection Mask item will start the comparison. The unit specifying the start address of the Selection Mask is bit.
      Throws:
        `ReaderException` - An ReaderException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### setSelectMask6cOffset

          public abstract void setSelectMask6cOffset(int index,
                                                     int offset)
                                              throws ReaderException

      The Selection Mask item of the RFID UHF module of the device sets the start address of the memory to start the comparison.
      Parameters:
        `index` - Integer specifying the radix of the item from 0 to getSelectMask6cMaxSize().
        `offset` - An integer specifying the starting address at which the specified Selection Mask item will start the comparison. The unit specifying the start address of the Selection Mask is bit.
      Throws:
        `ReaderException` - An ReaderException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### getSelectMask6cPattern

          public abstract Mask6cPattern getSelectMask6cPattern(int index)
                                                        throws ReaderException

      Returns the comparison value and length of the Selection Mask item of the RFID UHF module of the Device.
      Parameters:
        `index` - Integer specifying the radix of the item from 0 to getSelectMask6cMaxSize().
      Returns:
        An instance of Mask6cPattern specifying the comparison value and length of the specified Selection Mask item.
      Throws:
        `ReaderException` - An ReaderException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### setSelectMask6cPattern

          public abstract void setSelectMask6cPattern(int index,
                                                      Mask6cPattern pattern)
                                               throws ReaderException

      Set the comparison value and length of the Selection Mask item of the RFID UHF module of the device.
      Parameters:
        `index` - Integer specifying the radix of the item from 0 to getSelectMask6cMaxSize().
        `pattern` - An instance of Mask6cPattern specifying the comparison value and length of the specified Selection Mask item.
      Throws:
        `ReaderException` - An ReaderException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### setSelectMask6c

          public abstract void setSelectMask6c(int index,
                                               SelectMask6cParam param)
                                        throws ReaderException

      Set the Selection Mask item of the RFID UHF module of the Device.
      Parameters:
        `index` - Integer specifying the radix of the item from 0 to getSelectMask6cMaxSize().
        `param` - An instance of SelectMask6cParam that specifies the specified Selection Mask item.
      Throws:
        `ReaderException` - An ReaderException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### getSelectMask6c

          public abstract SelectMask6cParam getSelectMask6c(int index)
                                                     throws ReaderException

      Returns the Selection Mask item of the RFID UHF module of the Device.
      Parameters:
        `index` - Integer specifying the radix of the item from 0 to getSelectMask6cMaxSize().
      Returns:
        An instance of SelectMask6cParam that specifies the specified Selection Mask item.
      Throws:
        `ReaderException` - An ReaderException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### getSelectMask6cMaxSize

          public abstract int getSelectMask6cMaxSize()

      Returns the max size of select mask list status of the RFID UHF module.
      Returns:
        The max size of select mask list.

    - #### getEncoding

          public abstract Encoding getEncoding()
                                        throws ReaderException

      Returns the status of the encoding that the RFID UHF module of the appliance uses to perform the inventory.
      Returns:
        An Encoding enumeration specifying the encoding.
      Throws:
        `ReaderException` - An ReaderException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### setEncoding

          public abstract void setEncoding(Encoding encoding)
                                    throws ReaderException

      Sets the status of the encoding that the RFID UHF module of the appliance uses to perform the inventory.
      Parameters:
        `encoding` - An Encoding enumeration specifying the encoding.
      Throws:
        `ReaderException` - An ReaderException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### getTARI

          public abstract TARIType getTARI()
                                    throws ReaderException

      Returns the status of the TARI that the RFID UHF module of the appliance uses to perform the inventory.
      Returns:
        A TARIType enumeration specifying the TARI.
      Throws:
        `ReaderException` - An ReaderException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### setTARI

          public abstract void setTARI(TARIType type)
                                throws ReaderException

      Sets the status of the TARI that the RFID UHF module of the appliance uses to perform the inventory.
      Parameters:
        `type` - An TARIType enumeration specifying the TARI.
      Throws:
        `ReaderException` - An ReaderException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### getBLF

          public abstract BLFType getBLF()
                                  throws ReaderException

      Returns the status of the BLF that the RFID UHF module of the appliance uses to perform the inventory.
      Returns:
        A BLFType enumeration specifying the BLF.
      Throws:
        `ReaderException` - An ReaderException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### setBLF

          public abstract void setBLF(BLFType type)
                               throws ReaderException

      Sets the status of the BLF that the RFID UHF module of the appliance uses to perform the inventory.
      Parameters:
        `type` - An BLFType enumeration specifying the BLF.
      Throws:
        `ReaderException` - An ReaderException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### getToggleTarget

          public abstract boolean getToggleTarget()
                                           throws ReaderException

      Returns the status of the toggle target that the RFID UHF module of the appliance uses to perform the inventory.
      Returns:
        The toggle target status.
      Throws:
        `ReaderException` - An ReaderException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### setToggleTarget

          public abstract void setToggleTarget(boolean enabled)
                                        throws ReaderException

      Sets the status of the toggle target that the RFID UHF module of the appliance uses to perform the inventory.
      Parameters:
        `enabled` - The toggle target status.
      Throws:
        `ReaderException` - An ReaderException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### getFastMode

          public abstract boolean getFastMode()
                                       throws ReaderException

      Returns the status of the fast mode that the RFID UHF module of the appliance uses to perform the inventory.
      Returns:
        The fast mode status.
      Throws:
        `ReaderException` - An ReaderException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### setFastMode

          public abstract void setFastMode(boolean enabled)
                                    throws ReaderException

      Sets the status of the fast mode that the RFID UHF module of the appliance uses to perform the inventory.
      Parameters:
        `enabled` - The fast mode status.
      Throws:
        `ReaderException` - An ReaderException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### getModuleProfile

          public abstract int getModuleProfile()
                                        throws ReaderException

      Returns the status of the module's profile that the RFID UHF module of the appliance uses to perform the inventory.
      Returns:
        The index of module profile.
      Throws:
        `ReaderException` - An ReaderException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### setModuleProfile

          public abstract void setModuleProfile(int id)
                                         throws ReaderException

      Sets the status of the module's profile that the RFID UHF module of the appliance uses to perform the inventory. Only supports 0, 1, 2, 3 for HT730 UHF.
      Parameters:
        `id` - The module profile index.
      Throws:
        `ReaderException` - An ReaderException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### getPowerMode

          public abstract PowerMode getPowerMode()
                                          throws ReaderException

      Returns the status of the power mode that the RFID UHF module of the appliance uses to perform the inventory.
      Returns:
        A PowerMode enumeration specifying the power mode.
      Throws:
        `ReaderException` - An ReaderException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### setPowerMode

          public abstract void setPowerMode(PowerMode powerMode)
                                     throws ReaderException

      Sets the status of the power mode the RFID UHF module of the appliance uses to perform the inventory.
      Parameters:
        `powerMode` - A PowerMode enumeration specifying the power mode.
      Throws:
        `ReaderException` - An ReaderException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### getConfig

          public abstract RFIDConfig getConfig()
                                        throws ReaderException

      Returns the config of RFID module
      Returns:
        An instance of RFIDConfig that the config of RFID module.
      Throws:
        `ReaderException` - An ReaderException exception is thrown if a failure occurs while setting data on the instrument or returning data.

    - #### setConfig

          public abstract void setConfig(RFIDConfig rfidConfig)
                                  throws ReaderException

      Setup the config of the RFID module
      Parameters:
        `rfidConfig` - The RFID config setting
      Throws:
        `ReaderException` - An ReaderException exception is thrown if a failure occurs while setting data on the instrument or returning data.