A messenger application for Raspberry Pi Zerofor A.U.TH (Real time Embedded systems).
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

64 lines
1.9 KiB

  1. /*!
  2. * \file core.h
  3. *
  4. * \author Christos Choutouridis AEM:8997 <cchoutou@ece.auth.gr>
  5. */
  6. #ifndef __core_h__
  7. #define __core_h__
  8. #include <netinet/in.h>
  9. #include "msg_impl.h"
  10. extern msgList_t msgList;
  11. devAEM_t addr2devAEM (in_addr_t in_addr);
  12. in_addr_t devAEM2addr (devAEM_t dev);
  13. devAEM_t ip2AEM (devIP_t* ip);
  14. devIP_t AEM2ip (devAEM_t dev);
  15. void cMsg_make (cMsg_t* msg);
  16. size_t cMsg_serialize (cMsg_t* msg, char_t* buffer);
  17. status_t cMsg_parse (cMsg_t* cMsg, char_t* rawMsg, size_t size);
  18. uint32_t cMsg_getFrom (cMsg_t* cMsg);
  19. uint32_t cMsg_getTo (cMsg_t* cMsg);
  20. uint64_t cMsg_getTs (cMsg_t* cMsg);
  21. char_t* cMsg_getText (cMsg_t* cMsg);
  22. bool_t cMsg_equal (cMsg_t* m1, cMsg_t* m2);
  23. void msg_init (msg_t* msg);
  24. status_t devList_init (devList_t* devList);
  25. dIter_t devList_getIter (devAEM_t dev);
  26. void devList_acquire (void);
  27. void devList_release (void);
  28. mIter_t msgList_preInc (mIter_t* it);
  29. mIter_t msgList_preDec (mIter_t* it);
  30. status_t msgList_init (msgList_t* msgList);
  31. mIter_t msgList_begin (msgList_t* this);
  32. mIter_t msgList_last (msgList_t* this);
  33. size_t msgList_size (msgList_t* this);
  34. mIter_t msgList_find (msgList_t* this, msg_t* msg);
  35. mIter_t msgList_add (msgList_t* this, msg_t* msg);
  36. void msgList_acquire ();
  37. void msgList_release ();
  38. status_t stats_init (stats_t* s);
  39. void statsUpdateCreate (msg_t* msg);
  40. void statsUpdateIn (msg_t* msg, bool_t dup);
  41. void statsUpdateOut (msg_t* msg, devAEM_t dev);
  42. status_t statsPrint (stats_t* stats);
  43. status_t statsTimesPrint (devList_t *devList);
  44. status_t log_init(void);
  45. void log_msg_in (msg_t* msg);
  46. void log_msg_out (msg_t* msg, devAEM_t dev);
  47. void log_msg_new (msg_t* msg);
  48. void log_debug (const char *fmt, ...);
  49. void log_error (const char *fmt, ...);
  50. #endif /* __core_h__ */