Full Program
Dependencies: TCPEthernetEverything
eventqueue.cpp
- Committer:
- lachu
- Date:
- 2017-01-24
- Revision:
- 1:07a56731e6d1
- Parent:
- 0:ca66419d3b8b
File content as of revision 1:07a56731e6d1:
/* * (c) Copyright 2012 EVRYTHNG Ltd London / Zurich * www.evrythng.com * * --- DISCLAIMER --- * * EVRYTHNG provides this source code "as is" and without warranty of any kind, * and hereby disclaims all express or implied warranties, including without * limitation warranties of merchantability, fitness for a particular purpose, * performance, accuracy, reliability, and non-infringement. * * Author: Michel Yerly * */ #include "mbed.h" #include "eventqueue.h" #include <time.h> #include "util.h" void EventQueue::put(int64_t time, EventType type) { Event event; event.time = time; event.type = type; queue.push(event); } EventType EventQueue::waitNext(int64_t currentTime) { Event event = queue.top(); queue.pop(); int64_t w = event.time - currentTime; if (w > 0) wait_ms(w); return event.type; } bool EventQueue::empty() { return queue.empty(); } int EventQueue::size() { return queue.size(); }