#pragma once #define _WIN32_WINDOWS 0x0601 #include #include #include #include "../TimerObject.h" namespace Flam { namespace Live { typedef std::multimap InternalQueueMap; class LiveTimer { boost::mutex coordMutex; boost::thread internalThread; boost::asio::io_service io_service; InternalQueueMap internalQueueMap; boost::asio::deadline_timer timer; public: LiveTimer(); ~LiveTimer(); void operator()(); void EnqueueTimedCallback(TimerObjectPtr timerObjectPtr); void TimeIsUp(boost::system::error_code const& er); //Callback for asio }; }}