aboutsummaryrefslogtreecommitdiffstats
path: root/ucs2-interface
diff options
context:
space:
mode:
authorTobias Jahnke <tjahnk@users.noreply.github.com>2017-08-03 16:48:18 +0200
committerTobias Jahnke <tjahnk@users.noreply.github.com>2017-08-03 16:48:18 +0200
commite9aa8f0519f75d8dc1d698e11596c4720cd977e5 (patch)
tree7e48967a3b2587cbb898173ba4da49fc0cdb6a50 /ucs2-interface
parent070569777b69eb2d36c4c8a3a4b10ce498f559ff (diff)
adds node-availibility event and subscribe function
Diffstat (limited to 'ucs2-interface')
-rw-r--r--ucs2-interface/ucs_interface.h10
-rw-r--r--ucs2-interface/ucs_lib_interf.c2
2 files changed, 12 insertions, 0 deletions
diff --git a/ucs2-interface/ucs_interface.h b/ucs2-interface/ucs_interface.h
index 0ec603a..82bba55 100644
--- a/ucs2-interface/ucs_interface.h
+++ b/ucs2-interface/ucs_interface.h
@@ -292,6 +292,16 @@ extern void UCSI_CB_OnRouteResult(void *pTag, uint16_t routeId, bool isActive);
*/
extern void UCSI_CB_OnGpioStateChange(void *pTag, uint16_t nodeAddress, uint8_t gpioPinId, bool isHighState);
+/**
+ * \brief Callback when nodes are discovered or disappear
+ * \note This function must be implemented by the integrator
+ * \param pTag - Pointer given by the integrator by UCSI_Init
+ * \param code - Report code
+ * \param nodeAddress - Node Address of the INIC sending the update.
+ * \param pNode - Reference to the node structure or NULL.
+ */
+extern void UCSI_CB_OnMgrReport(void *pTag, Ucs_MgrReport_t code, uint16_t nodeAddress, Ucs_Rm_Node_t *pNode);
+
#ifdef __cplusplus
}
#endif
diff --git a/ucs2-interface/ucs_lib_interf.c b/ucs2-interface/ucs_lib_interf.c
index 52840ba..9e7167d 100644
--- a/ucs2-interface/ucs_lib_interf.c
+++ b/ucs2-interface/ucs_lib_interf.c
@@ -784,6 +784,8 @@ static void OnUcsMgrReport(Ucs_MgrReport_t code, uint16_t node_address, Ucs_Rm_N
UCSI_CB_OnUserMessage(my->tag, true, "Node=%X: unknown code", 1, node_address);
break;
}
+
+ UCSI_CB_OnMgrReport(my->tag, code, node_address, node_ptr);
}
static void OnUcsNsRun(Ucs_Rm_Node_t * node_ptr, Ucs_Ns_ResultCode_t result, void *ucs_user_ptr)