nrf24l01: Added callback functionality for Java

Signed-off-by: Andrei Vasiliu <andrei.vasiliu@intel.com>
Signed-off-by: Mihai Tudor Panu <mihai.tudor.panu@intel.com>
This commit is contained in:
Andrei Vasiliu
2015-09-17 15:12:00 +03:00
committed by Mihai Tudor Panu
parent ce6a095079
commit bdacb6c640
4 changed files with 76 additions and 5 deletions

View File

@@ -148,6 +148,20 @@ NRF24L01::setPayload (uint8_t payload) {
m_payload = payload;
}
#ifdef JAVACALLBACK
void
NRF24L01::setDataReceivedHandler (Callback *call_obj)
{
callback_obj = call_obj;
dataReceivedHandler = &generic_callback;
}
#else
void setDataReceivedHandler (funcPtrVoidVoid handler)
{
dataReceivedHandler = handler;
}
#endif
bool
NRF24L01::dataReady () {
/* See note in getData() function - just checking RX_DR isn't good enough */
@@ -315,7 +329,11 @@ void
NRF24L01::pollListener() {
if (dataReady()) {
getData (m_rxBuffer);
dataRecievedHandler (); /* let know that data arrived */
#ifdef JAVACALLBACK
dataReceivedHandler (callback_obj); /* let know that data arrived */
#else
dataReceivedHandler (); /* let know that data arrived */
#endif
}
}