Lines Matching defs:Record

19  * \brief NFC Ndef Record component file.
32 * \name \name NDEF Record Tools Header
67 * \param[in,out] NumberOfRawRecords Length of the Record pointer array. The caller has to provide
159 /* Check the First Record(MB = 0) for TNF = 0x06(Unchanged) */
170 /* First Record i.e., MB = 1, TNF != 0x05 and TypeLength = 0 */
191 /* For Each Record Check whether it contains the ME bit set and CF bit Set
356 /* For Each Record Check whether it contains the ME bit set
388 uint32_t phFriNfc_NdefRecord_GetLength(phFriNfc_NdefRecord_t *Record)
393 FlagCheck=phFriNfc_NdefRecord_NdefFlag(Record->Tnf,PH_FRINFC_NDEFRECORD_TNFBYTE_MASK);
407 RecordLength += Record->TypeLength;
411 FlagCheck=phFriNfc_NdefRecord_NdefFlag(Record->Flags,PH_FRINFC_NDEFRECORD_FLAGS_SR);
424 FlagCheck=phFriNfc_NdefRecord_NdefFlag(Record->Tnf,PH_FRINFC_NDEFRECORD_TNFBYTE_MASK);
427 RecordLength += Record->PayloadLength;
431 FlagCheck=phFriNfc_NdefRecord_NdefFlag(Record->Flags,PH_FRINFC_NDEFRECORD_FLAGS_IL);
434 RecordLength +=Record->IdLength;
446 * \param[out] Record The NDEF record structure. The storage for the structure has to be provided by the
463 NFCSTATUS phFriNfc_NdefRecord_Parse(phFriNfc_NdefRecord_t *Record,
475 if (Record == NULL || RawRecord == NULL)
485 Record->Flags = phFriNfc_NdefRecord_RecordFlag ( RawRecord);
491 Record->Tnf = Tnf;
500 Record->TypeLength = TypeLength;
501 Record->PayloadLength = PayloadLength;
502 Record->IdLength = IDLength;
504 Record->Type = RawRecord;
506 RawRecord = (RawRecord + Record->TypeLength);
508 if (Record->IdLength != 0)
510 Record->Id = RawRecord;
513 RawRecord = RawRecord + Record->IdLength;
514 Record->PayloadData = RawRecord;
532 * \param[in] Record The Array of NDEF record structures to append. The structures
535 * the \ref phFriNfc_NdefRecord_t "NDEF Record" structure.
548 NFCSTATUS phFriNfc_NdefRecord_Generate(phFriNfc_NdefRecord_t *Record,
559 if(Record==NULL ||Buffer==NULL||BytesWritten==NULL||MaxBufferSize == 0)
564 if (Record->Tnf == PH_FRINFC_NDEFRECORD_TNF_RESERVED)
570 i_data=phFriNfc_NdefRecord_GetLength(Record);
579 *Buffer = ( (Record->Flags & PH_FRINFC_NDEFRECORD_FLAG_MASK) | (Record->Tnf & PH_FRINFC_NDEFRECORD_TNFBYTE_MASK));
583 FlagCheck=phFriNfc_NdefRecord_NdefFlag(Record->Tnf,PH_FRINFC_NDEFRECORD_TNFBYTE_MASK);
597 FlagCheck=phFriNfc_NdefRecord_NdefFlag(Record->Tnf,PH_FRINFC_NDEFRECORD_TNFBYTE_MASK);
604 FlagCheck=phFriNfc_NdefRecord_NdefFlag(Record->Tnf,PH_FRINFC_NDEFRECORD_TNFBYTE_MASK);
613 *Buffer = Record->TypeLength;
619 FlagCheck=phFriNfc_NdefRecord_NdefFlag(Record->Flags,PH_FRINFC_NDEFRECORD_FLAGS_SR);
622 *Buffer = (uint8_t)(Record->PayloadLength & 0x000000ff);
628 *Buffer = (uint8_t)((Record->PayloadLength & 0xff000000) >> PHNFCSTSHL24);
630 *Buffer = (uint8_t)((Record->PayloadLength & 0x00ff0000) >> PHNFCSTSHL16);
632 *Buffer = (uint8_t)((Record->PayloadLength & 0x0000ff00) >> PHNFCSTSHL8);
634 *Buffer = (uint8_t)((Record->PayloadLength & 0x000000ff));
639 FlagCheck=phFriNfc_NdefRecord_NdefFlag(Record->Flags,PH_FRINFC_NDEFRECORD_FLAGS_IL);
642 *Buffer=Record->IdLength;
647 temp=Record->Type;
650 for(i=0;i<(Record->TypeLength);i++)
659 FlagCheck=phFriNfc_NdefRecord_NdefFlag(Record->Flags,PH_FRINFC_NDEFRECORD_FLAGS_IL);
660 temp=Record->Id;
663 for(i=0;i<(Record->IdLength);i++)
671 temp=Record->PayloadData;
673 FlagCheck=phFriNfc_NdefRecord_NdefFlag(Record->Flags,PH_FRINFC_NDEFRECORD_FLAGS_SR);
674 for(i_data=0;i_data < (Record->PayloadLength) ;i_data++)
685 static uint8_t phFriNfc_NdefRecord_RecordFlag ( uint8_t *Record)
689 if ((*Record & PH_FRINFC_NDEFRECORD_FLAGS_MB) == PH_FRINFC_NDEFRECORD_FLAGS_MB )
693 if ((*Record & PH_FRINFC_NDEFRECORD_FLAGS_ME) == PH_FRINFC_NDEFRECORD_FLAGS_ME )
697 if ((*Record & PH_FRINFC_NDEFRECORD_FLAGS_CF) == PH_FRINFC_NDEFRECORD_FLAGS_CF )
701 if ((*Record & PH_FRINFC_NDEFRECORD_FLAGS_SR) == PH_FRINFC_NDEFRECORD_FLAGS_SR )
705 if ((*Record & PH_FRINFC_NDEFRECORD_FLAGS_IL) == PH_FRINFC_NDEFRECORD_FLAGS_IL )
713 static uint8_t phFriNfc_NdefRecord_TypeNameFormat ( uint8_t *Record)
717 switch (*Record & PH_FRINFC_NDEFRECORD_TNFBYTE_MASK)
759 static NFCSTATUS phFriNfc_NdefRecord_RecordIDCheck ( uint8_t *Record,
770 if ((*Record & PH_FRINFC_NDEFRECORD_TNFBYTE_MASK) ==
780 if ((*Record & PH_FRINFC_NDEFRECORD_TNFBYTE_MASK)==
783 *TypeLength = *(Record + PH_FRINFC_NDEFRECORD_BUF_INC1);
785 if (*(Record + PH_FRINFC_NDEFRECORD_BUF_INC1) != 0)
795 /* Check for Short Record */
796 if ((*Record & PH_FRINFC_NDEFRECORD_FLAGS_SR) == PH_FRINFC_NDEFRECORD_FLAGS_SR)
798 /* For Short Record, Payload Length Byte is 1 */
801 *PayloadLength = *(Record + *TypeLengthByte + 1);
812 /* For Normal Record, Payload Length Byte is 4 */
814 *PayloadLength = ((((uint32_t)(*(Record + PH_FRINFC_NDEFRECORD_BUF_INC2))) << PHNFCSTSHL24) +
815 (((uint32_t)(*(Record + PH_FRINFC_NDEFRECORD_BUF_INC3))) << PHNFCSTSHL16) +
816 (((uint32_t)(*(Record + PH_FRINFC_NDEFRECORD_BUF_INC4))) << PHNFCSTSHL8) +
817 *(Record + PH_FRINFC_NDEFRECORD_BUF_INC5));
828 if ((*Record & PH_FRINFC_NDEFRECORD_FLAGS_IL) == PH_FRINFC_NDEFRECORD_FLAGS_IL)
833 *IDLength = (uint8_t)*(Record + *PayloadLengthByte + *TypeLengthByte + PH_FRINFC_NDEFRECORD_BUF_INC1);
850 if ((*Record & PH_FRINFC_NDEFRECORD_TNFBYTE_MASK)== PH_FRINFC_NDEFRECORD_TNF_UNKNOWN
851 || (*Record & PH_FRINFC_NDEFRECORD_TNFBYTE_MASK) ==
854 if (*(Record + PH_FRINFC_NDEFRECORD_BUF_INC1) != 0)
867 *TypeLength = *(Record + PH_FRINFC_NDEFRECORD_BUF_INC1);
871 /* Check for Short Record */
872 if ((*Record & PH_FRINFC_NDEFRECORD_FLAGS_SR) ==
875 /* For Short Record, Payload Length Byte is 1 */
878 *PayloadLength = *(Record + *TypeLengthByte + PH_FRINFC_NDEFRECORD_BUF_INC1);
882 /* For Normal Record, Payload Length Byte is 4 */
884 *PayloadLength = ((((uint32_t)(*(Record + PH_FRINFC_NDEFRECORD_BUF_INC2))) << PHNFCSTSHL24) +
885 (((uint32_t)(*(Record + PH_FRINFC_NDEFRECORD_BUF_INC3))) << PHNFCSTSHL16) +
886 (((uint32_t)(*(Record + PH_FRINFC_NDEFRECORD_BUF_INC4))) << PHNFCSTSHL8) +
887 *(Record + PH_FRINFC_NDEFRECORD_BUF_INC5));
891 if ((*Record & PH_FRINFC_NDEFRECORD_FLAGS_IL) ==
896 *IDLength = (uint8_t)*(Record + *PayloadLengthByte + *TypeLengthByte + PH_FRINFC_NDEFRECORD_BUF_INC1);