From 80c355b3b09605d824dbc6f573f1c93aff6ace6f Mon Sep 17 00:00:00 2001 From: Chris Danford Date: Sun, 25 Jan 2004 02:33:16 +0000 Subject: [PATCH] use deque in Actor for contant time delete of the head --- stepmania/src/Actor.cpp | 6 ++---- stepmania/src/Actor.h | 5 +++-- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/stepmania/src/Actor.cpp b/stepmania/src/Actor.cpp index e8488f8b5c..12d432d9a2 100644 --- a/stepmania/src/Actor.cpp +++ b/stepmania/src/Actor.cpp @@ -261,8 +261,8 @@ void Actor::UpdateTweening( float fDeltaTime ) m_current = TS; // delete the head tween - m_TweenStates.erase( m_TweenStates.begin() ); - m_TweenInfo.erase( m_TweenInfo.begin() ); + m_TweenStates.pop_front(); + m_TweenInfo.pop_front(); } else // in the middle of tweening. Recalcute the current position. { @@ -380,8 +380,6 @@ void Actor::StopTweening() { m_TweenStates.clear(); m_TweenInfo.clear(); - ASSERT( m_TweenStates.empty() ); - ASSERT( m_TweenInfo.empty() ); } void Actor::FinishTweening() diff --git a/stepmania/src/Actor.h b/stepmania/src/Actor.h index 2830bdf3a4..24ebabbbc7 100644 --- a/stepmania/src/Actor.h +++ b/stepmania/src/Actor.h @@ -13,6 +13,7 @@ #include "RageTypes.h" #include "ActorCommands.h" // for ParsedCommand +#include class Actor { @@ -319,8 +320,8 @@ protected: RageVector2 m_size; TweenState m_current; TweenState m_start; - vector m_TweenStates; - vector m_TweenInfo; + deque m_TweenStates; // use deque for contant time delete of the head + deque m_TweenInfo; TweenState& LatestTween() { ASSERT(m_TweenStates.size()>0); return m_TweenStates.back(); };