mercury-api-0.1.0.2: Haskell binding to Mercury API for ThingMagic RFID readers

Copyright© Patrick Pelletier 2017
LicenseMIT
Maintainercode@funwithsoftware.org
PortabilityPOSIX, Windows
Safe HaskellNone
LanguageHaskell2010

System.Hardware.MercuryApi.Params

Contents

Description

Individual functions to get and set parameters. These are type-checked at compile time, unlike paramGet and paramSet, which are type-checked at runtime.

Synopsis

Type-safe getters and setters

/reader

paramGetBaudRate :: Reader -> IO Word32 Source #

Get parameter PARAM_BAUDRATE (/reader/baudRate)

paramSetBaudRate :: Reader -> Word32 -> IO () Source #

Set parameter PARAM_BAUDRATE (/reader/baudRate)

paramGetCommandTimeout :: Reader -> IO Word32 Source #

Get parameter PARAM_COMMANDTIMEOUT (/reader/commandTimeout) (milliseconds)

paramSetCommandTimeout :: Reader -> Word32 -> IO () Source #

Set parameter PARAM_COMMANDTIMEOUT (/reader/commandTimeout) (milliseconds)

paramGetDescription :: Reader -> IO Text Source #

Get parameter PARAM_READER_DESCRIPTION (/reader/description)

paramSetDescription :: Reader -> Text -> IO () Source #

Set parameter PARAM_READER_DESCRIPTION (/reader/description)

paramGetExtendedEpc :: Reader -> IO Bool Source #

Get parameter PARAM_EXTENDEDEPC (/reader/extendedEpc)

paramSetExtendedEpc :: Reader -> Bool -> IO () Source #

Set parameter PARAM_EXTENDEDEPC (/reader/extendedEpc)

paramGetHostname :: Reader -> IO Text Source #

Get parameter PARAM_READER_HOSTNAME (/reader/hostname)

paramSetHostname :: Reader -> Text -> IO () Source #

Set parameter PARAM_READER_HOSTNAME (/reader/hostname)

paramGetLicenseKey :: Reader -> IO [Word8] Source #

Get parameter PARAM_LICENSE_KEY (/reader/licenseKey)

paramSetLicenseKey :: Reader -> [Word8] -> IO () Source #

Set parameter PARAM_LICENSE_KEY (/reader/licenseKey)

paramGetLicensedFeatures :: Reader -> IO [Word8] Source #

Get parameter PARAM_LICENSED_FEATURES (/reader/licensedFeatures)

paramSetLicensedFeatures :: Reader -> [Word8] -> IO () Source #

Set parameter PARAM_LICENSED_FEATURES (/reader/licensedFeatures)

paramGetMetadataflags :: Reader -> IO [MetadataFlag] Source #

Get parameter PARAM_METADATAFLAG (/reader/metadataflags)

paramSetMetadataflags :: Reader -> [MetadataFlag] -> IO () Source #

Set parameter PARAM_METADATAFLAG (/reader/metadataflags)

paramGetPowerMode :: Reader -> IO PowerMode Source #

Get parameter PARAM_POWERMODE (/reader/powerMode)

paramSetPowerMode :: Reader -> PowerMode -> IO () Source #

Set parameter PARAM_POWERMODE (/reader/powerMode)

paramGetProbeBaudRates :: Reader -> IO [Word32] Source #

Get parameter PARAM_PROBEBAUDRATES (/reader/probeBaudRates)

paramSetProbeBaudRates :: Reader -> [Word32] -> IO () Source #

Set parameter PARAM_PROBEBAUDRATES (/reader/probeBaudRates)

paramGetTransportTimeout :: Reader -> IO Word32 Source #

Get parameter PARAM_TRANSPORTTIMEOUT (/reader/transportTimeout) (milliseconds)

paramSetTransportTimeout :: Reader -> Word32 -> IO () Source #

Set parameter PARAM_TRANSPORTTIMEOUT (/reader/transportTimeout) (milliseconds)

