-- Automatically generated by util/generate-tmr-hsc.pl {-| Module : System.Hardware.MercuryApi.Params Description : Type-safe parameter access Copyright : © Patrick Pelletier, 2017 License : MIT Maintainer : code@funwithsoftware.org Portability : POSIX, Windows Individual functions to get and set parameters. These are type-checked at compile time, unlike 'paramGet' and 'paramSet', which are type-checked at runtime. -} module System.Hardware.MercuryApi.Params ( -- * Type-safe getters and setters -- ** \/reader paramGetBaudRate , paramSetBaudRate , paramGetCommandTimeout , paramSetCommandTimeout , paramGetDescription , paramSetDescription , paramGetExtendedEpc , paramSetExtendedEpc , paramGetHostname , paramSetHostname , paramGetLicenseKey , paramSetLicenseKey , paramGetLicensedFeatures , paramSetLicensedFeatures , paramGetMetadataflags , paramSetMetadataflags , paramGetPowerMode , paramSetPowerMode , paramGetProbeBaudRates , paramSetProbeBaudRates , paramGetTransportTimeout , paramSetTransportTimeout , paramGetUri -- ** \/reader\/antenna , paramGetAntennaCheckPort , paramSetAntennaCheckPort , paramGetAntennaConnectedPortList , paramGetAntennaPortList , paramGetAntennaPortSwitchGpos , paramSetAntennaPortSwitchGpos -- ** \/reader\/gen2 , paramGetGen2AccessPassword , paramSetGen2AccessPassword , paramGetGen2WriteEarlyExit , paramSetGen2WriteEarlyExit , paramGetGen2WriteMode , paramSetGen2WriteMode , paramGetGen2WriteReplyTimeout , paramSetGen2WriteReplyTimeout -- ** \/reader\/gpio , paramGetGpioInputList , paramSetGpioInputList , paramGetGpioOutputList , paramSetGpioOutputList -- ** \/reader\/radio , paramGetRadioEnablePowerSave , paramSetRadioEnablePowerSave , paramGetRadioEnableSJC , paramSetRadioEnableSJC , paramGetRadioPowerMax , paramGetRadioPowerMin , paramGetRadioReadPower , paramSetRadioReadPower , paramGetRadioTemperature , paramGetRadioWritePower , paramSetRadioWritePower -- ** \/reader\/read , paramGetReadAsyncOffTime , paramSetReadAsyncOffTime , paramGetReadAsyncOnTime , paramSetReadAsyncOnTime , paramGetReadPlan , paramSetReadPlan -- ** \/reader\/region , paramGetRegionHopTable , paramSetRegionHopTable , paramGetRegionHopTime , paramSetRegionHopTime , paramGetRegionId , paramSetRegionId , paramGetRegionSupportedRegions -- ** \/reader\/region\/lbt , paramGetRegionLbtEnable , paramSetRegionLbtEnable -- ** \/reader\/status , paramGetStatusAntennaEnable , paramSetStatusAntennaEnable , paramGetStatusFrequencyEnable , paramSetStatusFrequencyEnable , paramGetStatusTemperatureEnable , paramSetStatusTemperatureEnable -- ** \/reader\/tagReadData , paramGetTagReadDataEnableReadFilter , paramSetTagReadDataEnableReadFilter , paramGetTagReadDataReadFilterTimeout , paramSetTagReadDataReadFilterTimeout , paramGetTagReadDataRecordHighestRssi , paramSetTagReadDataRecordHighestRssi , paramGetTagReadDataReportRssiInDbm , paramSetTagReadDataReportRssiInDbm , paramGetTagReadDataTagopFailures , paramGetTagReadDataTagopSuccesses , paramGetTagReadDataUniqueByAntenna , paramSetTagReadDataUniqueByAntenna , paramGetTagReadDataUniqueByData , paramSetTagReadDataUniqueByData , paramGetTagReadDataUniqueByProtocol , paramSetTagReadDataUniqueByProtocol -- ** \/reader\/tagop , paramGetTagopAntenna , paramSetTagopAntenna , paramGetTagopProtocol , paramSetTagopProtocol -- ** \/reader\/trigger\/read , paramGetTriggerReadGpi , paramSetTriggerReadGpi -- ** \/reader\/version , paramGetVersionHardware , paramGetVersionModel , paramGetVersionProductGroup , paramGetVersionProductGroupID , paramGetVersionProductID , paramGetVersionSerial , paramSetVersionSerial , paramGetVersionSoftware , paramGetVersionSupportedProtocols -- * As strings , paramGetString , paramSetString ) where import Control.Applicative ( (<$>) ) import Data.Int ( Int8, Int16, Int32 ) import Data.Text (Text) import qualified Data.Text as T ( unpack, pack ) import Data.Word ( Word8, Word16, Word32 ) import System.Hardware.MercuryApi hiding (read) -- | Set parameter 'PARAM_BAUDRATE' (@\/reader\/baudRate@) paramSetBaudRate :: Reader -> Word32 -> IO () paramSetBaudRate rdr = paramSet rdr PARAM_BAUDRATE -- | Get parameter 'PARAM_BAUDRATE' (@\/reader\/baudRate@) paramGetBaudRate :: Reader -> IO Word32 paramGetBaudRate rdr = paramGet rdr PARAM_BAUDRATE -- | Set parameter 'PARAM_PROBEBAUDRATES' (@\/reader\/probeBaudRates@) paramSetProbeBaudRates :: Reader -> [Word32] -> IO () paramSetProbeBaudRates rdr = paramSet rdr PARAM_PROBEBAUDRATES -- | Get parameter 'PARAM_PROBEBAUDRATES' (@\/reader\/probeBaudRates@) paramGetProbeBaudRates :: Reader -> IO [Word32] paramGetProbeBaudRates rdr = paramGet rdr PARAM_PROBEBAUDRATES -- | Set parameter 'PARAM_COMMANDTIMEOUT' (@\/reader\/commandTimeout@) (milliseconds) paramSetCommandTimeout :: Reader -> Word32 -> IO () paramSetCommandTimeout rdr = paramSet rdr PARAM_COMMANDTIMEOUT -- | Get parameter 'PARAM_COMMANDTIMEOUT' (@\/reader\/commandTimeout@) (milliseconds) paramGetCommandTimeout :: Reader -> IO Word32 paramGetCommandTimeout rdr = paramGet rdr PARAM_COMMANDTIMEOUT -- | Set parameter 'PARAM_TRANSPORTTIMEOUT' (@\/reader\/transportTimeout@) (milliseconds) paramSetTransportTimeout :: Reader -> Word32 -> IO () paramSetTransportTimeout rdr = paramSet rdr PARAM_TRANSPORTTIMEOUT -- | Get parameter 'PARAM_TRANSPORTTIMEOUT' (@\/reader\/transportTimeout@) (milliseconds) paramGetTransportTimeout :: Reader -> IO Word32 paramGetTransportTimeout rdr = paramGet rdr PARAM_TRANSPORTTIMEOUT -- | Set parameter 'PARAM_POWERMODE' (@\/reader\/powerMode@) paramSetPowerMode :: Reader -> PowerMode -> IO () paramSetPowerMode rdr = paramSet rdr PARAM_POWERMODE -- | Get parameter 'PARAM_POWERMODE' (@\/reader\/powerMode@) paramGetPowerMode :: Reader -> IO PowerMode paramGetPowerMode rdr = paramGet rdr PARAM_POWERMODE -- | Set parameter 'PARAM_ANTENNA_CHECKPORT' (@\/reader\/antenna\/checkPort@) paramSetAntennaCheckPort :: Reader -> Bool -> IO () paramSetAntennaCheckPort rdr = paramSet rdr PARAM_ANTENNA_CHECKPORT -- | Get parameter 'PARAM_ANTENNA_CHECKPORT' (@\/reader\/antenna\/checkPort@) paramGetAntennaCheckPort :: Reader -> IO Bool paramGetAntennaCheckPort rdr = paramGet rdr PARAM_ANTENNA_CHECKPORT -- | Get parameter 'PARAM_ANTENNA_PORTLIST' (@\/reader\/antenna\/portList@) paramGetAntennaPortList :: Reader -> IO [AntennaPort] paramGetAntennaPortList rdr = paramGet rdr PARAM_ANTENNA_PORTLIST -- | Get parameter 'PARAM_ANTENNA_CONNECTEDPORTLIST' (@\/reader\/antenna\/connectedPortList@) paramGetAntennaConnectedPortList :: Reader -> IO [AntennaPort] paramGetAntennaConnectedPortList rdr = paramGet rdr PARAM_ANTENNA_CONNECTEDPORTLIST -- | Set parameter 'PARAM_ANTENNA_PORTSWITCHGPOS' (@\/reader\/antenna\/portSwitchGpos@) paramSetAntennaPortSwitchGpos :: Reader -> [PinNumber] -> IO () paramSetAntennaPortSwitchGpos rdr = paramSet rdr PARAM_ANTENNA_PORTSWITCHGPOS -- | Get parameter 'PARAM_ANTENNA_PORTSWITCHGPOS' (@\/reader\/antenna\/portSwitchGpos@) paramGetAntennaPortSwitchGpos :: Reader -> IO [PinNumber] paramGetAntennaPortSwitchGpos rdr = paramGet rdr PARAM_ANTENNA_PORTSWITCHGPOS -- | Set parameter 'PARAM_GPIO_INPUTLIST' (@\/reader\/gpio\/inputList@) paramSetGpioInputList :: Reader -> [PinNumber] -> IO () paramSetGpioInputList rdr = paramSet rdr PARAM_GPIO_INPUTLIST -- | Get parameter 'PARAM_GPIO_INPUTLIST' (@\/reader\/gpio\/inputList@) paramGetGpioInputList :: Reader -> IO [PinNumber] paramGetGpioInputList rdr = paramGet rdr PARAM_GPIO_INPUTLIST -- | Set parameter 'PARAM_GPIO_OUTPUTLIST' (@\/reader\/gpio\/outputList@) paramSetGpioOutputList :: Reader -> [PinNumber] -> IO () paramSetGpioOutputList rdr = paramSet rdr PARAM_GPIO_OUTPUTLIST -- | Get parameter 'PARAM_GPIO_OUTPUTLIST' (@\/reader\/gpio\/outputList@) paramGetGpioOutputList :: Reader -> IO [PinNumber] paramGetGpioOutputList rdr = paramGet rdr PARAM_GPIO_OUTPUTLIST -- | Set parameter 'PARAM_GEN2_ACCESSPASSWORD' (@\/reader\/gen2\/accessPassword@) paramSetGen2AccessPassword :: Reader -> GEN2_Password -> IO () paramSetGen2AccessPassword rdr = paramSet rdr PARAM_GEN2_ACCESSPASSWORD -- | Get parameter 'PARAM_GEN2_ACCESSPASSWORD' (@\/reader\/gen2\/accessPassword@) paramGetGen2AccessPassword :: Reader -> IO GEN2_Password paramGetGen2AccessPassword rdr = paramGet rdr PARAM_GEN2_ACCESSPASSWORD -- | Set parameter 'PARAM_GEN2_WRITEMODE' (@\/reader\/gen2\/writeMode@) paramSetGen2WriteMode :: Reader -> GEN2_WriteMode -> IO () paramSetGen2WriteMode rdr = paramSet rdr PARAM_GEN2_WRITEMODE -- | Get parameter 'PARAM_GEN2_WRITEMODE' (@\/reader\/gen2\/writeMode@) paramGetGen2WriteMode :: Reader -> IO GEN2_WriteMode paramGetGen2WriteMode rdr = paramGet rdr PARAM_GEN2_WRITEMODE -- | Set parameter 'PARAM_READ_ASYNCOFFTIME' (@\/reader\/read\/asyncOffTime@) (milliseconds) paramSetReadAsyncOffTime :: Reader -> Word32 -> IO () paramSetReadAsyncOffTime rdr = paramSet rdr PARAM_READ_ASYNCOFFTIME -- | Get parameter 'PARAM_READ_ASYNCOFFTIME' (@\/reader\/read\/asyncOffTime@) (milliseconds) paramGetReadAsyncOffTime :: Reader -> IO Word32 paramGetReadAsyncOffTime rdr = paramGet rdr PARAM_READ_ASYNCOFFTIME -- | Set parameter 'PARAM_READ_ASYNCONTIME' (@\/reader\/read\/asyncOnTime@) (milliseconds) paramSetReadAsyncOnTime :: Reader -> Word32 -> IO () paramSetReadAsyncOnTime rdr = paramSet rdr PARAM_READ_ASYNCONTIME -- | Get parameter 'PARAM_READ_ASYNCONTIME' (@\/reader\/read\/asyncOnTime@) (milliseconds) paramGetReadAsyncOnTime :: Reader -> IO Word32 paramGetReadAsyncOnTime rdr = paramGet rdr PARAM_READ_ASYNCONTIME -- | Set parameter 'PARAM_READ_PLAN' (@\/reader\/read\/plan@) paramSetReadPlan :: Reader -> ReadPlan -> IO () paramSetReadPlan rdr = paramSet rdr PARAM_READ_PLAN -- | Get parameter 'PARAM_READ_PLAN' (@\/reader\/read\/plan@) paramGetReadPlan :: Reader -> IO ReadPlan paramGetReadPlan rdr = paramGet rdr PARAM_READ_PLAN -- | Set parameter 'PARAM_RADIO_ENABLEPOWERSAVE' (@\/reader\/radio\/enablePowerSave@) paramSetRadioEnablePowerSave :: Reader -> Bool -> IO () paramSetRadioEnablePowerSave rdr = paramSet rdr PARAM_RADIO_ENABLEPOWERSAVE -- | Get parameter 'PARAM_RADIO_ENABLEPOWERSAVE' (@\/reader\/radio\/enablePowerSave@) paramGetRadioEnablePowerSave :: Reader -> IO Bool paramGetRadioEnablePowerSave rdr = paramGet rdr PARAM_RADIO_ENABLEPOWERSAVE -- | Get parameter 'PARAM_RADIO_POWERMAX' (@\/reader\/radio\/powerMax@) (centi-dBm) paramGetRadioPowerMax :: Reader -> IO Int16 paramGetRadioPowerMax rdr = paramGet rdr PARAM_RADIO_POWERMAX -- | Get parameter 'PARAM_RADIO_POWERMIN' (@\/reader\/radio\/powerMin@) (centi-dBm) paramGetRadioPowerMin :: Reader -> IO Int16 paramGetRadioPowerMin rdr = paramGet rdr PARAM_RADIO_POWERMIN -- | Set parameter 'PARAM_RADIO_READPOWER' (@\/reader\/radio\/readPower@) (centi-dBm) paramSetRadioReadPower :: Reader -> Int32 -> IO () paramSetRadioReadPower rdr = paramSet rdr PARAM_RADIO_READPOWER -- | Get parameter 'PARAM_RADIO_READPOWER' (@\/reader\/radio\/readPower@) (centi-dBm) paramGetRadioReadPower :: Reader -> IO Int32 paramGetRadioReadPower rdr = paramGet rdr PARAM_RADIO_READPOWER -- | Set parameter 'PARAM_RADIO_WRITEPOWER' (@\/reader\/radio\/writePower@) (centi-dBm) paramSetRadioWritePower :: Reader -> Int32 -> IO () paramSetRadioWritePower rdr = paramSet rdr PARAM_RADIO_WRITEPOWER -- | Get parameter 'PARAM_RADIO_WRITEPOWER' (@\/reader\/radio\/writePower@) (centi-dBm) paramGetRadioWritePower :: Reader -> IO Int32 paramGetRadioWritePower rdr = paramGet rdr PARAM_RADIO_WRITEPOWER -- | Get parameter 'PARAM_RADIO_TEMPERATURE' (@\/reader\/radio\/temperature@) (degrees C) paramGetRadioTemperature :: Reader -> IO Int8 paramGetRadioTemperature rdr = paramGet rdr PARAM_RADIO_TEMPERATURE -- | Set parameter 'PARAM_TAGREADDATA_RECORDHIGHESTRSSI' (@\/reader\/tagReadData\/recordHighestRssi@) paramSetTagReadDataRecordHighestRssi :: Reader -> Bool -> IO () paramSetTagReadDataRecordHighestRssi rdr = paramSet rdr PARAM_TAGREADDATA_RECORDHIGHESTRSSI -- | Get parameter 'PARAM_TAGREADDATA_RECORDHIGHESTRSSI' (@\/reader\/tagReadData\/recordHighestRssi@) paramGetTagReadDataRecordHighestRssi :: Reader -> IO Bool paramGetTagReadDataRecordHighestRssi rdr = paramGet rdr PARAM_TAGREADDATA_RECORDHIGHESTRSSI -- | Set parameter 'PARAM_TAGREADDATA_REPORTRSSIINDBM' (@\/reader\/tagReadData\/reportRssiInDbm@) paramSetTagReadDataReportRssiInDbm :: Reader -> Bool -> IO () paramSetTagReadDataReportRssiInDbm rdr = paramSet rdr PARAM_TAGREADDATA_REPORTRSSIINDBM -- | Get parameter 'PARAM_TAGREADDATA_REPORTRSSIINDBM' (@\/reader\/tagReadData\/reportRssiInDbm@) paramGetTagReadDataReportRssiInDbm :: Reader -> IO Bool paramGetTagReadDataReportRssiInDbm rdr = paramGet rdr PARAM_TAGREADDATA_REPORTRSSIINDBM -- | Set parameter 'PARAM_TAGREADDATA_UNIQUEBYANTENNA' (@\/reader\/tagReadData\/uniqueByAntenna@) paramSetTagReadDataUniqueByAntenna :: Reader -> Bool -> IO () paramSetTagReadDataUniqueByAntenna rdr = paramSet rdr PARAM_TAGREADDATA_UNIQUEBYANTENNA -- | Get parameter 'PARAM_TAGREADDATA_UNIQUEBYANTENNA' (@\/reader\/tagReadData\/uniqueByAntenna@) paramGetTagReadDataUniqueByAntenna :: Reader -> IO Bool paramGetTagReadDataUniqueByAntenna rdr = paramGet rdr PARAM_TAGREADDATA_UNIQUEBYANTENNA -- | Set parameter 'PARAM_TAGREADDATA_UNIQUEBYDATA' (@\/reader\/tagReadData\/uniqueByData@) paramSetTagReadDataUniqueByData :: Reader -> Bool -> IO () paramSetTagReadDataUniqueByData rdr = paramSet rdr PARAM_TAGREADDATA_UNIQUEBYDATA -- | Get parameter 'PARAM_TAGREADDATA_UNIQUEBYDATA' (@\/reader\/tagReadData\/uniqueByData@) paramGetTagReadDataUniqueByData :: Reader -> IO Bool paramGetTagReadDataUniqueByData rdr = paramGet rdr PARAM_TAGREADDATA_UNIQUEBYDATA -- | Set parameter 'PARAM_TAGOP_ANTENNA' (@\/reader\/tagop\/antenna@) paramSetTagopAntenna :: Reader -> AntennaPort -> IO () paramSetTagopAntenna rdr = paramSet rdr PARAM_TAGOP_ANTENNA -- | Get parameter 'PARAM_TAGOP_ANTENNA' (@\/reader\/tagop\/antenna@) paramGetTagopAntenna :: Reader -> IO AntennaPort paramGetTagopAntenna rdr = paramGet rdr PARAM_TAGOP_ANTENNA -- | Set parameter 'PARAM_TAGOP_PROTOCOL' (@\/reader\/tagop\/protocol@) paramSetTagopProtocol :: Reader -> TagProtocol -> IO () paramSetTagopProtocol rdr = paramSet rdr PARAM_TAGOP_PROTOCOL -- | Get parameter 'PARAM_TAGOP_PROTOCOL' (@\/reader\/tagop\/protocol@) paramGetTagopProtocol :: Reader -> IO TagProtocol paramGetTagopProtocol rdr = paramGet rdr PARAM_TAGOP_PROTOCOL -- | Get parameter 'PARAM_VERSION_HARDWARE' (@\/reader\/version\/hardware@) paramGetVersionHardware :: Reader -> IO Text paramGetVersionHardware rdr = paramGet rdr PARAM_VERSION_HARDWARE -- | Set parameter 'PARAM_VERSION_SERIAL' (@\/reader\/version\/serial@) paramSetVersionSerial :: Reader -> Text -> IO () paramSetVersionSerial rdr = paramSet rdr PARAM_VERSION_SERIAL -- | Get parameter 'PARAM_VERSION_SERIAL' (@\/reader\/version\/serial@) paramGetVersionSerial :: Reader -> IO Text paramGetVersionSerial rdr = paramGet rdr PARAM_VERSION_SERIAL -- | Get parameter 'PARAM_VERSION_MODEL' (@\/reader\/version\/model@) paramGetVersionModel :: Reader -> IO Text paramGetVersionModel rdr = paramGet rdr PARAM_VERSION_MODEL -- | Get parameter 'PARAM_VERSION_SOFTWARE' (@\/reader\/version\/software@) paramGetVersionSoftware :: Reader -> IO Text paramGetVersionSoftware rdr = paramGet rdr PARAM_VERSION_SOFTWARE -- | Get parameter 'PARAM_VERSION_SUPPORTEDPROTOCOLS' (@\/reader\/version\/supportedProtocols@) paramGetVersionSupportedProtocols :: Reader -> IO [TagProtocol] paramGetVersionSupportedProtocols rdr = paramGet rdr PARAM_VERSION_SUPPORTEDPROTOCOLS -- | Set parameter 'PARAM_REGION_HOPTABLE' (@\/reader\/region\/hopTable@) (kHz) paramSetRegionHopTable :: Reader -> [Word32] -> IO () paramSetRegionHopTable rdr = paramSet rdr PARAM_REGION_HOPTABLE -- | Get parameter 'PARAM_REGION_HOPTABLE' (@\/reader\/region\/hopTable@) (kHz) paramGetRegionHopTable :: Reader -> IO [Word32] paramGetRegionHopTable rdr = paramGet rdr PARAM_REGION_HOPTABLE -- | Set parameter 'PARAM_REGION_HOPTIME' (@\/reader\/region\/hopTime@) (milliseconds) paramSetRegionHopTime :: Reader -> Word32 -> IO () paramSetRegionHopTime rdr = paramSet rdr PARAM_REGION_HOPTIME -- | Get parameter 'PARAM_REGION_HOPTIME' (@\/reader\/region\/hopTime@) (milliseconds) paramGetRegionHopTime :: Reader -> IO Word32 paramGetRegionHopTime rdr = paramGet rdr PARAM_REGION_HOPTIME -- | Set parameter 'PARAM_REGION_ID' (@\/reader\/region\/id@) paramSetRegionId :: Reader -> Region -> IO () paramSetRegionId rdr = paramSet rdr PARAM_REGION_ID -- | Get parameter 'PARAM_REGION_ID' (@\/reader\/region\/id@) paramGetRegionId :: Reader -> IO Region paramGetRegionId rdr = paramGet rdr PARAM_REGION_ID -- | Get parameter 'PARAM_REGION_SUPPORTEDREGIONS' (@\/reader\/region\/supportedRegions@) paramGetRegionSupportedRegions :: Reader -> IO [Region] paramGetRegionSupportedRegions rdr = paramGet rdr PARAM_REGION_SUPPORTEDREGIONS -- | Set parameter 'PARAM_REGION_LBT_ENABLE' (@\/reader\/region\/lbt\/enable@) paramSetRegionLbtEnable :: Reader -> Bool -> IO () paramSetRegionLbtEnable rdr = paramSet rdr PARAM_REGION_LBT_ENABLE -- | Get parameter 'PARAM_REGION_LBT_ENABLE' (@\/reader\/region\/lbt\/enable@) paramGetRegionLbtEnable :: Reader -> IO Bool paramGetRegionLbtEnable rdr = paramGet rdr PARAM_REGION_LBT_ENABLE -- | Set parameter 'PARAM_LICENSE_KEY' (@\/reader\/licenseKey@) paramSetLicenseKey :: Reader -> [Word8] -> IO () paramSetLicenseKey rdr = paramSet rdr PARAM_LICENSE_KEY -- | Get parameter 'PARAM_LICENSE_KEY' (@\/reader\/licenseKey@) paramGetLicenseKey :: Reader -> IO [Word8] paramGetLicenseKey rdr = paramGet rdr PARAM_LICENSE_KEY -- | Set parameter 'PARAM_RADIO_ENABLESJC' (@\/reader\/radio\/enableSJC@) paramSetRadioEnableSJC :: Reader -> Bool -> IO () paramSetRadioEnableSJC rdr = paramSet rdr PARAM_RADIO_ENABLESJC -- | Get parameter 'PARAM_RADIO_ENABLESJC' (@\/reader\/radio\/enableSJC@) paramGetRadioEnableSJC :: Reader -> IO Bool paramGetRadioEnableSJC rdr = paramGet rdr PARAM_RADIO_ENABLESJC -- | Set parameter 'PARAM_EXTENDEDEPC' (@\/reader\/extendedEpc@) paramSetExtendedEpc :: Reader -> Bool -> IO () paramSetExtendedEpc rdr = paramSet rdr PARAM_EXTENDEDEPC -- | Get parameter 'PARAM_EXTENDEDEPC' (@\/reader\/extendedEpc@) paramGetExtendedEpc :: Reader -> IO Bool paramGetExtendedEpc rdr = paramGet rdr PARAM_EXTENDEDEPC -- | Get parameter 'PARAM_URI' (@\/reader\/uri@) paramGetUri :: Reader -> IO Text paramGetUri rdr = paramGet rdr PARAM_URI -- | Get parameter 'PARAM_PRODUCT_GROUP_ID' (@\/reader\/version\/productGroupID@) paramGetVersionProductGroupID :: Reader -> IO Word16 paramGetVersionProductGroupID rdr = paramGet rdr PARAM_PRODUCT_GROUP_ID -- | Get parameter 'PARAM_PRODUCT_GROUP' (@\/reader\/version\/productGroup@) paramGetVersionProductGroup :: Reader -> IO Text paramGetVersionProductGroup rdr = paramGet rdr PARAM_PRODUCT_GROUP -- | Get parameter 'PARAM_PRODUCT_ID' (@\/reader\/version\/productID@) paramGetVersionProductID :: Reader -> IO Word16 paramGetVersionProductID rdr = paramGet rdr PARAM_PRODUCT_ID -- | Get parameter 'PARAM_TAGREADATA_TAGOPSUCCESSCOUNT' (@\/reader\/tagReadData\/tagopSuccesses@) paramGetTagReadDataTagopSuccesses :: Reader -> IO Word16 paramGetTagReadDataTagopSuccesses rdr = paramGet rdr PARAM_TAGREADATA_TAGOPSUCCESSCOUNT -- | Get parameter 'PARAM_TAGREADATA_TAGOPFAILURECOUNT' (@\/reader\/tagReadData\/tagopFailures@) paramGetTagReadDataTagopFailures :: Reader -> IO Word16 paramGetTagReadDataTagopFailures rdr = paramGet rdr PARAM_TAGREADATA_TAGOPFAILURECOUNT -- | Set parameter 'PARAM_STATUS_ENABLE_ANTENNAREPORT' (@\/reader\/status\/antennaEnable@) paramSetStatusAntennaEnable :: Reader -> Bool -> IO () paramSetStatusAntennaEnable rdr = paramSet rdr PARAM_STATUS_ENABLE_ANTENNAREPORT -- | Get parameter 'PARAM_STATUS_ENABLE_ANTENNAREPORT' (@\/reader\/status\/antennaEnable@) paramGetStatusAntennaEnable :: Reader -> IO Bool paramGetStatusAntennaEnable rdr = paramGet rdr PARAM_STATUS_ENABLE_ANTENNAREPORT -- | Set parameter 'PARAM_STATUS_ENABLE_FREQUENCYREPORT' (@\/reader\/status\/frequencyEnable@) paramSetStatusFrequencyEnable :: Reader -> Bool -> IO () paramSetStatusFrequencyEnable rdr = paramSet rdr PARAM_STATUS_ENABLE_FREQUENCYREPORT -- | Get parameter 'PARAM_STATUS_ENABLE_FREQUENCYREPORT' (@\/reader\/status\/frequencyEnable@) paramGetStatusFrequencyEnable :: Reader -> IO Bool paramGetStatusFrequencyEnable rdr = paramGet rdr PARAM_STATUS_ENABLE_FREQUENCYREPORT -- | Set parameter 'PARAM_STATUS_ENABLE_TEMPERATUREREPORT' (@\/reader\/status\/temperatureEnable@) paramSetStatusTemperatureEnable :: Reader -> Bool -> IO () paramSetStatusTemperatureEnable rdr = paramSet rdr PARAM_STATUS_ENABLE_TEMPERATUREREPORT -- | Get parameter 'PARAM_STATUS_ENABLE_TEMPERATUREREPORT' (@\/reader\/status\/temperatureEnable@) paramGetStatusTemperatureEnable :: Reader -> IO Bool paramGetStatusTemperatureEnable rdr = paramGet rdr PARAM_STATUS_ENABLE_TEMPERATUREREPORT -- | Set parameter 'PARAM_TAGREADDATA_ENABLEREADFILTER' (@\/reader\/tagReadData\/enableReadFilter@) paramSetTagReadDataEnableReadFilter :: Reader -> Bool -> IO () paramSetTagReadDataEnableReadFilter rdr = paramSet rdr PARAM_TAGREADDATA_ENABLEREADFILTER -- | Get parameter 'PARAM_TAGREADDATA_ENABLEREADFILTER' (@\/reader\/tagReadData\/enableReadFilter@) paramGetTagReadDataEnableReadFilter :: Reader -> IO Bool paramGetTagReadDataEnableReadFilter rdr = paramGet rdr PARAM_TAGREADDATA_ENABLEREADFILTER -- | Set parameter 'PARAM_TAGREADDATA_READFILTERTIMEOUT' (@\/reader\/tagReadData\/readFilterTimeout@) paramSetTagReadDataReadFilterTimeout :: Reader -> Int32 -> IO () paramSetTagReadDataReadFilterTimeout rdr = paramSet rdr PARAM_TAGREADDATA_READFILTERTIMEOUT -- | Get parameter 'PARAM_TAGREADDATA_READFILTERTIMEOUT' (@\/reader\/tagReadData\/readFilterTimeout@) paramGetTagReadDataReadFilterTimeout :: Reader -> IO Int32 paramGetTagReadDataReadFilterTimeout rdr = paramGet rdr PARAM_TAGREADDATA_READFILTERTIMEOUT -- | Set parameter 'PARAM_TAGREADDATA_UNIQUEBYPROTOCOL' (@\/reader\/tagReadData\/uniqueByProtocol@) paramSetTagReadDataUniqueByProtocol :: Reader -> Bool -> IO () paramSetTagReadDataUniqueByProtocol rdr = paramSet rdr PARAM_TAGREADDATA_UNIQUEBYPROTOCOL -- | Get parameter 'PARAM_TAGREADDATA_UNIQUEBYPROTOCOL' (@\/reader\/tagReadData\/uniqueByProtocol@) paramGetTagReadDataUniqueByProtocol :: Reader -> IO Bool paramGetTagReadDataUniqueByProtocol rdr = paramGet rdr PARAM_TAGREADDATA_UNIQUEBYPROTOCOL -- | Set parameter 'PARAM_READER_DESCRIPTION' (@\/reader\/description@) paramSetDescription :: Reader -> Text -> IO () paramSetDescription rdr = paramSet rdr PARAM_READER_DESCRIPTION -- | Get parameter 'PARAM_READER_DESCRIPTION' (@\/reader\/description@) paramGetDescription :: Reader -> IO Text paramGetDescription rdr = paramGet rdr PARAM_READER_DESCRIPTION -- | Set parameter 'PARAM_READER_HOSTNAME' (@\/reader\/hostname@) paramSetHostname :: Reader -> Text -> IO () paramSetHostname rdr = paramSet rdr PARAM_READER_HOSTNAME -- | Get parameter 'PARAM_READER_HOSTNAME' (@\/reader\/hostname@) paramGetHostname :: Reader -> IO Text paramGetHostname rdr = paramGet rdr PARAM_READER_HOSTNAME -- | Set parameter 'PARAM_READER_WRITE_REPLY_TIMEOUT' (@\/reader\/gen2\/writeReplyTimeout@) (microseconds) paramSetGen2WriteReplyTimeout :: Reader -> Word16 -> IO () paramSetGen2WriteReplyTimeout rdr = paramSet rdr PARAM_READER_WRITE_REPLY_TIMEOUT -- | Get parameter 'PARAM_READER_WRITE_REPLY_TIMEOUT' (@\/reader\/gen2\/writeReplyTimeout@) (microseconds) paramGetGen2WriteReplyTimeout :: Reader -> IO Word16 paramGetGen2WriteReplyTimeout rdr = paramGet rdr PARAM_READER_WRITE_REPLY_TIMEOUT -- | Set parameter 'PARAM_READER_WRITE_EARLY_EXIT' (@\/reader\/gen2\/writeEarlyExit@) paramSetGen2WriteEarlyExit :: Reader -> Bool -> IO () paramSetGen2WriteEarlyExit rdr = paramSet rdr PARAM_READER_WRITE_EARLY_EXIT -- | Get parameter 'PARAM_READER_WRITE_EARLY_EXIT' (@\/reader\/gen2\/writeEarlyExit@) paramGetGen2WriteEarlyExit :: Reader -> IO Bool paramGetGen2WriteEarlyExit rdr = paramGet rdr PARAM_READER_WRITE_EARLY_EXIT -- | Set parameter 'PARAM_TRIGGER_READ_GPI' (@\/reader\/trigger\/read\/Gpi@) paramSetTriggerReadGpi :: Reader -> [PinNumber] -> IO () paramSetTriggerReadGpi rdr = paramSet rdr PARAM_TRIGGER_READ_GPI -- | Get parameter 'PARAM_TRIGGER_READ_GPI' (@\/reader\/trigger\/read\/Gpi@) paramGetTriggerReadGpi :: Reader -> IO [PinNumber] paramGetTriggerReadGpi rdr = paramGet rdr PARAM_TRIGGER_READ_GPI -- | Set parameter 'PARAM_METADATAFLAG' (@\/reader\/metadataflags@) paramSetMetadataflags :: Reader -> [MetadataFlag] -> IO () paramSetMetadataflags rdr = paramSet rdr PARAM_METADATAFLAG -- | Get parameter 'PARAM_METADATAFLAG' (@\/reader\/metadataflags@) paramGetMetadataflags :: Reader -> IO [MetadataFlag] paramGetMetadataflags rdr = paramGet rdr PARAM_METADATAFLAG -- | Set parameter 'PARAM_LICENSED_FEATURES' (@\/reader\/licensedFeatures@) paramSetLicensedFeatures :: Reader -> [Word8] -> IO () paramSetLicensedFeatures rdr = paramSet rdr PARAM_LICENSED_FEATURES -- | Get parameter 'PARAM_LICENSED_FEATURES' (@\/reader\/licensedFeatures@) paramGetLicensedFeatures :: Reader -> IO [Word8] paramGetLicensedFeatures rdr = paramGet rdr PARAM_LICENSED_FEATURES -- | Version of 'paramSet' which converts its argument from a -- string to the proper type using 'read'. paramSetString :: Reader -> Param -> Text -> IO () paramSetString rdr param txt = do let str = T.unpack txt case paramType param of ParamTypeBool -> paramSet rdr param (read str :: Bool) ParamTypeGEN2_WriteMode -> paramSet rdr param (read str :: GEN2_WriteMode) ParamTypeInt16 -> paramSet rdr param (read str :: Int16) ParamTypeInt32 -> paramSet rdr param (read str :: Int32) ParamTypeInt8 -> paramSet rdr param (read str :: Int8) ParamTypePowerMode -> paramSet rdr param (read str :: PowerMode) ParamTypeReadPlan -> paramSet rdr param (read str :: ReadPlan) ParamTypeRegion -> paramSet rdr param (read str :: Region) ParamTypeTagProtocol -> paramSet rdr param (read str :: TagProtocol) ParamTypeText -> paramSet rdr param (read str :: Text) ParamTypeWord16 -> paramSet rdr param (read str :: Word16) ParamTypeWord32 -> paramSet rdr param (read str :: Word32) ParamTypeWord8 -> paramSet rdr param (read str :: Word8) ParamTypeMetadataFlagList -> paramSet rdr param (read str :: [MetadataFlag]) ParamTypeRegionList -> paramSet rdr param (read str :: [Region]) ParamTypeTagProtocolList -> paramSet rdr param (read str :: [TagProtocol]) ParamTypeWord32List -> paramSet rdr param (read str :: [Word32]) ParamTypeWord8List -> paramSet rdr param (read str :: [Word8]) _ -> paramSet rdr param (undefined :: Bool) -- force ERROR_UNIMPLEMENTED_PARAM -- | Version of 'paramGet' which converts its result to a -- string using 'show'. paramGetString :: Reader -> Param -> IO Text paramGetString rdr param = T.pack <$> case paramType param of ParamTypeBool -> show <$> (paramGet rdr param :: IO Bool) ParamTypeGEN2_WriteMode -> show <$> (paramGet rdr param :: IO GEN2_WriteMode) ParamTypeInt16 -> show <$> (paramGet rdr param :: IO Int16) ParamTypeInt32 -> show <$> (paramGet rdr param :: IO Int32) ParamTypeInt8 -> show <$> (paramGet rdr param :: IO Int8) ParamTypePowerMode -> show <$> (paramGet rdr param :: IO PowerMode) ParamTypeReadPlan -> show <$> (paramGet rdr param :: IO ReadPlan) ParamTypeRegion -> show <$> (paramGet rdr param :: IO Region) ParamTypeTagProtocol -> show <$> (paramGet rdr param :: IO TagProtocol) ParamTypeText -> show <$> (paramGet rdr param :: IO Text) ParamTypeWord16 -> show <$> (paramGet rdr param :: IO Word16) ParamTypeWord32 -> show <$> (paramGet rdr param :: IO Word32) ParamTypeWord8 -> show <$> (paramGet rdr param :: IO Word8) ParamTypeMetadataFlagList -> show <$> (paramGet rdr param :: IO [MetadataFlag]) ParamTypeRegionList -> show <$> (paramGet rdr param :: IO [Region]) ParamTypeTagProtocolList -> show <$> (paramGet rdr param :: IO [TagProtocol]) ParamTypeWord32List -> show <$> (paramGet rdr param :: IO [Word32]) ParamTypeWord8List -> show <$> (paramGet rdr param :: IO [Word8]) _ -> show <$> (paramGet rdr param :: IO Bool) -- force ERROR_UNIMPLEMENTED_PARAM