Utility library to read and write Ndef messages from/to a Type4 NFC tag

Dependents:   NFC M2M_2016_STM32 MyongjiElec_capstone1 IDW01M1_Cloud_IBM ... more

Fork of NDefLib by ST Expansion SW Team

NDEF NFC library

This library provides an abstract API to create NDEF formatted messages and records and to read/write them from/to a Type4 NFC Tag.

Implementations

At the moment, the NDEF API is implemented by X_NUCLEO_NFC01A1 and X_NUCLEO_NFC02A1 Dynamic NFC Tag libraries respectively driving the X-NUCLEO-NFC01A1 and X-NUCLEO-NFC02A1 boards.

Committer:
giovannivisentini
Date:
Tue Dec 01 08:30:27 2015 +0000
Revision:
4:eaf6c49a86e4
Parent:
0:04b82ae7aa43
Child:
6:739e3211749d
add the possibility to change the record content + add doc

Who changed what in which revision?

UserRevisionLine numberNew contents of line
giovannivisentini 0:04b82ae7aa43 1 /*
giovannivisentini 0:04b82ae7aa43 2 * EmptyRecord.h
giovannivisentini 0:04b82ae7aa43 3 *
giovannivisentini 0:04b82ae7aa43 4 * Created on: Nov 6, 2015
giovannivisentini 0:04b82ae7aa43 5 * Author: giovanni visentini
giovannivisentini 0:04b82ae7aa43 6 */
giovannivisentini 0:04b82ae7aa43 7
giovannivisentini 0:04b82ae7aa43 8 #ifndef NDEFLIB_RECORDTYPE_EMPTYRECORD_H_
giovannivisentini 0:04b82ae7aa43 9 #define NDEFLIB_RECORDTYPE_EMPTYRECORD_H_
giovannivisentini 0:04b82ae7aa43 10
giovannivisentini 0:04b82ae7aa43 11 #include "NDefLib/Record.h"
giovannivisentini 0:04b82ae7aa43 12
giovannivisentini 0:04b82ae7aa43 13 namespace NDefLib {
giovannivisentini 0:04b82ae7aa43 14
giovannivisentini 4:eaf6c49a86e4 15 /**
giovannivisentini 4:eaf6c49a86e4 16 * Define an empty record
giovannivisentini 4:eaf6c49a86e4 17 */
giovannivisentini 0:04b82ae7aa43 18 class EmptyRecord: public Record {
giovannivisentini 0:04b82ae7aa43 19 public:
giovannivisentini 4:eaf6c49a86e4 20
giovannivisentini 4:eaf6c49a86e4 21 EmptyRecord() {
giovannivisentini 4:eaf6c49a86e4 22 };
giovannivisentini 0:04b82ae7aa43 23
giovannivisentini 4:eaf6c49a86e4 24 /**
giovannivisentini 4:eaf6c49a86e4 25 * empty record size is 3
giovannivisentini 4:eaf6c49a86e4 26 * @return 3
giovannivisentini 4:eaf6c49a86e4 27 */
giovannivisentini 4:eaf6c49a86e4 28 virtual uint16_t getByteLength() {
giovannivisentini 4:eaf6c49a86e4 29 return 3;
giovannivisentini 4:eaf6c49a86e4 30 }
giovannivisentini 0:04b82ae7aa43 31
giovannivisentini 4:eaf6c49a86e4 32 /**
giovannivisentini 4:eaf6c49a86e4 33 * write the 3 byte used for define an empty record
giovannivisentini 4:eaf6c49a86e4 34 * @param[out] buffer buffer where write the record
giovannivisentini 4:eaf6c49a86e4 35 * @return number of write bytes
giovannivisentini 4:eaf6c49a86e4 36 */
giovannivisentini 4:eaf6c49a86e4 37 virtual uint16_t write(uint8_t *buffer) {
giovannivisentini 4:eaf6c49a86e4 38 buffer[0] = 0x0D;
giovannivisentini 4:eaf6c49a86e4 39 buffer[1] = 0x00;
giovannivisentini 4:eaf6c49a86e4 40 buffer[2] = 0x00;
giovannivisentini 0:04b82ae7aa43 41 return 3;
giovannivisentini 4:eaf6c49a86e4 42 } //write
giovannivisentini 0:04b82ae7aa43 43
giovannivisentini 4:eaf6c49a86e4 44 virtual ~EmptyRecord() {
giovannivisentini 4:eaf6c49a86e4 45 };
giovannivisentini 0:04b82ae7aa43 46 };
giovannivisentini 0:04b82ae7aa43 47
giovannivisentini 0:04b82ae7aa43 48 } /* namespace NDefLib */
giovannivisentini 0:04b82ae7aa43 49
giovannivisentini 0:04b82ae7aa43 50 #endif /* NDEFLIB_RECORDTYPE_EMPTYRECORD_H_ */