paramGetUri :: Reader -> IO Text Source #

Get parameter PARAM_URI (/reader/uri)

/reader/antenna

paramGetAntennaCheckPort :: Reader -> IO Bool Source #

Get parameter PARAM_ANTENNA_CHECKPORT (/reader/antenna/checkPort)

paramSetAntennaCheckPort :: Reader -> Bool -> IO () Source #

Set parameter PARAM_ANTENNA_CHECKPORT (/reader/antenna/checkPort)

paramGetAntennaConnectedPortList :: Reader -> IO [AntennaPort] Source #

Get parameter PARAM_ANTENNA_CONNECTEDPORTLIST (/reader/antenna/connectedPortList)

paramGetAntennaPortList :: Reader -> IO [AntennaPort] Source #

Get parameter PARAM_ANTENNA_PORTLIST (/reader/antenna/portList)

paramGetAntennaPortSwitchGpos :: Reader -> IO [PinNumber] Source #

Get parameter PARAM_ANTENNA_PORTSWITCHGPOS (/reader/antenna/portSwitchGpos)

paramSetAntennaPortSwitchGpos :: Reader -> [PinNumber] -> IO () Source #

Set parameter PARAM_ANTENNA_PORTSWITCHGPOS (/reader/antenna/portSwitchGpos)

/reader/gen2

paramGetGen2AccessPassword :: Reader -> IO GEN2_Password Source #

Get parameter PARAM_GEN2_ACCESSPASSWORD (/reader/gen2/accessPassword)

paramSetGen2AccessPassword :: Reader -> GEN2_Password -> IO () Source #

Set parameter PARAM_GEN2_ACCESSPASSWORD (/reader/gen2/accessPassword)

paramGetGen2WriteEarlyExit :: Reader -> IO Bool Source #

Get parameter PARAM_READER_WRITE_EARLY_EXIT (/reader/gen2/writeEarlyExit)

paramSetGen2WriteEarlyExit :: Reader -> Bool -> IO () Source #

Set parameter PARAM_READER_WRITE_EARLY_EXIT (/reader/gen2/writeEarlyExit)

paramGetGen2WriteMode :: Reader -> IO GEN2_WriteMode Source #

Get parameter PARAM_GEN2_WRITEMODE (/reader/gen2/writeMode)

paramSetGen2WriteMode :: Reader -> GEN2_WriteMode -> IO () Source #

Set parameter PARAM_GEN2_WRITEMODE (/reader/gen2/writeMode)

paramGetGen2WriteReplyTimeout :: Reader -> IO Word16 Source #

Get parameter PARAM_READER_WRITE_REPLY_TIMEOUT (/reader/gen2/writeReplyTimeout) (microseconds)

paramSetGen2WriteReplyTimeout :: Reader -> Word16 -> IO () Source #

Set parameter PARAM_READER_WRITE_REPLY_TIMEOUT (/reader/gen2/writeReplyTimeout) (microseconds)

/reader/gpio

paramGetGpioInputList :: Reader -> IO [PinNumber] Source #

Get parameter PARAM_GPIO_INPUTLIST (/reader/gpio/inputList)

paramSetGpioInputList :: Reader -> [PinNumber] -> IO () Source #

Set parameter PARAM_GPIO_INPUTLIST (/reader/gpio/inputList)

paramGetGpioOutputList :: Reader -> IO [PinNumber] Source #

Get parameter PARAM_GPIO_OUTPUTLIST (/reader/gpio/outputList)

paramSetGpioOutputList :: Reader -> [PinNumber] -> IO () Source #

Set parameter PARAM_GPIO_OUTPUTLIST (/reader/gpio/outputList)

/reader/radio

paramGetRadioEnablePowerSave :: Reader -> IO Bool Source #

Get parameter PARAM_RADIO_ENABLEPOWERSAVE (/reader/radio/enablePowerSave)

paramSetRadioEnablePowerSave :: Reader -> Bool -> IO () Source #

