-void TickTimers(time_t TIME);
-void AddTimer(InspTimer* T);
-void TickMissedTimers(time_t TIME);
+
+/** This class manages sets of Timers, and triggers them at their defined times.
+ * This will ensure timers are not missed, as well as removing timers that have
+ * expired and allowing the addition of new ones.
+ */
+class CoreExport TimerManager
+{
+ protected:
+ /** A list of all pending timers
+ */
+ std::vector<Timer *> Timers;
+
+ public:
+ /** Constructor
+ */
+ TimerManager();
+ ~TimerManager();
+
+ /** Tick all pending Timers
+ * @param TIME the current system time
+ */
+ void TickTimers(time_t TIME);
+
+ /** Add an Timer
+ * @param T an Timer derived class to add
+ */
+ void AddTimer(Timer *T);
+
+ /** Delete an Timer
+ * @param T an Timer derived class to delete
+ */
+ void DelTimer(Timer* T);
+
+ /** Compares two timers
+ */
+ static bool TimerComparison( Timer *one, Timer*two);
+};