# RFIDManagerCallback ## didUpdateRegistry Receives the result of the registry update setting. When calling [updateRegistry](RFManager.md#updateregistry), this callback method receives the result of the registry update setting. ```java default void didUpdateRegistry(final int state); ``` ### Parameters ```{list-table} :align: left :class: list-table * - Name - Type - Description * - state - int - 0: Data successfully saved to the registry Other: Failed to save data to the registry ``` ### Sample Code ```java @Override public void didUpdateRegistry(int state) { } ``` --- ## onModulationReceived Receives the debug mode. When calling [getModulation](RFManager.md#getmodulation), this callback method receives the debug mode. ```java default void onModulationReceived(String modulationMode); ``` ### Parameters ```{list-table} :align: left :class: list-table * - Name - Type - Description * - modulationMode - String - Debug mode ``` ### Sample Code ```java @Override public void onModulationReceived(String modulationMode) { } ``` --- ## didSetModulation Receives the result of setting the debug mode. When calling [setModulation](RFManager.md#setmodulation), this callback method receives the result of setting the debug mode. ```java default void didSetModulation(final int state); ``` ### Parameters ```{list-table} :align: left :class: list-table * - Name - Type - Description * - state - int - 0: Success Other: Failure ``` ### Sample Code ```java @Override public void didSetModulation(int state) { } ``` --- ## onTxPowerLevelReceived Receives the power level and the configurable minimum and maximum power levels. When calling [getOutputPowerLevel](RFManager.md#getoutputpowerlevel), this callback method receives the current, minimum, and maximum power levels. ```java default void onTxPowerLevelReceived(int power, int minPower, int maxPower); ``` ### Parameters ```{list-table} :align: left :class: list-table * - Name - Type - Description * - power - int - Current power level * - minPower - int - Minimum power level * - maxPower - int - Maximum power level ``` ### Sample Code ```java @Override public void onTxPowerLevelReceived(int power, int minPower, int maxPower) { } ``` --- ## onFhLbtReceived Receives FH and LBT parameters. When calling [getFhLbtParam](RFManager.md#getfhlbtparam), this callback method receives FH and LBT parameters. ```java default void onFhLbtReceived(int onTime, int offTime, int senseTime, int lbtLevel, int fhEnable, int lbtEnable, int cwEnable); ``` ### Parameters ```{list-table} :align: left :class: list-table * - Name - Type - Description * - onTime - int - Reading time * - offTime - int - Idle time * - senseTime - int - Carrier sense time * - lbtLevel - int - Target frequency level * - fhEnable - int - On (>=0x01) / Off (0x00) * - lbtEnable - int - On (>=0x01) / Off (0x00) * - cwEnable - int - On (0x01) / Off (0x00) ``` ### Sample Code ```java @Override public void onFhLbtReceived(int onTime, int offTime, int senseTime, int lbtLevel, int fhEnable, int lbtEnable, int cwEnable) { } ``` --- ## onReceiveAntimode Receives the anti-collision algorithm. When calling [getAntiCollisionMode](RFManager.md#getanticollisionmode), this callback method receives the anti-collision algorithm. ```java default void onReceiveAntimode(final int mode, final int qStart, int qMax, int qMin, int counter); ``` ### Parameters ```{list-table} :align: left :class: list-table * - Name - Type - Description * - mode - int - Anti-collision: Fixed Q (0x00), Dynamic Q (0x01) * - qStart - int - Q start position * - qMax - int - Maximum Q * - qMin - int - Minimum Q * - counter - int - Counter ``` ### Sample Code ```java @Override public void onReceiveAntimode(int mode, int qStart, int qMax, int qMin, int counter) { } ``` --- ## onSessionReceived Receives the session. When calling [getSession](RFManager.md#getsession), this callback method receives the session. ```java default void onSessionReceived(final int session); ``` ### Parameters ```{list-table} :align: left :class: list-table * - Name - Type - Description * - session - int - S0:0, S1:1, S2:2, S3:3 ``` ### Sample Code ```java @Override public void onSessionReceived(int ses) { } ``` --- ## onChannelReceived Receives the channel. When calling [getChannel](RFManager.md#getchannel), this callback method receives the channel. ```java default void onChannelReceived(final int channel, final int channelOffset); ``` ### Parameters ```{list-table} :align: left :class: list-table * - Name - Type - Description * - channel - int - Channel number * - channelOffset - int - Channel offset ``` ### Sample Code ```java @Override public void onChannelReceived(int channel, int channelOffset) { } ``` --- ## onRegionReceived Receives the AsReader region. When calling [getRegion](RFManager.md#getregion), this callback method receives the AsReader region. ```java default void onRegionReceived(final int region); ``` ### Parameters ```{list-table} :align: left :class: list-table * - Name - Type - Description * - region - int - AsReader region ``` ### Sample Code ```java @Override public void onRegionReceived(int region) { } ``` --- ## didReceiveRegion Receives the result of setting the AsReader region. When calling [setRegion](RFManager.md#setregion), this callback receives the result of the region setting. ```java default void didReceiveRegion(final int state); ``` ### Parameters ```{list-table} :align: left :class: list-table * - Name - Type - Description * - state - int - 0: Success Other: Failure ``` ### Sample Code ```java @Override public void didReceiveRegion(int state) { } ``` --- ## onReceiveSmartMode Receives the hopping mode ```{admonition} :class: warning This feature is supported only on certain models such as ASR-A3xD. ``` When calling [getFrequencyHoppingMode](RFManager.md#getfrequencyhoppingmode), this callback receives the hopping mode. ```java default void onReceiveSmartMode(final int mode); ``` ### Parameters ```{list-table} :align: left :class: list-table * - Name - Type - Description * - mode - int - 0x00: Normal mode 0x01: Smart hopping mode ``` ### Sample Code ```java @Override public void onReceiveSmartMode(int state) { } ``` --- ## didSetSmartMode Receives the result of setting the hopping mode ```{admonition} :class: warning This feature is supported only on certain models such as ASR-A3xD. ``` When calling [setSmartHopping](RFManager.md#setsmarthopping), this callback receives the result of setting the hopping mode. ```java default void didSetSmartMode(final int state); ``` ### Parameters ```{list-table} :align: left :class: list-table * - Name - Type - Description * - state - int - 0: Success Other: Failure ``` ### Sample Code ```java @Override public void didSetSmartMode(int state) { } ``` --- ## didSetOptiFreqHPTable Receives the result of setting the hopping table ```{admonition} :class: warning This feature is supported only on certain models such as ASR-A3xD. ``` When calling [setOptimumFrequencyHoppingTable](RFManager.md#setoptimumfrequencyhoppingtable), this callback receives the result of setting the hopping table. ```java default void didSetOptiFreqHPTable(final int status); ``` ### Parameters ```{list-table} :align: left :class: list-table * - Name - Type - Description * - status - int - 0: Success Other: Failure ``` ### Sample Code ```java @Override public void didSetOptiFreqHPTable(int status) { } ``` --- ## onTagReceived Receives inventory data. When calling [startInventory](RFManager.md#startinventory), this callback receives the inventory data. ```java default void onTagReceived(final int[] dest); ``` ### Parameters ```{list-table} :align: left :class: list-table * - Name - Type - Description * - dest - int[] - PC + EPC data ``` ### Sample Code ```java @Override public void onTagReceived(int[] dest) { } ``` --- ## onTagWithTidReceived Receives inventory data with TID values. ```{admonition} :class: warning This feature is supported only on certain models such as ASR-A3xD. ``` When calling [startInventoryTagID](RFManager.md#startinventorytagid), this callback receives the inventory data. ```java default void onTagWithTidReceived(final int[] pcEpc, final int[] tid); ``` ### Parameters ```{list-table} :align: left :class: list-table * - Name - Type - Description * - pcEpc - int[] - PC + EPC data * - tid - int[] - TID data ``` ### Sample Code ```java @Override public void onTagWithTidReceived(int[] pcEpc, int[] tid) { } ``` --- ## onTagWithRssiReceived Receives inventory data with RSSI values. When calling [startInventoryRSSI](RFManager.md#startinventoryrssi), this callback receives the inventory data. ```java default void onTagWithRssiReceived(final int[] pcEpc, final int rssi); ``` ### Parameters ```{list-table} :align: left :class: list-table * - Name - Type - Description * - pcEpc - int[] - PC + EPC data * - rssi - int - RSSI status ``` ### Sample Code ```java @Override public void onTagWithRssiReceived(int[] pcEpc, int rssi) { } ``` --- ## onTagMemoryReceived Receives read tag data. When calling [readTagMemory](RFManager.md#readtagmemory), this callback receives the read tag data. ```java default void onTagMemoryReceived(final int[] data); ``` ### Parameters ```{list-table} :align: left :class: list-table * - Name - Type - Description * - data - int[] - Tag data ``` ### Sample Code ```java @Override public void onTagMemoryReceived(int[] data) { } ``` --- ## onTagMemoryLongReceived Receives read tag data ```{admonition} :class: warning This feature is supported only on certain models such as ASR-A3xD. ``` When calling [readTagMemory](RFManager.md#readtagmemory), this callback receives the read tag data. ```java default void onTagMemoryLongReceived(final int[] dest); ``` ### Parameters ```{list-table} :align: left :class: list-table * - Name - Type - Description * - dest - int[] - Tag data ``` ### Sample Code ```java @Override public void onTagMemoryLongReceived(int[] dest) { } ``` --- ## onPcEpcSensorDataReceived Receives inventory data of temperature/humidity RF tags ```{admonition} :class: warning This feature is supported only on certain models such as ASR-A3xD. ``` When calling [startRFMDecode](RFManager.md#startrfmdecode), this callback receives inventory data of temperature/humidity RF tags. ```java default void onPcEpcSensorDataReceived(int[] pcEpc, int[] sensorData); ``` ### Parameters ```{list-table} :align: left :class: list-table * - Name - Type - Description * - pcEpc - int[] - PC + EPC data * - sensorData - int[] - Sensor data ``` ### Sample Code ```java @Override public void onPcEpcSensorDataReceived(int[] pcEpc, int[] sensorData) { } ``` --- ## onSetChannelSuccess Receives the result of channel setting ```{admonition} :class: warning This feature is supported only on certain models such as ASR-A3xD. ``` When calling [setChannel](RFManager.md#setchannel), this callback receives the result of setting the channel. ```java default void onSetChannelSuccess(); ``` ### Sample Code ```java @Override public void onSetChannelSuccess() { } ``` --- ## onSetFhLbtParamSuccess Receives the result of setting FH and LBT parameters ```{admonition} :class: warning This feature is supported only on certain models such as ASR-A3xD. ``` When calling [setFhLbtParam](RFManager.md#setfhlbtparam), this callback receives the result of setting FH and LBT parameters. ```java default void onSetFhLbtParamSuccess(); ``` ### Sample Code ```java @Override public void onSetFhLbtParamSuccess() { } ``` --- ## onLockTagMemorySuccess Receives the result of locking an RF tag When calling [lockTagMemory](RFManager.md#locktagmemory), this callback receives the result of locking an RF tag. ```java default void onLockTagMemorySuccess(); ``` ### Sample Code ```java @Override public void onLockTagMemorySuccess() { } ``` --- ## onWriteToTagMemorySuccess Receives the result of writing data to an RF tag When calling [writeTagMemory](RFManager.md#writetagmemory), this callback receives the result of writing data to an RF tag. ```java default void onWriteToTagMemorySuccess(); ``` ### Sample Code ```java @Override public void onWriteToTagMemorySuccess() { } ``` --- ## onKillTagMemorySuccess Receives the result of killing an RF tag When calling [killTag](RFManager.md#killtag), this callback receives the result of killing an RF tag. ```java default void onKillTagMemorySuccess(); ``` ### Sample Code ```java @Override public void onKillTagMemorySuccess() { } ``` --- ## onSetSessionSuccess Receives the result of setting a session When calling [setSession](RFManager.md#setsession), this callback receives the result of setting a session. ```java default void onSetSessionSuccess(); ``` ### Sample Code ```java @Override public void onSetSessionSuccess() { } ``` --- ## onGetFrequencyHoppingTableSuccess Receives the frequency hopping table ```{admonition} :class: warning This feature is supported only on certain models such as ASR-A3xD. ``` When calling [getFrequencyHoppingTable](RFManager.md#getfrequencyhoppingtable), this callback receives the frequency hopping table. ```java default void onGetFrequencyHoppingTableSuccess(int data[]); ``` ### Parameters ```{list-table} :align: left :class: list-table * - Name - Type - Description * - data[] - int - Frequency hopping table ``` ### Sample Code ```java @Override public void onGetFrequencyHoppingTableSuccess(int[] data) { } ``` --- ## onSetOutputPowerLevelSuccess Receives the result of setting the power level When calling [OutputPowerLevel](RFManager.md#outputpowerlevel), this callback receives the result of setting the power level. ```java default void onSetOutputPowerLevelSuccess(); ``` ### Sample Code ```java @Override public void onSetOutputPowerLevelSuccess() { } ``` --- ## onSetAntiCollisionModeSuccess Receives the result of setting the anti-collision algorithm ```{admonition} :class: warning This feature is supported only on certain models such as ASR-A3xD. ``` When calling [setAntiCollisionMode](RFManager.md#setanticollisionmode), this callback receives the result of setting the anti-collision algorithm. ```java default void onSetAntiCollisionModeSuccess(); ``` ### Sample Code ```java @Override public void onSetAntiCollisionModeSuccess() { } ``` --- ## onSetTriggerStopConditionSuccess Receives the result of setting trigger stop conditions ```{admonition} :class: warning This feature is supported only on certain models such as ASR-A3xD. ``` When calling [setTriggerStopCondition](RFManager.md#settriggerstopcondition), this callback receives the result of setting trigger stop conditions. ```java default void onSetTriggerStopConditionSuccess(); ``` ### Sample Code ```java @Override public void onSetTriggerStopConditionSuccess() { } ``` --- ## onAutoInventoryFinished Receives the result of automatic inventory completion When calling [startInventory](RFManager.md#startinventory), this callback receives the result of automatic inventory completion. ```java default void onAutoInventoryFinished(); ``` ### Sample Code ```java @Override public void onAutoInventoryFinished() { } ``` --- ## onRFIDManagerError Called when an RFID-related configuration error occurs ```{admonition} :class: warning This feature is supported only on certain models such as ASR-A3xD. ``` ```java void onRFIDManagerError(String message); ``` ### Parameters ```{list-table} :align: left :class: list-table * - Name - Type - Description * - message - String - Error message ``` ### Sample Code ```java @Override public void onRFIDManagerError(String message) { } ``` --- ## didSetContinuousMode Receives the result of setting continuous scan mode ```{admonition} :class: warning This feature is supported only on certain models such as ASR-M30S. ``` When calling [setContinuousMode](RFManager.md#setcontinuousmode), this callback receives the result of setting continuous scan mode. ```java default void didSetContinuousMode(int status); ``` ### Parameters ```{list-table} :align: left :class: list-table * - Name - Type - Description * - status - int - 0: Success Other: Failure ``` ### Sample Code ```java @Override public void didSetContinuousMode(int status) { } ``` --- ## onReceiveContinuousMode Receives whether continuous scan mode is active ```{admonition} :class: warning This feature is supported only on certain models such as ASR-M30S. ``` When calling [getContinuousMode](RFManager.md#getcontinuousmode), this callback receives the current continuous scan mode status. ```java default void onReceiveContinuousMode(boolean status); ``` ### Parameters ```{list-table} :align: left :class: list-table * - Name - Type - Description * - status - boolean - true: Continuous scan false: Single scan ``` ### Sample Code ```java @Override public void onReceiveContinuousMode(boolean status) { } ``` --- ## didSetAutoOffTime Receives the result of setting AsReader auto-off time ```{admonition} :class: warning This feature is supported only on certain models such as ASR-M30S. ``` When calling [setAutoOffTime](RFManager.md#setautoofftime), this callback receives the result of setting auto-off time. ```java default void didSetAutoOffTime(int status); ``` ### Parameters ```{list-table} :align: left :class: list-table * - Name - Type - Description * - status - int - 0: Success Other: Failure ``` ### Sample Code ```java @Override public void didSetAutoOffTime(int status) { } ``` --- ## onReceiveAutoOffTime Receives the AsReader auto-off time ```{admonition} :class: warning This feature is supported only on certain models such as ASR-M30S. ``` When calling [getAutoOffTime](RFManager.md#getautoofftime), this callback receives the AsReader auto-off time. ```java default void onReceiveAutoOffTime(int time); ``` ### Parameters ```{list-table} :align: left :class: list-table * - Name - Type - Description * - time - int - AsReader auto-off time ``` ### Sample Code ```java @Override public void onReceiveAutoOffTime(int time) { } ``` --- ## didSetSessionFlag Receives the result of setting SessionFlag ```{admonition} :class: warning This feature is supported only on certain models such as ASR-M30S. ``` When calling [setSessionFlag](RFManager.md#setsessionflag), this callback receives the result of setting SessionFlag. ```java default void didSetSessionFlag(int status); ``` ### Parameters ```{list-table} :align: left :class: list-table * - Name - Type - Description * - status - int - 0: Success Other: Failure ``` ### Sample Code ```java @Override public void didSetSessionFlag(int status) { } ``` --- ## onReceiveSessionFlag Receives AsReader SessionFlag ```{admonition} :class: warning This feature is supported only on certain models such as ASR-M30S. ``` When calling [getSessionFlag](RFManager.md#getsessionflag), this callback receives the AsReader SessionFlag. ```java default void onReceiveSessionFlag(int value); ``` ### Parameters ```{list-table} :align: left :class: list-table * - Name - Type - Description * - value - int - SessionFlag ``` ### Sample Code ```java @Override public void onReceiveSessionFlag(int value) { } ``` --- ## didSetQValue Receives the result of setting Q value ```{admonition} :class: warning This feature is supported only on certain models such as ASR-M30S. ``` When calling [setQValue](RFManager.md#setqvalue), this callback receives the result of setting Q value. ```java default void didSetQValue(int status); ``` ### Parameters ```{list-table} :align: left :class: list-table * - Name - Type - Description * - status - int - 0: Success Other: Failure ``` ### Sample Code ```java @Override public void didSetQValue(int status) { } ``` --- ## onReceiveQValue Receives AsReader Q value ```{admonition} :class: warning This feature is supported only on certain models such as ASR-M30S. ``` When calling [getQValue](RFManager.md#getqvalue), this callback receives the AsReader Q value. ```java default void onReceiveQValue(int value); ``` ### Parameters ```{list-table} :align: left :class: list-table * - Name - Type - Description * - value - int - Q value ``` ### Sample Code ```java @Override public void onReceiveQValue(int value) { } ``` --- ## didSetHidMode Receives the result of setting the AsReader HID mode. ```{admonition} :class: warning This feature is supported only by certain models, such as ASR-M30S. ``` When calling [setHidMode](RFManager.md#sethidmode), this callback receives the result of the HID mode setting. ```java default void didSetHidMode(int status); ``` ### Parameters ```{list-table} :align: left :class: list-table * - Name - Type - Description * - status - int - 0: Success Otherwise: Failure ``` ### Sample Code ```java @Override public void didSetHidMode(int status) { } ``` --- ## onReceiveHidMode Receives whether the AsReader is in HID mode. ```{admonition} :class: warning This feature is supported only by certain models, such as ASR-M30S. ``` When calling [getHidMode](RFManager.md#gethidmode), this callback receives whether the AsReader is in HID mode. ```java default void onReceiveHidMode(boolean value); ``` ### Parameters ```{list-table} :align: left :class: list-table * - Name - Type - Description * - value - boolean - true: HID mode false: Not HID mode ``` ### Sample Code ```java @Override public void onReceiveHidMode(boolean value) { } ``` --- ## didSetDutyRatio Receives the result of setting the AsReader duty ratio. ```{admonition} :class: warning This feature is supported only by certain models, such as ASR-M30S. ``` When calling [setDutyRatio](RFManager.md#setdutyratio), this callback receives the result of the duty ratio setting. ```java default void didSetDutyRatio(int status); ``` ### Parameters ```{list-table} :align: left :class: list-table * - Name - Type - Description * - status - int - 0: Success Otherwise: Failure ``` ### Sample Code ```java @Override public void didSetDutyRatio(int status) { } ``` --- ## onReceiveDutyRatio Receives the AsReader duty ratio. ```{admonition} :class: warning This feature is supported only by certain models, such as ASR-M30S. ``` When calling [getDutyRatio](RFManager.md#getdutyratio), this callback receives the AsReader duty ratio. ```java default void onReceiveDutyRatio(int value); ``` ### Parameters ```{list-table} :align: left :class: list-table * - Name - Type - Description * - value - int - Duty ratio ``` ### Sample Code ```java @Override public void onReceiveDutyRatio(int value) { } ``` --- ## didSetDutyRatioBaseTime Receives the result of setting the AsReader duty ratio base time. ```{admonition} :class: warning This feature is supported only by certain models, such as ASR-M30S. ``` When calling [setDutyRatioBaseTime](RFManager.md#setdutyratiobasetime), this callback receives the result of the duty ratio base time setting. ```java default void didSetDutyRatioBaseTime(int status); ``` ### Parameters ```{list-table} :align: left :class: list-table * - Name - Type - Description * - status - int - 0: Success Otherwise: Failure ``` ### Sample Code ```java @Override public void didSetDutyRatioBaseTime(int status) { } ``` --- ## onReceiveDutyRatioBaseTime Receives the AsReader duty ratio base time. ```{admonition} :class: warning This feature is supported only by certain models, such as ASR-M30S. ``` When calling [getDutyRatioBaseTime](RFManager.md#getdutyratiobasetime), this callback receives the AsReader duty ratio base time. ```java default void onReceiveDutyRatioBaseTime(int value); ``` ### Parameters ```{list-table} :align: left :class: list-table * - Name - Type - Description * - value - int - Duty ratio base time ``` ### Sample Code ```java @Override public void onReceiveDutyRatioBaseTime(int value) { } ```