#include "JDSoundSyncOnTransition.h" Util::DynamicArray< Soundwich::IJustDanceSoundEffectOnTrackTransitionCallback* > Soundwich::JDSoundSyncOnTransition::m_callbacks; bool Soundwich::JDSoundSyncOnTransition::Init( ) { return true; } Soundwich::JDSoundSyncOnTransition::~JDSoundSyncOnTransition( ) { } void Soundwich::JDSoundSyncOnTransition::PushEventIn( uint32 index, Component* from ) { switch( index ) { case PlayEventIn: { ExecutePlayCallbacks(); } break; case StopEventIn: { ExecuteStopCallbacks(); } break; default: Assert( 0 ); } } void Soundwich::JDSoundSyncOnTransition::RegisterCallback( IJustDanceSoundEffectOnTrackTransitionCallback* cb ) { m_callbacks.PushBack( cb ); } void Soundwich::JDSoundSyncOnTransition::UnregisterCallback( IJustDanceSoundEffectOnTrackTransitionCallback* cb ) { m_callbacks.Remove( cb ); } void Soundwich::JDSoundSyncOnTransition::ExecutePlayCallbacks( ) { for( uint32 count = 0; count < m_callbacks.Size( ); ++count ) { m_callbacks[ count ]->OnPlaySoundEffectOnTrackTransition( _data.SoundEffect.Chars(), _data.TrackId ); } } void Soundwich::JDSoundSyncOnTransition::ExecuteStopCallbacks( ) { for( uint32 count = 0; count < m_callbacks.Size( ); ++count ) { m_callbacks[ count ]->OnStopSoundEffectOnTrackTransition( _data.SoundEffect.Chars() ); } }