public static void removeListener(IKinectUser_EventListener kl)
 {
     if (m_kinectUser_EventListener.ContainsKey(kl))
     {
         m_kinectUser_EventListener.Remove(kl);
     }
 }
 public static void addListener(IKinectUser_EventListener kl)
 {
     if (!m_kinectUser_EventListener.ContainsKey(kl))
     {
         m_kinectUser_EventListener.Add(kl, true);
     }
 }
    void IKinectUser_EventListener._onKinectUserUpdate(KinectUser kuser)
    {
        IDictionaryEnumerator ide = m_kinectUser_EventListener.GetEnumerator();

        while (ide.MoveNext())
        {
            IKinectUser_EventListener kl = (IKinectUser_EventListener)(((DictionaryEntry)(ide.Current)).Key);
            kl._onKinectUserUpdate(kuser);
        }
    }