LTKCPP-- LLRP Toolkit C Plus Plus Library
Public Member Functions | Protected Attributes | List of all members
LLRP::CReaderEventNotificationData Class Reference

Class Definition CReaderEventNotificationData for LLRP parameter ReaderEventNotificationData. More...

#include <ltkcpp.h>

Inheritance diagram for LLRP::CReaderEventNotificationData:
LLRP::CParameter LLRP::CElement

Public Member Functions

CParametergetTimestamp (void)
 Get accessor functions for the LLRP Timestamp sub-parameter.
 
EResultCode setTimestamp (CParameter *pValue)
 Set accessor functions for the LLRP Timestamp sub-parameter.
 
CHoppingEventgetHoppingEvent (void)
 Get accessor functions for the LLRP HoppingEvent sub-parameter.
 
EResultCode setHoppingEvent (CHoppingEvent *pValue)
 Set accessor functions for the LLRP HoppingEvent sub-parameter.
 
CGPIEventgetGPIEvent (void)
 Get accessor functions for the LLRP GPIEvent sub-parameter.
 
EResultCode setGPIEvent (CGPIEvent *pValue)
 Set accessor functions for the LLRP GPIEvent sub-parameter.
 
CROSpecEventgetROSpecEvent (void)
 Get accessor functions for the LLRP ROSpecEvent sub-parameter.
 
EResultCode setROSpecEvent (CROSpecEvent *pValue)
 Set accessor functions for the LLRP ROSpecEvent sub-parameter.
 
CReportBufferLevelWarningEventgetReportBufferLevelWarningEvent (void)
 Get accessor functions for the LLRP ReportBufferLevelWarningEvent sub-parameter.
 
EResultCode setReportBufferLevelWarningEvent (CReportBufferLevelWarningEvent *pValue)
 Set accessor functions for the LLRP ReportBufferLevelWarningEvent sub-parameter.
 
CReportBufferOverflowErrorEventgetReportBufferOverflowErrorEvent (void)
 Get accessor functions for the LLRP ReportBufferOverflowErrorEvent sub-parameter.
 
EResultCode setReportBufferOverflowErrorEvent (CReportBufferOverflowErrorEvent *pValue)
 Set accessor functions for the LLRP ReportBufferOverflowErrorEvent sub-parameter.
 
CReaderExceptionEventgetReaderExceptionEvent (void)
 Get accessor functions for the LLRP ReaderExceptionEvent sub-parameter.
 
EResultCode setReaderExceptionEvent (CReaderExceptionEvent *pValue)
 Set accessor functions for the LLRP ReaderExceptionEvent sub-parameter.
 
CRFSurveyEventgetRFSurveyEvent (void)
 Get accessor functions for the LLRP RFSurveyEvent sub-parameter.
 
EResultCode setRFSurveyEvent (CRFSurveyEvent *pValue)
 Set accessor functions for the LLRP RFSurveyEvent sub-parameter.
 
CAISpecEventgetAISpecEvent (void)
 Get accessor functions for the LLRP AISpecEvent sub-parameter.
 
EResultCode setAISpecEvent (CAISpecEvent *pValue)
 Set accessor functions for the LLRP AISpecEvent sub-parameter.
 
CAntennaEventgetAntennaEvent (void)
 Get accessor functions for the LLRP AntennaEvent sub-parameter.
 
EResultCode setAntennaEvent (CAntennaEvent *pValue)
 Set accessor functions for the LLRP AntennaEvent sub-parameter.
 
CConnectionAttemptEventgetConnectionAttemptEvent (void)
 Get accessor functions for the LLRP ConnectionAttemptEvent sub-parameter.
 
EResultCode setConnectionAttemptEvent (CConnectionAttemptEvent *pValue)
 Set accessor functions for the LLRP ConnectionAttemptEvent sub-parameter.
 
CConnectionCloseEventgetConnectionCloseEvent (void)
 Get accessor functions for the LLRP ConnectionCloseEvent sub-parameter.
 
EResultCode setConnectionCloseEvent (CConnectionCloseEvent *pValue)
 Set accessor functions for the LLRP ConnectionCloseEvent sub-parameter.
 
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.
 
int countCustom (void)
 Count of the LLRP Custom sub-parameter list.
 
EResultCode addCustom (CParameter *pValue)
 Add a Custom to the LLRP sub-parameter list.
 
- Public Member Functions inherited from LLRP::CParameter
virtual llrp_bool_t isAllowedIn (const CTypeDescriptor *pEnclosingTypeDescriptor) const
 Validate whether the element is allowed as a base type in the enclosing element. More...
 
llrp_bool_t isAllowedExtension (const CTypeDescriptor *pEnclosingTypeDescriptor)
 Validate whether the element is allowed as an extension in the enclosing element. More...
 
- Public Member Functions inherited from LLRP::CElement
void addSubParameterToAllList (CParameter *pParameter)
 Add a subparameter to m_listAllSubParameters. Called by the accessor functions setXXX and addXXX. More...
 
void removeSubParameterFromAllList (CParameter *pParameter)
 Delete a subparameter from m_listAllSubParameters. Called by the accessor functions setXXX (to remove prior reference) clearXXX(). More...
 
void clearSubParameterList (tListOfParameters *pParameterList)
 Clear a list of subparameters. For each entry apply removeSubParameter(). More...
 
int walk (int(*pFunc)(const CElement *pElement, void *pArg), void *pArg, int iDepth, int nMaxDepth) const
 Recursive tree walk. The callback is invoked for each element.
 
