Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Fork of mbed by
TimerEvent.h
- Committer:
- simon.ford@mbed.co.uk
- Date:
- 2008-11-27
- Revision:
- 4:5d1359a283bc
- Parent:
- 3:aefd12a1f1c5
- Child:
- 9:cf0d45ce28a6
File content as of revision 4:5d1359a283bc:
/* mbed Microcontroller Library - TimerEvent
* Copyright (c) 2007-2008, sford
*/
#ifndef MBED_TIMEREVENT_H
#define MBED_TIMEREVENT_H
namespace mbed {
// Base abstraction for timer interrupts
class TimerEvent {
public:
// The handler registered with the underlying timer interrupt
static void irq();
// Destruction removes it...
virtual ~TimerEvent();
protected:
// The handler called to service the timer event of the derived class
virtual void handler() = 0;
// insert in to linked list
void insert(unsigned int timestamp);
// remove from linked list, if in it
void remove();
// Get the current usec timestamp
static unsigned int timestamp();
static TimerEvent *_head; // The head of the list of the events, NULL if none
TimerEvent *_next; // Pointer to the next in the list, NULL if last
unsigned int _timestamp; // The timestamp at which the even should be triggered
};
}
#endif