#include <ltkcpp.h>
Inheritance diagram for LLRP::CTagReportData:
Internal Framework Functions | |
void | decodeFields (CDecoderStream *pDecoderStream) |
Virtual function provided by each specific element type to decode fields (simple values). Leaves pDecoderStream at first subparameter. | |
void | assimilateSubParameters (CErrorDetails *pError) |
Assimilates the decoded sub-parameters into m_listAllSubParameters. | |
void | encode (CEncoderStream *pEncoderStream) const |
Encode fields and subparameters. | |
CElement * | s_construct (void) |
void | s_decodeFields (CDecoderStream *pDecoderStream, CElement *pElement) |
const CFieldDescriptor *const | s_apFieldDescriptorTable [] |
const CTypeDescriptor | s_typeDescriptor |
Public Member Functions | |
CParameter * | getEPCParameter (void) |
Get accessor functions for the LLRP EPCParameter sub-parameter. | |
EResultCode | setEPCParameter (CParameter *pValue) |
Set accessor functions for the LLRP EPCParameter sub-parameter. | |
CROSpecID * | getROSpecID (void) |
Get accessor functions for the LLRP ROSpecID sub-parameter. | |
EResultCode | setROSpecID (CROSpecID *pValue) |
Set accessor functions for the LLRP ROSpecID sub-parameter. | |
CSpecIndex * | getSpecIndex (void) |
Get accessor functions for the LLRP SpecIndex sub-parameter. | |
EResultCode | setSpecIndex (CSpecIndex *pValue) |
Set accessor functions for the LLRP SpecIndex sub-parameter. | |
CInventoryParameterSpecID * | getInventoryParameterSpecID (void) |
Get accessor functions for the LLRP InventoryParameterSpecID sub-parameter. | |
EResultCode | setInventoryParameterSpecID (CInventoryParameterSpecID *pValue) |
Set accessor functions for the LLRP InventoryParameterSpecID sub-parameter. | |
CAntennaID * | getAntennaID (void) |
Get accessor functions for the LLRP AntennaID sub-parameter. | |
EResultCode | setAntennaID (CAntennaID *pValue) |
Set accessor functions for the LLRP AntennaID sub-parameter. | |
CPeakRSSI * | getPeakRSSI (void) |
Get accessor functions for the LLRP PeakRSSI sub-parameter. | |
EResultCode | setPeakRSSI (CPeakRSSI *pValue) |
Set accessor functions for the LLRP PeakRSSI sub-parameter. | |
CChannelIndex * | getChannelIndex (void) |
Get accessor functions for the LLRP ChannelIndex sub-parameter. | |
EResultCode | setChannelIndex (CChannelIndex *pValue) |
Set accessor functions for the LLRP ChannelIndex sub-parameter. | |
CFirstSeenTimestampUTC * | getFirstSeenTimestampUTC (void) |
Get accessor functions for the LLRP FirstSeenTimestampUTC sub-parameter. | |
EResultCode | setFirstSeenTimestampUTC (CFirstSeenTimestampUTC *pValue) |
Set accessor functions for the LLRP FirstSeenTimestampUTC sub-parameter. | |
CFirstSeenTimestampUptime * | getFirstSeenTimestampUptime (void) |
Get accessor functions for the LLRP FirstSeenTimestampUptime sub-parameter. | |
EResultCode | setFirstSeenTimestampUptime (CFirstSeenTimestampUptime *pValue) |
Set accessor functions for the LLRP FirstSeenTimestampUptime sub-parameter. | |
CLastSeenTimestampUTC * | getLastSeenTimestampUTC (void) |
Get accessor functions for the LLRP LastSeenTimestampUTC sub-parameter. | |
EResultCode | setLastSeenTimestampUTC (CLastSeenTimestampUTC *pValue) |
Set accessor functions for the LLRP LastSeenTimestampUTC sub-parameter. | |
CLastSeenTimestampUptime * | getLastSeenTimestampUptime (void) |
Get accessor functions for the LLRP LastSeenTimestampUptime sub-parameter. | |
EResultCode | setLastSeenTimestampUptime (CLastSeenTimestampUptime *pValue) |
Set accessor functions for the LLRP LastSeenTimestampUptime sub-parameter. | |
CTagSeenCount * | getTagSeenCount (void) |
Get accessor functions for the LLRP TagSeenCount sub-parameter. | |
EResultCode | setTagSeenCount (CTagSeenCount *pValue) |
Set accessor functions for the LLRP TagSeenCount sub-parameter. | |
std::list< CParameter * >::iterator | beginAirProtocolTagData (void) |
Returns the first element of the AirProtocolTagData sub-parameter list. | |
std::list< CParameter * >::iterator | endAirProtocolTagData (void) |
Returns the last element of the AirProtocolTagData sub-parameter list. | |
void | clearAirProtocolTagData (void) |
Clears the LLRP AirProtocolTagData sub-parameter list. | |
EResultCode | addAirProtocolTagData (CParameter *pValue) |
Add a AirProtocolTagData to the LLRP sub-parameter list. | |
CAccessSpecID * | getAccessSpecID (void) |
Get accessor functions for the LLRP AccessSpecID sub-parameter. | |
EResultCode | setAccessSpecID (CAccessSpecID *pValue) |
Set accessor functions for the LLRP AccessSpecID sub-parameter. | |
std::list< CParameter * >::iterator | beginAccessCommandOpSpecResult (void) |
Returns the first element of the AccessCommandOpSpecResult sub-parameter list. | |
std::list< CParameter * >::iterator | endAccessCommandOpSpecResult (void) |
Returns the last element of the AccessCommandOpSpecResult sub-parameter list. | |
void | clearAccessCommandOpSpecResult (void) |
Clears the LLRP AccessCommandOpSpecResult sub-parameter list. | |
EResultCode | addAccessCommandOpSpecResult (CParameter *pValue) |
Add a AccessCommandOpSpecResult to the LLRP sub-parameter list. | |
std::list< CParameter * >::iterator | beginCustom (void) |
Returns the first element of the Custom sub-parameter list. | |
std::list< CParameter * >::iterator | endCustom (void) |
Returns the last element of the Custom sub-parameter list. | |
void | clearCustom (void) |
Clears the LLRP Custom sub-parameter list. | |
EResultCode | addCustom (CParameter *pValue) |
Add a Custom to the LLRP sub-parameter list. | |
Protected Attributes | |
CParameter * | m_pEPCParameter |
CROSpecID * | m_pROSpecID |
CSpecIndex * | m_pSpecIndex |
CInventoryParameterSpecID * | m_pInventoryParameterSpecID |
CAntennaID * | m_pAntennaID |
CPeakRSSI * | m_pPeakRSSI |
CChannelIndex * | m_pChannelIndex |
CFirstSeenTimestampUTC * | m_pFirstSeenTimestampUTC |
CFirstSeenTimestampUptime * | m_pFirstSeenTimestampUptime |
CLastSeenTimestampUTC * | m_pLastSeenTimestampUTC |
CLastSeenTimestampUptime * | m_pLastSeenTimestampUptime |
CTagSeenCount * | m_pTagSeenCount |
std::list< CParameter * > | m_listAirProtocolTagData |
CAccessSpecID * | m_pAccessSpecID |
std::list< CParameter * > | m_listAccessCommandOpSpecResult |
std::list< CParameter * > | m_listCustom |
This report parameter is generated per tag per accumulation scope. The only mandatory portion of this parameter is the EPCData parameter. If there was an access operation performed on the tag, the results of the OpSpecs are mandatory in the report. The other sub-parameters in this report are optional. LLRP provides three ways to make the tag reporting efficient:
Allow parameters to be enabled or disabled via TagReportContentSelector (section 13.2.1.1) in TagReportSpec.
If an optional parameter is enabled, and is absent in the report, the Client SHALL assume that the value is identical to the last parameter of the same type received. For example, this allows the Readers to not send a parameter in the report whose value has not changed since the last time it was sent by the Reader.
Allow accumulation of tag reports. See next section for details of accumulation.
A Reader MAY accumulate multiple tag reports into a single tag report.. If a Reader accumulates, the Reader SHALL follow the accumulation rules specified in this section. The following specifies the rules for accumulating multiple tag observations into a single TagReportData:
EPCData:
The Reader SHALL not accumulate tag reports that do not have the same EPCData value.
OpSpecResultList:
The Reader SHALL not accumulate tag reports that do not have the same value for the OpSpec results in the OpSpecResultList.
SpecID, SpecIndex, InventoryParameterSpecID, AntennaID, AirProtocolTagData, AccessSpecID:
These fields are optional, and their reporting can be enabled by the Client. If the Client has enabled one or more fields listed above, the Reader SHALL not accumulate tag reports that do not have the same value for all the enabled fields.
FirstSeenTimestamp, LastSeenTimestamp, PeakRSSI, TagSeenCount, ChannelIndex
These fields are optional, and their reporting can be enabled by the Client. If the field is enabled, the Reader sets the value of these fields as follows:
FirstSeenTimestamp: The Reader SHALL set it to the time of the first observation amongst the tag reports that get accumulated in the TagReportData.
LastSeenTimestamp: The Reader SHALL set it to the time of the last observation amongst the tag reports that get accumulated in the TagReportData.
PeakRSSI: The Reader SHALL set it to the maximum RSSI value observed amongst the tag reports that get accumulated in the TagReportData.
ChannelIndex: The Reader MAY set it to the index of the first channel the tag was seen.
TagSeenCount: The Reader SHALL set it to the number of tag reports that get accumulated in the TagReportData.
Copyright 2006, 2007, EPCglobal Inc. The proprietary text of EPCglobal Inc. included here is in not a Contribution to the LLRP toolkit, under Apache License, Version 2.0. The right to use the proprietary text is limited to reproduction and display thereof within the work.
Definition at line 14835 of file ltkcpp.h.
|
Assimilates the decoded sub-parameters into m_listAllSubParameters. After fields are decoded, the CDecoder itself takes care of gathering the subparameters into m_listAllSubParameters. Once the end of the enclosing TLV (or message) is reached this assimilateSubParameters() function is called to create parameter refrences from the primary member variables.
Implements LLRP::CElement. |
|
Virtual function provided by each specific element type to decode fields (simple values). Leaves pDecoderStream at first subparameter.
Implements LLRP::CElement. |
|
Encode fields and subparameters.
Implements LLRP::CElement. |