Set parameter PARAM_RADIO_ENABLEPOWERSAVE (/reader/radio/enablePowerSave)

paramGetRadioEnableSJC :: Reader -> IO Bool Source #

Get parameter PARAM_RADIO_ENABLESJC (/reader/radio/enableSJC)

paramSetRadioEnableSJC :: Reader -> Bool -> IO () Source #

Set parameter PARAM_RADIO_ENABLESJC (/reader/radio/enableSJC)

paramGetRadioPowerMax :: Reader -> IO Int16 Source #

Get parameter PARAM_RADIO_POWERMAX (/reader/radio/powerMax) (centi-dBm)

paramGetRadioPowerMin :: Reader -> IO Int16 Source #

Get parameter PARAM_RADIO_POWERMIN (/reader/radio/powerMin) (centi-dBm)

paramGetRadioReadPower :: Reader -> IO Int32 Source #

Get parameter PARAM_RADIO_READPOWER (/reader/radio/readPower) (centi-dBm)

paramSetRadioReadPower :: Reader -> Int32 -> IO () Source #

Set parameter PARAM_RADIO_READPOWER (/reader/radio/readPower) (centi-dBm)

paramGetRadioTemperature :: Reader -> IO Int8 Source #

Get parameter PARAM_RADIO_TEMPERATURE (/reader/radio/temperature) (degrees C)

paramGetRadioWritePower :: Reader -> IO Int32 Source #

Get parameter PARAM_RADIO_WRITEPOWER (/reader/radio/writePower) (centi-dBm)

paramSetRadioWritePower :: Reader -> Int32 -> IO () Source #

Set parameter PARAM_RADIO_WRITEPOWER (/reader/radio/writePower) (centi-dBm)

/reader/read

paramGetReadAsyncOffTime :: Reader -> IO Word32 Source #

Get parameter PARAM_READ_ASYNCOFFTIME (/reader/read/asyncOffTime) (milliseconds)

paramSetReadAsyncOffTime :: Reader -> Word32 -> IO () Source #

Set parameter PARAM_READ_ASYNCOFFTIME (/reader/read/asyncOffTime) (milliseconds)

paramGetReadAsyncOnTime :: Reader -> IO Word32 Source #

Get parameter PARAM_READ_ASYNCONTIME (/reader/read/asyncOnTime) (milliseconds)

paramSetReadAsyncOnTime :: Reader -> Word32 -> IO () Source #

Set parameter PARAM_READ_ASYNCONTIME (/reader/read/asyncOnTime) (milliseconds)

paramGetReadPlan :: Reader -> IO ReadPlan Source #

Get parameter PARAM_READ_PLAN (/reader/read/plan)

paramSetReadPlan :: Reader -> ReadPlan -> IO () Source #

Set parameter PARAM_READ_PLAN (/reader/read/plan)

/reader/region

paramGetRegionHopTable :: Reader -> IO [Word32] Source #

Get parameter PARAM_REGION_HOPTABLE (/reader/region/hopTable) (kHz)

paramSetRegionHopTable :: Reader -> [Word32] -> IO () Source #

Set parameter PARAM_REGION_HOPTABLE (/reader/region/hopTable) (kHz)

paramGetRegionHopTime :: Reader -> IO Word32 Source #

Get parameter PARAM_REGION_HOPTIME (/reader/region/hopTime) (milliseconds)

paramSetRegionHopTime :: Reader -> Word32 -> IO () Source #

Set parameter PARAM_REGION_HOPTIME (/reader/region/hopTime) (milliseconds)

paramGetRegionId :: Reader -> IO Region Source #

Get parameter PARAM_REGION_ID (/reader/region/id)

paramSetRegionId :: Reader -> Region -> IO () Source #

Set parameter PARAM_REGION_ID (/reader/region/id)

paramGetRegionSupportedRegions :: Reader -> IO [Region] Source #

Get parameter PARAM_REGION_SUPPORTEDREGIONS (/reader/region/supportedRegions)

/reader/region/lbt