EResultCode toXMLString (char *pBuffer, int nBuffer)
 A wrapper around LLRP::toXMLString() More...
 

Protected Attributes

CParameterm_pTimestamp
 
CHoppingEventm_pHoppingEvent
 
CGPIEventm_pGPIEvent
 
CROSpecEventm_pROSpecEvent
 
CReportBufferLevelWarningEventm_pReportBufferLevelWarningEvent
 
CReportBufferOverflowErrorEventm_pReportBufferOverflowErrorEvent
 
CReaderExceptionEventm_pReaderExceptionEvent
 
CRFSurveyEventm_pRFSurveyEvent
 
CAISpecEventm_pAISpecEvent
 
CAntennaEventm_pAntennaEvent
 
CConnectionAttemptEventm_pConnectionAttemptEvent
 
CConnectionCloseEventm_pConnectionCloseEvent
 
std::list< CParameter * > m_listCustom
 

Internal Framework Functions

static const CFieldDescriptor
*const 
s_apFieldDescriptorTable []
 
static const CTypeDescriptor s_typeDescriptor
 
void decodeFields (CDecoderStream *pDecoderStream)
 Virtual function provided by each specific element type to decode fields (simple values). Leaves pDecoderStream at first subparameter. More...
 
void assimilateSubParameters (CErrorDetails *pError)
 Assimilates the decoded sub-parameters into m_listAllSubParameters. More...
 
void encode (CEncoderStream *pEncoderStream) const
 Encode fields and subparameters. More...
 
static CElements_construct (void)
 
static void s_decodeFields (CDecoderStream *pDecoderStream, CElement *pElement)
 

Additional Inherited Members

- Public Attributes inherited from LLRP::CElement
const CTypeDescriptorm_pType
 The type descriptor desribing this element.
 
CElementm_pParent
 Element that encloses this one, NULL if this is top-level element.
 
tListOfParameters m_listAllSubParameters
 List of all sub elements.
 

Detailed Description

Class Definition CReaderEventNotificationData for LLRP parameter ReaderEventNotificationData.

Document Reference LLRP Specification Section 13.2.6

Document Reference LLRP Specification Section 16.2.7.6

<p>This parameter describes the contents of the event notification sent by the Reader, and defines the events that cause the notification to be sent. Event notification messages may be sent by the Reader due to connection establishment/closing event, critical events such as hopping, fault-detection in a Reader functional block, buffer overflow, due to the activation of a Reader accessory trigger input (e.g. motion detection), or due to performance monitoring events such as abnormalities in the RF environment.</p> 


<p>Timestamp is the time that the events reported occurred.</p> 


<p>LLRP assumes a reliable stream transport mechanism.  Messages sent through LLRP will arrive in the order that they were sent over the transport and binding utilized. Status events within the same message 

SHALL be ordered chronologically.

<p>Status events delivered by reader event notifications are useful, especially in conjunction with the tag report data.  The following describes the requirements of the reader event notifications ordering with respect to the ordering of tag reports and Reader Event Notifications.  </p> 


<p>The following requirements are made on the ordering of Event Parameters with respect to each other and to tag report Parameters.  These statements apply if the respective status events and report triggers are enabled. </p> 


<ul>

<li>
<p>If the start of an ROSpec is triggered by a GPI, the GPIEvent Parameter 

SHALL be sent before the ROSpecEvent Parameter signaling the start of the ROSpec.

<li>
<p>If the end of an ROSpec is triggered by a GPI, the GPIEvent Parameter 

SHALL be sent before the ROSpecEvent Parameter signaling the end of the ROSpec.

<li>
<p>If an ROSpec contains one or more AISpecs, the ROSpecEvent parameter signaling the end of an ROSpec 

SHALL be sent after the AISpecEvent Parameter signaling the end of the last AISpec within that ROSpec.

<li>
<p>If one ROSpec pre-empts another ROSpec, the ROSpecEvent parameter signaling the preemption of the first ROSpec 

SHALL be sent before the ROSpecEvent parameter signaling the start of the next ROSpec.

<li>
<p>Tag data received during an ROSpec execution 

SHALL be sent between the ROSpecEvent parameter signaling the start of the ROSpec and the ROSpecEvent parameter signaling the end or preemption of the ROSpec if the ROReportTrigger is not set to "None".

<li>
<p>Tag data received during an AISpec execution 

SHALL be sent before the AISpecEvent Parameter signaling the end of the AISpec if the ROReportTrigger is not "None" or "end of RO Spec"

<li>
<p>Tag data received during the time on a channel 

SHALL be sent after the HoppingEvent parameter that announced this channel and before the next HoppingEvent parameter when the ROReportTrigger is not "None" and N=1.

     </ul> 

 <SMALL><i>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.</i></SMALL> 

Definition at line 17017 of file ltkcpp.h.

Member Function Documentation

void LLRP::CReaderEventNotificationData::assimilateSubParameters ( CErrorDetails pError)
virtual

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.

Parameters
[out]pErrorError details for encoded stream

Implements LLRP::CElement.

void LLRP::CReaderEventNotificationData::decodeFields ( CDecoderStream pDecoderStream)
virtual

Virtual function provided by each specific element type to decode fields (simple values). Leaves pDecoderStream at first subparameter.

Parameters
[in]pDecoderStreamThe stream from which to decode fields
Returns
void

Implements LLRP::CElement.

void LLRP::CReaderEventNotificationData::encode ( CEncoderStream pEncoderStream) const
virtual

Encode fields and subparameters.

Parameters
[in]pEncoderStreamStream to encode
Returns
void

Implements LLRP::CElement.


The documentation for this class was generated from the following file: