//====== Copyright © 1996-2004, Valve Corporation, All rights reserved. ======= // // An element that contains a list of animations // //============================================================================= #include "movieobjects/dmeanimationlist.h" #include "datamodel/dmelementfactoryhelper.h" #include "movieobjects/dmeclip.h" // memdbgon must be the last include file in a .cpp file!!! #include "tier0/memdbgon.h" //----------------------------------------------------------------------------- // Expose this class to the scene database //----------------------------------------------------------------------------- IMPLEMENT_ELEMENT_FACTORY( DmeAnimationList, CDmeAnimationList ); //----------------------------------------------------------------------------- // Purpose: //----------------------------------------------------------------------------- void CDmeAnimationList::OnConstruction() { m_Animations.Init( this, "animations" ); } void CDmeAnimationList::OnDestruction() { } //----------------------------------------------------------------------------- // Adds, removes animations //----------------------------------------------------------------------------- int CDmeAnimationList::AddAnimation( CDmeChannelsClip *pAnimation ) { return m_Animations.AddToTail( pAnimation ); } void CDmeAnimationList::RemoveAnimation( int nIndex ) { m_Animations.Remove( nIndex ); } //----------------------------------------------------------------------------- // Sets the transform //----------------------------------------------------------------------------- void CDmeAnimationList::SetAnimation( int nIndex, CDmeChannelsClip *pAnimation ) { m_Animations.Set( nIndex, pAnimation ); } //----------------------------------------------------------------------------- // Finds an animation by name //----------------------------------------------------------------------------- int CDmeAnimationList::FindAnimation( const char *pAnimName ) { int nCount = m_Animations.Count(); for ( int i = 0; i < nCount; ++i ) { if ( !Q_stricmp( m_Animations[i]->GetName(), pAnimName ) ) return i; } return -1; }