public void Stop()
 {
     // stop current
     if (null != m_CurrentStep)
     {
         //reset to zero frame
         m_CurrentStep.Stop();
     }
 }
    public void Initialize(GameObject root)
    {
        if (null == root)
        {
            return;
        }
        m_ObjectRoot = root;
        m_AnimationStore = new Dictionary<string, SpriteAnimationElement>(m_ObjectRoot.transform.childCount);

        for (int i = 0; i < m_ObjectRoot.transform.childCount; ++i)
        {
            SpriteAnimationElement elem = new SpriteAnimationElement(m_ObjectRoot.transform.GetChild(i).gameObject);
            m_AnimationStore.Add(m_ObjectRoot.transform.GetChild(i).gameObject.name, elem);

            //deactive
            elem.Stop();
        }
    }
    public void Initialize(GameObject root)
    {
        if (null == root)
        {
            return;
        }
        m_ObjectRoot     = root;
        m_AnimationStore = new Dictionary <string, SpriteAnimationElement>(m_ObjectRoot.transform.childCount);

        for (int i = 0; i < m_ObjectRoot.transform.childCount; ++i)
        {
            SpriteAnimationElement elem = new SpriteAnimationElement(m_ObjectRoot.transform.GetChild(i).gameObject);
            m_AnimationStore.Add(m_ObjectRoot.transform.GetChild(i).gameObject.name, elem);

            //deactive
            elem.Stop();
        }
    }