events.cpp 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. #include "Crown.h"
  2. #include "EventBuffer.h"
  3. using namespace crown;
  4. //-----------------------------------------------------------------------------
  5. struct TestEvent
  6. {
  7. uint32_t a;
  8. uint32_t b;
  9. uint32_t c;
  10. };
  11. //-----------------------------------------------------------------------------
  12. int main()
  13. {
  14. EventBuffer event_buffer;
  15. TestEvent event;
  16. event.a = 1;
  17. event.b = 2;
  18. event.c = 3;
  19. for (uint32_t i = 0; i < 10; i++)
  20. {
  21. event_buffer.push_event(0, &event, sizeof(TestEvent));
  22. }
  23. CE_ASSERT(event_buffer.size() == (10 * (sizeof(TestEvent) + sizeof(uint32_t) + sizeof(size_t))), "Something ha gone wrong");
  24. TestEvent* result;
  25. uint32_t type = 0;
  26. size_t size = 0;
  27. uint32_t count = 0;
  28. while ((result = (TestEvent*)event_buffer.get_next_event(type, size)) != NULL)
  29. {
  30. Log::i("type => %d", type);
  31. Log::i("size => %d", size);
  32. Log::i("a => %d", result->a);
  33. Log::i("b => %d", result->b);
  34. Log::i("c => %d", result->c);
  35. count++;
  36. }
  37. CE_ASSERT(count == 10, "Something ha gone wrong");
  38. return 0;
  39. }