AppNearMe µNFC stack for the NXP PN532 chip License: You can use the stack free of charge to prototype with mbed; if you want to use the stack with your commercial product, get in touch!

Dependents:   IOT_sensor_nfc AppNearMe_MuNFC_PN532_Test p2p_nfc_test NFCMoodLamp ... more

License

You can use the stack free of charge to prototype with mbed; if you want to use the stack with your commercial product, get in touch!

Revision:
11:5be631376e5b
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/PN532/NdefCallback.cpp	Wed Nov 07 18:19:09 2012 +0000
@@ -0,0 +1,46 @@
+/*
+    NdefCallback.cpp 
+    Copyright (c) Donatien Garnier 2012
+    donatien.garnier@appnearme.com
+    http://www.appnearme.com/
+*/
+
+#include "NdefCallback.h"
+#include "TLVList.h"
+
+NdefCallback::NdefCallback()
+{
+
+}
+
+void NdefCallback::init(void (*fn)(appnearme_ndef_callback, void*))
+{
+  fn(staticCallback, this);
+}
+
+void NdefCallback::attach(void (*fn)(TLVList*, void*), void* arg)
+{
+  m_inst = NULL;
+  m_fn = fn;
+  m_arg = arg;
+}
+
+void NdefCallback::callback(tlv_list* payload)
+{
+  m_tlvList.wrap(payload);
+  if(m_inst)
+  {
+    m_caller(this, &m_tlvList);
+  }
+  else if(m_fn)
+  {
+    m_fn(&m_tlvList, m_arg);
+  }
+}
+
+/*static*/ void NdefCallback::staticCallback(tlv_list* payload, void* param)
+{
+  ((NdefCallback*)(param))->callback(payload);
+}
+
+