ST / Mbed 2 deprecated NFC01A1_Demos

Dependencies:   NDefLib X_NUCLEO_NFC01A1 mbed

Fork of X-MBED-NFC1 by Giovanni Visentini

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers MyRecord.h Source File

MyRecord.h

Go to the documentation of this file.
00001 /**
00002   ******************************************************************************
00003   * @file       MyRecord.h
00004   * @author     ST / Central Labs
00005   * @date       03 Dic 2015
00006   * @brief      Simple castom record used in the countClick demo
00007   ******************************************************************************
00008   *
00009   * COPYRIGHT(c) 2015 STMicroelectronics
00010   *
00011   * Redistribution and use in source and binary forms, with or without modification,
00012   * are permitted provided that the following conditions are met:
00013   *   1. Redistributions of source code must retain the above copyright notice,
00014   *      this list of conditions and the following disclaimer.
00015   *   2. Redistributions in binary form must reproduce the above copyright notice,
00016   *      this list of conditions and the following disclaimer in the documentation
00017   *      and/or other materials provided with the distribution.
00018   *   3. Neither the name of STMicroelectronics nor the names of its contributors
00019   *      may be used to endorse or promote products derived from this software
00020   *      without specific prior written permission.
00021   *
00022   * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00023   * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
00024   * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
00025   * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
00026   * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
00027   * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
00028   * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
00029   * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
00030   * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
00031   * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00032   *
00033   ******************************************************************************
00034   */
00035 
00036 #include "NDefLib/RecordType/RecordText.h"
00037 
00038 /**
00039  * Custom record that map an integer in a text record.
00040  */
00041 class MyRecord : public NDefLib::RecordText{
00042     
00043 private:
00044     char nClickStringBuffer[12]; ///buffer used for print the number
00045     uint32_t nClick; /// number to show
00046     
00047     /**
00048      * Convert the number in char and update the tag content.
00049      */
00050     void sync_text_value(){
00051         sprintf(nClickStringBuffer,"%u",nClick);
00052         set_text(nClickStringBuffer);
00053     }
00054         
00055 public: 
00056     
00057     MyRecord():nClick(0){
00058         sync_text_value();
00059     }
00060     
00061     /**
00062      * Increment the stored number and update the racord content.
00063      */
00064     void increment_click(){
00065         nClick++;
00066         sync_text_value();
00067     }
00068 
00069 };