public static void printList()
        {
            TimerManager texManInst = TimerManager.getSingletonInstance();

            Debug.Assert(texManInst != null);

            Debug.WriteLine("");
            Debug.WriteLine("------ Active List: ---------------------------\n");

            MLink pNode = texManInst.activeList;

            int i = 0;

            while (pNode != null)
            {
                Debug.WriteLine("{0}: -------------", i);
                pNode.print();
                i++;
                pNode = pNode.pNext;
            }

            Debug.WriteLine("");
            Debug.WriteLine("------ Reserve List: ---------------------------\n");

            pNode = texManInst.reserveList;
            i     = 0;
            while (pNode != null)
            {
                Debug.WriteLine("{0}: -------------", i);
                pNode.print();
                i++;
                pNode = pNode.pNext;
            }
        }
        public static void removeAll()
        {
            TimerManager timerManager = TimerManager.getSingletonInstance();
            TimerEvent   mEvent       = (TimerEvent)timerManager.activeList;

            //while (mEvent != null)
            //{
            //    mEvent = (TimerEvent)mEvent.pNext;
            //    remove(mEvent);
            //}
            timerManager.activeList = null;
        }
        public static void addDelta(float deltaTime)
        {
            Debug.WriteLine("Adding delta " + deltaTime);
            //   TimerManager.printList();
            TimerManager timerManager = TimerManager.getSingletonInstance();
            TimerEvent   mEvent       = (TimerEvent)timerManager.activeList;

            //  TimerEvent nextEvent = mEvent;

            while (mEvent != null)
            {
                mEvent.cTriggerTime += deltaTime;
                mEvent = (TimerEvent)mEvent.pNext;
            }

            Debug.WriteLine("Adding delta done");
            //  TimerManager.printList();
        }
        public static void update(float totalTime)
        {
            TimerManager timerManager = TimerManager.getSingletonInstance();

            timerManager.currTime = totalTime;
            TimerEvent mEvent    = (TimerEvent)timerManager.activeList;
            TimerEvent nextEvent = null;

            //  bool eventOcc = false;
            while (mEvent != null && (timerManager.currTime >= mEvent.cTriggerTime))
            {
                //   eventOcc = true;
                nextEvent = (TimerEvent)mEvent.pNext;

                if (timerManager.currTime >= mEvent.cTriggerTime)
                {
                    mEvent.process();
                    mEvent.washTimeEvent();
                    TimerManager.remove(mEvent);
                }
                mEvent = nextEvent;
            }
        }