Revision e7056e1b src/urt_core.c

View differences:

src/urt_core.c
234 234
 * @brief   Prepend node to core's list of nodes.
235 235
 *
236 236
 * @param[in] node The node to prepend. Must not be NULL.
237
 *
238
 * @return URT_STATUS_OK on success.
237 239
 */
238
void urtCoreAddNode(urt_node_t* node)
240
urt_status_t urtCoreAddNode(urt_node_t* node)
239 241
{
240 242
  urtDebugAssert(node);
241 243

  
244
  urtMutexLock(&core._lock);
242 245
  node->next = core._nodes;
243 246
  core._nodes = node;
244
  return;
247
  urtMutexUnlock(&core._lock);
248
  return URT_STATUS_OK;
245 249
}
246 250

  
247 251

  
......
257 261
/**
258 262
 * @brief   Append topic to core's list of topics.
259 263
 *
260
 * @param[in] node The topic to append.
264
 * @param[in] node The topic to append. Must not be NULL.
261 265
 */
262
void urtCoreAddTopic(urt_topic_t* topic)
266
urt_status_t urtCoreAddTopic(urt_topic_t* topic)
263 267
{
268
  urtDebugAssert(topic);
269

  
270
  urtMutexLock(&core._lock);
264 271
  urt_topic_t* lastTopic = core._topics;
265 272
  while (lastTopic->next != NULL)
266 273
  {
267 274
    lastTopic = lastTopic->next;
268 275
  }
269 276
  lastTopic->next = topic;
270
  return;
277
  urtMutexUnlock(&core._lock);
278
  return URT_STATUS_OK;
271 279
}
272 280

  
273 281
/**
......
292 300

  
293 301
# if (URT_CFG_RPC_ENABLED)
294 302
/**
303
 * @brief   Prepend service to core's list of services.
304
 *
305
 * @param[in] service The service to prepend. Must not be NULL.
306
 *
307
 * @return URT_STATUS_OK on success.
308
 */
309
urt_status_t urtCoreAddService(urt_service_t* service)
310
{
311
  urtDebugAssert(service);
312

  
313
  urtMutexLock(&core._lock);
314
  service->next = core._services;
315
  core._services = service;
316
  urtMutexUnlock(&core._lock);
317
  return URT_STATUS_OK;
318
}
319

  
320
/**
295 321
 * @brief   Get the service of the Core.
296 322
 *
297 323
 * @param[in] id  Identifier of the service to retrieve.
298 324
 *
299 325
 * @return Returns a pointer to the requested service. Returns NULL if no service matches the given ID.
300 326
 */
301
urt_service_t urtCoreGetService(urt_serviceid_t id) {return urt_service_t;}
327
urt_service_t* urtCoreGetService(urt_serviceid_t id) {return urt_service_t;}
302 328
# endif /* URT_CFG_RPC_ENABLED */
303 329

  
330
#if (URT_CFG_PUBSUB_QOS_DEADLINECHECKS)
331
urt_osTimerCallback_t urtCoreCallbackDefault(void* params)
332
{
333
  urtMutexLock(&core._lock);
334
  while (params) {
335
    urtPrintf("Danger");
336
    urtThreadSleep(1);
337
  }
338
  urtMutexUnlock(&core._lock);
339
  return
340
}
341
#endif /* URT_CFG_PUBSUB_QOS_DEADLINECHECKS */
342

  
304 343

  

Also available in: Unified diff