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

Class Definition CImpinjMarginRead for LLRP parameter ImpinjMarginRead. More...

#include <impinj_ltkcpp.h>

Inheritance diagram for LLRP::CImpinjMarginRead:
LLRP::CParameter LLRP::CElement

Public Member Functions

llrp_u16_t getOpSpecID (void)
 Get accessor functions for the LLRP OpSpecID field.
 
void setOpSpecID (llrp_u16_t value)
 Set accessor functions for the LLRP OpSpecID field.
 
llrp_u32_t getAccessPassword (void)
 Get accessor functions for the LLRP AccessPassword field.
 
void setAccessPassword (llrp_u32_t value)
 Set accessor functions for the LLRP AccessPassword field.
 
llrp_u2_t getMB (void)
 Get accessor functions for the LLRP MB field.
 
void setMB (llrp_u2_t value)
 Set accessor functions for the LLRP MB field.
 
llrp_u16_t getBitPointer (void)
 Get accessor functions for the LLRP BitPointer field.
 
void setBitPointer (llrp_u16_t value)
 Set accessor functions for the LLRP BitPointer field.
 
llrp_u8_t getBitLength (void)
 Get accessor functions for the LLRP BitLength field.
 
void setBitLength (llrp_u8_t value)
 Set accessor functions for the LLRP BitLength field.
 
llrp_u16v_t getMask (void)
 Get accessor functions for the LLRP Mask field.
 
void setMask (llrp_u16v_t value)
 Set accessor functions for the LLRP Mask field.
 
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
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

llrp_u16_t m_OpSpecID
 
llrp_u32_t m_AccessPassword
 
llrp_u2_t m_MB
 
llrp_u16_t m_BitPointer
 
llrp_u8_t m_BitLength
 
llrp_u16v_t m_Mask
 
std::list< CParameter * > m_listCustom
 

Internal Framework Functions

static const CFieldDescriptor
*const 
s_apFieldDescriptorTable []
 
static const CTypeDescriptor s_typeDescriptor
 
static const CFieldDescriptor s_fdOpSpecID
 
static const CFieldDescriptor s_fdAccessPassword
 
static const CFieldDescriptor s_fdMB
 
static const CFieldDescriptor s_fdBitPointer
 
static const CFieldDescriptor s_fdBitLength
 
static const CFieldDescriptor s_fdMask
 
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...
 
llrp_bool_t isAllowedIn (const CTypeDescriptor *pEnclosingElementType) const
 Validate whether the element is allowed as a base type in the enclosing element. 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 CImpinjMarginRead for LLRP parameter ImpinjMarginRead.

<p>This custom parameter is an OpSpec that can confirm data integrity on Monza tag chips with Integra. This command allows a reader to explicitly verify that the non-volatile memory (NVM) in the tag chip is not weakly written, guaranteeing a minimum margin on NVM. It can be used for quality control to ensure data integrity and for failure analysis. The AccessPassword field is the password required to move the tag into the secured state if needed. Unlike most other Access commands, Margin Read can be performed at the individual bit level. The BitPointer and BitLength fields are for the starting bit address and number of bits to check, respectively.</p> 

  <SMALL><i>Copyright 2016 Impinj Inc.</i></SMALL> 

Definition at line 14800 of file impinj_ltkcpp.h.

Member Function Documentation

void LLRP::CImpinjMarginRead::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::CImpinjMarginRead::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::CImpinjMarginRead::encode ( CEncoderStream pEncoderStream) const
virtual

Encode fields and subparameters.

Parameters
[in]pEncoderStreamStream to encode
Returns
void

Implements LLRP::CElement.

llrp_bool_t LLRP::CImpinjMarginRead::isAllowedIn ( const CTypeDescriptor pEnclosingTypeDescriptor) const
virtual

Validate whether the element is allowed as a base type in the enclosing element.

Parameters
[in]pEnclosingTypeDescriptorA pointer to the enclosing type
Returns
TRUE if the element is allowed to be encoded within the EnclosingElement
FALSE if the element is not allowed to be encoded within the EnclosingElement

Reimplemented from LLRP::CParameter.


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