paramGetRegionLbtEnable :: Reader -> IO Bool Source #

Get parameter PARAM_REGION_LBT_ENABLE (/reader/region/lbt/enable)

paramSetRegionLbtEnable :: Reader -> Bool -> IO () Source #

Set parameter PARAM_REGION_LBT_ENABLE (/reader/region/lbt/enable)

/reader/status

paramGetStatusAntennaEnable :: Reader -> IO Bool Source #

Get parameter PARAM_STATUS_ENABLE_ANTENNAREPORT (/reader/status/antennaEnable)

paramSetStatusAntennaEnable :: Reader -> Bool -> IO () Source #

Set parameter PARAM_STATUS_ENABLE_ANTENNAREPORT (/reader/status/antennaEnable)

paramGetStatusFrequencyEnable :: Reader -> IO Bool Source #

Get parameter PARAM_STATUS_ENABLE_FREQUENCYREPORT (/reader/status/frequencyEnable)

paramSetStatusFrequencyEnable :: Reader -> Bool -> IO () Source #

Set parameter PARAM_STATUS_ENABLE_FREQUENCYREPORT (/reader/status/frequencyEnable)

paramGetStatusTemperatureEnable :: Reader -> IO Bool Source #

Get parameter PARAM_STATUS_ENABLE_TEMPERATUREREPORT (/reader/status/temperatureEnable)

paramSetStatusTemperatureEnable :: Reader -> Bool -> IO () Source #

Set parameter PARAM_STATUS_ENABLE_TEMPERATUREREPORT (/reader/status/temperatureEnable)

/reader/tagReadData

paramGetTagReadDataEnableReadFilter :: Reader -> IO Bool Source #

Get parameter PARAM_TAGREADDATA_ENABLEREADFILTER (/reader/tagReadData/enableReadFilter)

paramSetTagReadDataEnableReadFilter :: Reader -> Bool -> IO () Source #

Set parameter PARAM_TAGREADDATA_ENABLEREADFILTER (/reader/tagReadData/enableReadFilter)

paramGetTagReadDataReadFilterTimeout :: Reader -> IO Int32 Source #

Get parameter PARAM_TAGREADDATA_READFILTERTIMEOUT (/reader/tagReadData/readFilterTimeout)

paramSetTagReadDataReadFilterTimeout :: Reader -> Int32 -> IO () Source #

Set parameter PARAM_TAGREADDATA_READFILTERTIMEOUT (/reader/tagReadData/readFilterTimeout)

paramGetTagReadDataRecordHighestRssi :: Reader -> IO Bool Source #

Get parameter PARAM_TAGREADDATA_RECORDHIGHESTRSSI (/reader/tagReadData/recordHighestRssi)

paramSetTagReadDataRecordHighestRssi :: Reader -> Bool -> IO () Source #

Set parameter PARAM_TAGREADDATA_RECORDHIGHESTRSSI (/reader/tagReadData/recordHighestRssi)

paramGetTagReadDataReportRssiInDbm :: Reader -> IO Bool Source #

Get parameter PARAM_TAGREADDATA_REPORTRSSIINDBM (/reader/tagReadData/reportRssiInDbm)

paramSetTagReadDataReportRssiInDbm :: Reader -> Bool -> IO () Source #

Set parameter PARAM_TAGREADDATA_REPORTRSSIINDBM (/reader/tagReadData/reportRssiInDbm)

paramGetTagReadDataTagopFailures :: Reader -> IO Word16 Source #

Get parameter PARAM_TAGREADATA_TAGOPFAILURECOUNT (/reader/tagReadData/tagopFailures)

paramGetTagReadDataTagopSuccesses :: Reader -> IO Word16 Source #

Get parameter PARAM_TAGREADATA_TAGOPSUCCESSCOUNT (/reader/tagReadData/tagopSuccesses)

paramGetTagReadDataUniqueByAntenna :: Reader -> IO Bool Source #

Get parameter PARAM_TAGREADDATA_UNIQUEBYANTENNA (/reader/tagReadData/uniqueByAntenna)

paramSetTagReadDataUniqueByAntenna :: Reader -> Bool -> IO () Source #

Set parameter PARAM_TAGREADDATA_UNIQUEBYANTENNA (/reader/tagReadData/uniqueByAntenna)

paramGetTagReadDataUniqueByData :: Reader -> IO Bool Source #

Get parameter PARAM_TAGREADDATA_UNIQUEBYDATA (/reader/tagReadData/uniqueByData)

paramSetTagReadDataUniqueByData :: Reader -> Bool -> IO () Source #

Set parameter PARAM_TAGREADDATA_UNIQUEBYDATA (/reader/tagReadData/uniqueByData)

paramGetTagReadDataUniqueByProtocol :: Reader -> IO Bool Source #

Get parameter PARAM_TAGREADDATA_UNIQUEBYPROTOCOL (/reader/tagReadData/uniqueByProtocol)

paramSetTagReadDataUniqueByProtocol :: Reader -> Bool -> IO () Source #

Set parameter PARAM_TAGREADDATA_UNIQUEBYPROTOCOL (/reader/tagReadData/uniqueByProtocol)

/reader/tagop

paramGetTagopAntenna :: Reader -> IO AntennaPort Source #

Get parameter PARAM_TAGOP_ANTENNA (/reader/tagop/antenna)

paramSetTagopAntenna :: Reader -> AntennaPort -> IO () Source #

Set parameter PARAM_TAGOP_ANTENNA (/reader/tagop/antenna)

paramGetTagopProtocol :: Reader -> IO TagProtocol Source #

Get parameter PARAM_TAGOP_PROTOCOL (/reader/tagop/protocol)

paramSetTagopProtocol :: Reader -> TagProtocol -> IO () Source #

Set parameter PARAM_TAGOP_PROTOCOL (/reader/tagop/protocol)

/reader/trigger/read

paramGetTriggerReadGpi :: Reader -> IO [PinNumber] Source #

Get parameter PARAM_TRIGGER_READ_GPI (/reader/trigger/read/Gpi)

paramSetTriggerReadGpi :: Reader -> [PinNumber] -> IO () Source #

Set parameter PARAM_TRIGGER_READ_GPI (/reader/trigger/read/Gpi)

/reader/version

paramGetVersionHardware :: Reader -> IO Text Source #

Get parameter PARAM_VERSION_HARDWARE (/reader/version/hardware)

paramGetVersionModel :: Reader -> IO Text Source #

Get parameter PARAM_VERSION_MODEL (/reader/version/model)

paramGetVersionProductGroup :: Reader -> IO Text Source #

Get parameter PARAM_PRODUCT_GROUP (/reader/version/productGroup)

paramGetVersionProductGroupID :: Reader -> IO Word16 Source #

Get parameter PARAM_PRODUCT_GROUP_ID (/reader/version/productGroupID)

paramGetVersionProductID :: Reader -> IO Word16 Source #

Get parameter PARAM_PRODUCT_ID (/reader/version/productID)

paramGetVersionSerial :: Reader -> IO Text Source #

Get parameter PARAM_VERSION_SERIAL (/reader/version/serial)

paramSetVersionSerial :: Reader -> Text -> IO () Source #

Set parameter PARAM_VERSION_SERIAL (/reader/version/serial)

paramGetVersionSoftware :: Reader -> IO Text Source #

Get parameter PARAM_VERSION_SOFTWARE (/reader/version/software)

paramGetVersionSupportedProtocols :: Reader -> IO [TagProtocol] Source #

Get parameter PARAM_VERSION_SUPPORTEDPROTOCOLS (/reader/version/supportedProtocols)

As strings

paramGetString :: Reader -> Param -> IO Text Source #

Version of paramGet which converts its result to a string using show.

paramSetString :: Reader -> Param -> Text -> IO () Source #

Version of paramSet which converts its argument from a string to the proper type using read.