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.
 
 
 
 
 

63 lines
1.7 KiB

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