64 #define snprintf _snprintf 71 unsigned int m_PowerLevelIndex;
72 unsigned int m_hopTableID;
73 unsigned int m_channelIndex;
74 unsigned int m_modelNumber;
75 unsigned int m_messageID;
87 : m_Verbose(0), m_pConnectionToReader(NULL)
94 char * pReaderHostName);
97 checkConnectionStatus (
void);
100 enableImpinjExtensions (
void);
103 resetConfigurationToFactoryDefaults (
void);
106 getReaderCapabilities(
void);
109 getReaderConfig(
void);
112 setImpinjReaderConfig(
void);
127 awaitAndPrintReport (
int timeoutSec);
134 printOneTagReportData (
144 handleReaderEventNotification (
152 handleReaderExceptionEvent (
210 CMyApplication myApp;
211 char * pReaderHostName;
220 pReaderHostName = av[1];
246 pReaderHostName = av[2];
257 rc = myApp.run(pReaderHostName);
259 printf(
"INFO: Done\n");
292 printf(
"Usage: %s [-v[v]] READERHOSTNAME\n", pProgName);
294 printf(
"Each -v increases verbosity level\n");
297 printf(
"Usage: %s [/v[v]] READERHOSTNAME\n", pProgName);
299 printf(
"Each /v increases verbosity level\n");
347 CMyApplication::run (
348 char * pReaderHostName)
357 m_pTypeRegistry = getTheTypeRegistry();
358 if(NULL == m_pTypeRegistry)
360 printf(
"ERROR: getTheTypeRegistry failed\n");
377 pConn =
new CConnection(m_pTypeRegistry, 32u*1024u);
380 printf(
"ERROR: new CConnection failed\n");
389 printf(
"INFO: Connecting to %s....\n", pReaderHostName);
404 m_pConnectionToReader = pConn;
408 printf(
"INFO: Connected, checking status....\n");
417 if(0 == checkConnectionStatus())
420 if(0 == enableImpinjExtensions())
423 if(0 == resetConfigurationToFactoryDefaults())
426 if(0 == getReaderCapabilities())
429 if(0 == getReaderConfig())
432 if(0 == setImpinjReaderConfig())
438 if(0 == enableROSpec())
441 if(0 == startROSpec())
444 if(0 == awaitAndPrintReport(60))
447 if(0 == stopROSpec())
467 printf(
"INFO: Clean up reader configuration...\n");
469 resetConfigurationToFactoryDefaults();
475 printf(
"INFO: Finished\n");
487 delete m_pTypeRegistry;
492 CXMLTextDecoder::cleanupParser();
529 CMyApplication::checkConnectionStatus (
void)
540 pMessage = recvMessage(10000);
556 if(&CREADER_EVENT_NOTIFICATION::s_typeDescriptor != pMessage->
m_pType)
585 if(ConnectionAttemptStatusType_Success != pEvent->
getStatus())
597 printf(
"INFO: Connection status OK\n");
609 printf(
"ERROR: checkConnectionStatus failed\n");
632 CMyApplication::enableImpinjExtensions (
void)
642 pCmd->setMessageID(m_messageID++);
646 pRspMsg = transact(pCmd);
671 "enableImpinjExtensions"))
688 printf(
"INFO: Impinj Extensions are enabled\n");
718 CMyApplication::resetConfigurationToFactoryDefaults (
void)
728 pCmd->setMessageID(m_messageID++);
734 pRspMsg = transact(pCmd);
759 "resetConfigurationToFactoryDefaults"))
776 printf(
"INFO: Configuration reset to factory defaults\n");
803 CMyApplication::getReaderCapabilities(
void)
812 std::list<CTransmitPowerLevelTableEntry *>::iterator PwrLvl;
818 pCmd->setMessageID(m_messageID++);
824 pRspMsg = transact(pCmd);
849 "getReaderCapabilities"))
880 m_PowerLevelIndex = pPwrLvl->
getIndex();
884 printf(
"INFO: Reader Max Power index %u, power %f\n",
902 printf(
"INFO: Reader Model Name %u\n", m_modelNumber);
915 printf(
"INFO: Found LLRP Capabilities \n");
940 CMyApplication::getReaderConfig(
void)
945 std::list<CAntennaConfiguration*>::iterator pAntCfg;
950 pCmd->setMessageID(m_messageID++);
956 pRspMsg = transact(pCmd);
995 prfTx = (*pAntCfg)->getRFTransmitter();
1007 printf(
"INFO: Reader hopTableID %u, ChannelIndex %u\n",
1008 m_hopTableID, m_channelIndex);
1021 printf(
"INFO: Found LLRP Configuration \n");
1045 CMyApplication::setImpinjReaderConfig(
void)
1051 CXMLTextDecoder * pDecoder;
1052 std::list<CAntennaConfiguration *>::iterator Cur;
1056 pDecoder =
new CXMLTextDecoder(m_pTypeRegistry,
"setReaderConfig.xml");
1058 if(NULL == pDecoder)
1063 pCmdMsg = pDecoder->decodeMessage();
1072 if(&CSET_READER_CONFIG::s_typeDescriptor != pCmdMsg->
m_pType)
1082 pCmd->setMessageID(m_messageID++);
1100 (*Cur)->setRFTransmitter(pRfTx);
1114 pRspMsg = transact(pCmd);
1139 "setImpinjReaderConfig"))
1156 printf(
"INFO: Set Impinj Reader Configuration \n");
1214 CMyApplication::addROSpec (
void)
1219 ROSpecStartTriggerType_Null);
1231 AISpecStopTriggerType_Null);
1237 pInventoryParameterSpec->
setProtocolID(AirProtocols_EPCGlobalClass1Gen2);
1270 pCmd->setMessageID(m_messageID++);
1276 pRspMsg = transact(pCmd);
1301 if(0 != checkLLRPStatus(pRsp->
getLLRPStatus(),
"addROSpec"))
1318 printf(
"INFO: ROSpec added\n");
1346 CMyApplication::enableROSpec (
void)
1356 pCmd->setMessageID(m_messageID++);
1362 pRspMsg = transact(pCmd);
1386 if(0 != checkLLRPStatus(pRsp->
getLLRPStatus(),
"enableROSpec"))
1403 printf(
"INFO: ROSpec enabled\n");
1431 CMyApplication::startROSpec (
void)
1441 pCmd->setMessageID(m_messageID++);
1447 pRspMsg = transact(pCmd);
1471 if(0 != checkLLRPStatus(pRsp->
getLLRPStatus(),
"startROSpec"))
1488 printf(
"INFO: ROSpec started\n");
1515 CMyApplication::stopROSpec (
void)
1525 pCmd->setMessageID(m_messageID++);
1531 pRspMsg = transact(pCmd);
1555 if(0 != checkLLRPStatus(pRsp->
getLLRPStatus(),
"stopROSpec"))
1572 printf(
"INFO: ROSpec stopped\n");
1602 CMyApplication::awaitAndPrintReport (
int timeout)
1606 time_t startTime = time(NULL);
1622 pMessage = recvMessage(1000);
1625 tempTime = time(NULL);
1626 if(difftime(tempTime, startTime) > timeout)
1631 if(NULL == pMessage)
1646 if(&CRO_ACCESS_REPORT::s_typeDescriptor == pType)
1652 printTagReportData(pNtf);
1659 else if(&CREADER_EVENT_NOTIFICATION::s_typeDescriptor == pType)
1667 if(NULL != pNtfData)
1669 handleReaderEventNotification(pNtfData);
1677 printf(
"WARNING: READER_EVENT_NOTIFICATION without data\n");
1686 printf(
"WARNING: Ignored unexpected message during monitor: %s\n",
1715 CMyApplication::printTagReportData (
1718 std::list<CTagReportData *>::iterator Cur;
1719 std::list<CParameter *>::iterator CustCur;
1721 unsigned int nEntry = 0;
1736 printf(
"INFO: %u tag report entries\n", nEntry);
1747 printOneTagReportData(*Cur);
1760 CMyApplication::formatOneEPC (
1766 int bufsize = buflen;
1769 if(NULL != pEPCParameter)
1774 llrp_u8_t * pValue = NULL;
1777 pType = pEPCParameter->
m_pType;
1778 if(&CEPC_96::s_typeDescriptor == pType)
1782 pEPC_96 = (
CEPC_96 *) pEPCParameter;
1783 my_u96 = pEPC_96->
getEPC();
1787 else if(&CEPCData::s_typeDescriptor == pType)
1791 pEPCData = (
CEPCData *) pEPCParameter;
1792 my_u1v = pEPCData->
getEPC();
1794 n = (my_u1v.
m_nBit + 7u) / 8u;
1799 for(i = 0; i < n; i++)
1801 if(0 < i && i%2 == 0 && 1 < bufsize)
1808 written = snprintf(p, bufsize,
"%02X", pValue[i]);
1816 written = snprintf(p, bufsize,
"%s",
"---unknown-epc-data-type---");
1823 written = snprintf(p, bufsize,
"%s",
"--null epc---");
1829 buf[buflen-1] =
'\0';
1842 CMyApplication::printOneTagReportData (
1855 formatOneEPC(pEPCParameter, aBuf, 64);
1860 printf(
"EPC: %s\n", aBuf);
1878 CMyApplication::handleReaderEventNotification (
1886 if(NULL != pAntennaEvent)
1888 handleAntennaEvent(pAntennaEvent);
1893 if(NULL != pReaderExceptionEvent)
1895 handleReaderExceptionEvent(pReaderExceptionEvent);
1915 printf(
"NOTICE: Unexpected (unhandled) ReaderEvent\n");
1932 CMyApplication::handleAntennaEvent (
1935 EAntennaEventType eEventType;
1936 llrp_u16_t AntennaID;
1944 case AntennaEventType_Antenna_Disconnected:
1945 pStateStr =
"disconnected";
1948 case AntennaEventType_Antenna_Connected:
1949 pStateStr =
"connected";
1953 pStateStr =
"?unknown-event?";
1957 printf(
"NOTICE: Antenna %d is %s\n", AntennaID, pStateStr);
1974 CMyApplication::handleReaderExceptionEvent (
1979 Message = pReaderExceptionEvent->
getMessage();
1983 printf(
"NOTICE: ReaderException '%.*s'\n",
1988 printf(
"NOTICE: ReaderException but no message\n");
2012 CMyApplication::checkLLRPStatus (
2022 if(NULL == pLLRPStatus)
2024 printf(
"ERROR: %s missing LLRP status\n", pWhatStr);
2043 printf(
"ERROR: %s failed, no error description given\n",
2048 printf(
"ERROR: %s failed, %.*s\n",
2085 CMyApplication::transact (
2097 printf(
"\n===================================\n");
2098 printf(
"INFO: Transact sending\n");
2099 printXMLMessage(pSendMsg);
2107 pRspMsg = pConn->
transact(pSendMsg, 5000);
2113 printf(
"ERROR: %s transact failed, %s\n",
2119 printf(
"ERROR: ... reference type %s\n",
2125 printf(
"ERROR: ... reference field %s\n",
2138 printf(
"\n- - - - - - - - - - - - - - - - - -\n");
2139 printf(
"INFO: Transact received response\n");
2140 printXMLMessage(pRspMsg);
2148 if(&CERROR_MESSAGE::s_typeDescriptor == pRspMsg->
m_pType)
2154 printf(
"ERROR: Received ERROR_MESSAGE instead of %s\n",
2189 CMyApplication::recvMessage (
2204 if(NULL == pMessage)
2211 printf(
"ERROR: recvMessage failed, %s\n",
2217 printf(
"ERROR: ... reference type %s\n",
2223 printf(
"ERROR: ... reference field %s\n",
2236 printf(
"\n===================================\n");
2237 printf(
"INFO: Message received\n");
2238 printXMLMessage(pMessage);
2263 CMyApplication::sendMessage (
2274 printf(
"\n===================================\n");
2275 printf(
"INFO: Sending\n");
2276 printXMLMessage(pSendMsg);
2288 printf(
"ERROR: %s sendMessage failed, %s\n",
2294 printf(
"ERROR: ... reference type %s\n",
2300 printf(
"ERROR: ... reference field %s\n",
2328 CMyApplication::printXMLMessage (
2331 char aBuf[100*1024];
llrp_utf8v_t getMessage(void)
Get accessor functions for the LLRP Message field.
void setRequestedData(EGetReaderConfigRequestedData value)
Set accessor functions for the LLRP RequestedData field.
void setROSpecID(llrp_u32_t value)
Set accessor functions for the LLRP ROSpecID field.
Class Definition CConnectionAttemptEvent for LLRP parameter ConnectionAttemptEvent.
char * m_pName
String name of field (e.g. "ROSpecID")
const CTypeDescriptor * m_pType
The type descriptor desribing this element.
std::list< CAntennaConfiguration * >::iterator beginAntennaConfiguration(void)
Returns the first element of the AntennaConfiguration sub-parameter list.
Class Definition CEPC_96 for LLRP parameter EPC_96.
CLLRPStatus * getLLRPStatus(void)
Get accessor functions for the LLRP LLRPStatus sub-parameter.
llrp_u8_t * m_pValue
Pointer to the first array element.
std::list< CTransmitPowerLevelTableEntry * >::iterator endTransmitPowerLevelTableEntry(void)
Returns the last element of the TransmitPowerLevelTableEntry sub-parameter list.
Class for LLRP basic type u16v (List of unsigned 16-bit values)
Class Definition CIMPINJ_ENABLE_EXTENSIONS_RESPONSE for LLRP message IMPINJ_ENABLE_EXTENSIONS_RESPONS...
Class Definition CTransmitPowerLevelTableEntry for LLRP parameter TransmitPowerLevelTableEntry.
std::list< CAntennaConfiguration * >::iterator endAntennaConfiguration(void)
Returns the last element of the AntennaConfiguration sub-parameter list.
void setDurationTrigger(llrp_u32_t value)
Set accessor functions for the LLRP DurationTrigger field.
Class Definition CSTART_ROSPEC_RESPONSE for LLRP message START_ROSPEC_RESPONSE.
void usage(char *pProgName)
Print usage message and exit.
Class Definition CRFTransmitter for LLRP parameter RFTransmitter.
const CFieldDescriptor * m_pRefField
If non-NULL this is the field descriptors for the errored field.
void setDurationTriggerValue(llrp_u32_t value)
Set accessor functions for the LLRP DurationTriggerValue field.
Class Definition CENABLE_ROSPEC for LLRP message ENABLE_ROSPEC.
const CTypeDescriptor * m_pRefType
If non-NULL this is the type descriptors for the errored type.
Class Definition CRegulatoryCapabilities for LLRP parameter RegulatoryCapabilities.
CParameter * getEPCParameter(void)
Get accessor functions for the LLRP EPCParameter sub-parameter.
EResultCode m_eResultCode
Result code from operation.
Class for LLRP basic type u96 (96-bit value)
Class Definition CAntennaEvent for LLRP parameter AntennaEvent.
Class Definition CSTOP_ROSPEC_RESPONSE for LLRP message STOP_ROSPEC_RESPONSE.
void setAISpecStopTriggerType(EAISpecStopTriggerType value)
Set accessor functions for the LLRP AISpecStopTriggerType field.
CLLRPStatus * getLLRPStatus(void)
Get accessor functions for the LLRP LLRPStatus sub-parameter.
void enrollImpinjTypesIntoRegistry(CTypeRegistry *pTypeRegistry)
Enrolls the types for Impinj into the LTKCPP registry.
llrp_u96_t getEPC(void)
Get accessor functions for the LLRP EPC field.
const char * m_pWhatStr
Descriptive printable error string.
EResultCode toXMLString(char *pBuffer, int nBuffer)
A wrapper around LLRP::toXMLString()
Class Definition CGeneralDeviceCapabilities for LLRP parameter GeneralDeviceCapabilities.
void setROSpecID(llrp_u32_t value)
Set accessor functions for the LLRP ROSpecID field.
llrp_u16_t getChannelIndex(void)
Get accessor functions for the LLRP ChannelIndex field.
EStatusCode getStatusCode(void)
Get accessor functions for the LLRP StatusCode field.
void setRequestedData(EGetReaderCapabilitiesRequestedData value)
Set accessor functions for the LLRP RequestedData field.
Class Definition CGET_READER_CONFIG for LLRP message GET_READER_CONFIG.
llrp_u16_t m_nValue
The number of arrray elements.
int closeConnectionToReader(void)
Close connection to reader, allow reuse of instance.
CGeneralDeviceCapabilities * getGeneralDeviceCapabilities(void)
Get accessor functions for the LLRP GeneralDeviceCapabilities sub-parameter.
Class Definition CROSpecStartTrigger for LLRP parameter ROSpecStartTrigger.
llrp_s16_t getTransmitPowerValue(void)
Get accessor functions for the LLRP TransmitPowerValue field.
EAntennaEventType getEventType(void)
Get accessor functions for the LLRP EventType field.
A collection of pointers to CTypeDescriptors.
CAntennaEvent * getAntennaEvent(void)
Get accessor functions for the LLRP AntennaEvent sub-parameter.
llrp_u32_t getDeviceManufacturerName(void)
Get accessor functions for the LLRP DeviceManufacturerName field.
const CErrorDetails * getTransactError(void)
Get the details that explains transact() error.
std::list< CAntennaConfiguration * >::iterator endAntennaConfiguration(void)
Returns the last element of the AntennaConfiguration sub-parameter list.
EResultCode setROBoundarySpec(CROBoundarySpec *pValue)
Set accessor functions for the LLRP ROBoundarySpec sub-parameter.
Class Definition CRO_ACCESS_REPORT for LLRP message RO_ACCESS_REPORT.
Class Definition CAISpec for LLRP parameter AISpec.
void setHopTableID(llrp_u16_t value)
Set accessor functions for the LLRP HopTableID field.
Class Definition CROSpec for LLRP parameter ROSpec.
void setChannelIndex(llrp_u16_t value)
Set accessor functions for the LLRP ChannelIndex field.
void setROSpecID(llrp_u32_t value)
Set accessor functions for the LLRP ROSpecID field.
CUHFBandCapabilities * getUHFBandCapabilities(void)
Get accessor functions for the LLRP UHFBandCapabilities sub-parameter.
Class Definition CInventoryParameterSpec for LLRP parameter InventoryParameterSpec.
Class Definition CSET_READER_CONFIG_RESPONSE for LLRP message SET_READER_CONFIG_RESPONSE.
CLLRPStatus * getLLRPStatus(void)
Get accessor functions for the LLRP LLRPStatus sub-parameter.
CReaderExceptionEvent * getReaderExceptionEvent(void)
Get accessor functions for the LLRP ReaderExceptionEvent sub-parameter.
Class Definition CReaderExceptionEvent for LLRP parameter ReaderExceptionEvent.
Class Definition CLLRPStatus for LLRP parameter LLRPStatus.
CLLRPStatus * getLLRPStatus(void)
Get accessor functions for the LLRP LLRPStatus sub-parameter.
EResultCode addSpecParameter(CParameter *pValue)
Add a SpecParameter to the LLRP sub-parameter list.
Class Definition CEPCData for LLRP parameter EPCData.
Class Definition CREADER_EVENT_NOTIFICATION for LLRP message READER_EVENT_NOTIFICATION.
CMessage * recvMessage(int nMaxMS)
Receive a message from a connection.
std::list< CTagReportData * >::iterator beginTagReportData(void)
Returns the first element of the TagReportData sub-parameter list.
Class Definition CUHFBandCapabilities for LLRP parameter UHFBandCapabilities.
EResultCode setAISpecStopTrigger(CAISpecStopTrigger *pValue)
Set accessor functions for the LLRP AISpecStopTrigger sub-parameter.
File that includes all Impinj Custom extension classes and types.
void setROSpecStartTriggerType(EROSpecStartTriggerType value)
Set accessor functions for the LLRP ROSpecStartTriggerType field.
llrp_u1v_t getEPC(void)
Get accessor functions for the LLRP EPC field.
Class Definition CSET_READER_CONFIG for LLRP message SET_READER_CONFIG.
CMessage * transact(CMessage *pSendMessage, int nMaxMS)
Transact a LLRP request and response to a connection.
CLLRPStatus * getLLRPStatus(void)
Get accessor functions for the LLRP LLRPStatus sub-parameter.
const CErrorDetails * getRecvError(void)
Get the details that explains recvMessage() or recvResponse() error.
Class for LLRP basic type utf8v (vector of utf-8 encoded characters)
llrp_u16_t m_nBit
The number of arrray elements.
CLLRPStatus * getLLRPStatus(void)
Get accessor functions for the LLRP LLRPStatus sub-parameter.
Class for LLRP basic type u1v (vector of unsigned 1-bit values)
void setAntennaIDs(llrp_u16v_t value)
Set accessor functions for the LLRP AntennaIDs field.
int openConnectionToReader(const char *pReaderHostName)
Open a connection to the reader over an unencrypted socket.
Class Definition CENABLE_ROSPEC_RESPONSE for LLRP message ENABLE_ROSPEC_RESPONSE. ...
Class Definition CGET_READER_CAPABILITIES for LLRP message GET_READER_CAPABILITIES.
const CTypeDescriptor * m_pResponseType
For messages (bIsMessage==TRUE), this is the type descriptor for the corresponding response...
llrp_u32_t getModelName(void)
Get accessor functions for the LLRP ModelName field.
llrp_u16_t getIndex(void)
Get accessor functions for the LLRP Index field.
void setProtocolID(EAirProtocols value)
Set accessor functions for the LLRP ProtocolID field.
int main(int ac, char *av[])
Command main routine.
EResultCode sendMessage(CMessage *pMessage)
Send a LLRP message to a connection.
std::list< CTagReportData * >::iterator endTagReportData(void)
Returns the last element of the TagReportData sub-parameter list.
Class to return error details in LTKCPP operations.
void setTransmitPower(llrp_u16_t value)
Set accessor functions for the LLRP TransmitPower field.
Class Definition CTagReportData for LLRP parameter TagReportData.
char * m_pName
String name of parameter/message type (e.g. "ROSpec")
EResultCode setROSpec(CROSpec *pValue)
Set accessor functions for the LLRP ROSpec sub-parameter.
llrp_u16_t getAntennaID(void)
Get accessor functions for the LLRP AntennaID field.
File that includes all LLRP classes and types.
Class Definition CADD_ROSPEC for LLRP message ADD_ROSPEC.
Class Definition CSTART_ROSPEC for LLRP message START_ROSPEC.
void setROSpecStopTriggerType(EROSpecStopTriggerType value)
Set accessor functions for the LLRP ROSpecStopTriggerType field.
Class Definition CIMPINJ_ENABLE_EXTENSIONS for LLRP message IMPINJ_ENABLE_EXTENSIONS.
EResultCode setROSpecStopTrigger(CROSpecStopTrigger *pValue)
Set accessor functions for the LLRP ROSpecStopTrigger sub-parameter.
Class Definition CROSpecStopTrigger for LLRP parameter ROSpecStopTrigger.
void setInventoryParameterSpecID(llrp_u16_t value)
Set accessor functions for the LLRP InventoryParameterSpecID field.
llrp_u16_t * m_pValue
Pointer to the first array element.
CLLRPStatus * getLLRPStatus(void)
Get accessor functions for the LLRP LLRPStatus sub-parameter.
llrp_u8_t m_aValue[12]
Simple array of basic type llrp_u8_t.
Base Class for All LLRP LTK Parameters.
Base Class for All LLRP LTK Messages.
CLLRPStatus * getLLRPStatus(void)
Get accessor functions for the LLRP LLRPStatus sub-parameter.
Class Definition CADD_ROSPEC_RESPONSE for LLRP message ADD_ROSPEC_RESPONSE.
Class Definition CAISpecStopTrigger for LLRP parameter AISpecStopTrigger.
const char * getConnectError(void)
Get the string that explains openReaderConnection() error.
void setROSpecID(llrp_u32_t value)
Set accessor functions for the LLRP ROSpecID field.
CReaderEventNotificationData * getReaderEventNotificationData(void)
Get accessor functions for the LLRP ReaderEventNotificationData sub-parameter.
void setResetToFactoryDefault(llrp_u1_t value)
Set accessor functions for the LLRP ResetToFactoryDefault field.
llrp_u16_t getHopTableID(void)
Get accessor functions for the LLRP HopTableID field.
EResultCode setROSpecStartTrigger(CROSpecStartTrigger *pValue)
Set accessor functions for the LLRP ROSpecStartTrigger sub-parameter.
Class Definition CGET_READER_CONFIG_RESPONSE for LLRP message GET_READER_CONFIG_RESPONSE.
CRegulatoryCapabilities * getRegulatoryCapabilities(void)
Get accessor functions for the LLRP RegulatoryCapabilities sub-parameter.
std::list< CAntennaConfiguration * >::iterator beginAntennaConfiguration(void)
Returns the first element of the AntennaConfiguration sub-parameter list.
Class Definition CGET_READER_CAPABILITIES_RESPONSE for LLRP message GET_READER_CAPABILITIES_RESPONSE...
llrp_utf8v_t getErrorDescription(void)
Get accessor functions for the LLRP ErrorDescription field.
Class Definition CSTOP_ROSPEC for LLRP message STOP_ROSPEC.
void setCurrentState(EROSpecState value)
Set accessor functions for the LLRP CurrentState field.
llrp_utf8_t * m_pValue
Pointer to the first array element.
EResultCode addInventoryParameterSpec(CInventoryParameterSpec *pValue)
Add a InventoryParameterSpec to the LLRP sub-parameter list.
void setPriority(llrp_u8_t value)
Set accessor functions for the LLRP Priority field.
Class Definition CROBoundarySpec for LLRP parameter ROBoundarySpec.
CConnectionAttemptEvent * getConnectionAttemptEvent(void)
Get accessor functions for the LLRP ConnectionAttemptEvent sub-parameter.
Describes a message or parameter type.
const CErrorDetails * getSendError(void)
Get the details that explains sendMessage() error.
EConnectionAttemptStatusType getStatus(void)
Get accessor functions for the LLRP Status field.
Class Definition CReaderEventNotificationData for LLRP parameter ReaderEventNotificationData.