/// <summary> /// Remove the provided gesture from the remote self instance. /// </summary> /// <param name="a_Gesture"></param> public void RemoveGesture(IGesture a_Gesture) { string gestureKey = a_Gesture.GetGestureId() + "/" + a_Gesture.GetInstanceId(); if (m_Gestures.ContainsKey(gestureKey)) { if (a_Gesture.OnStop()) { m_Gestures.Remove(gestureKey); m_Overrides.Remove(gestureKey); Dictionary <string, object> register = new Dictionary <string, object>(); register["event"] = "remove_gesture_proxy"; register["gestureId"] = a_Gesture.GetGestureId(); register["instanceId"] = a_Gesture.GetInstanceId(); TopicClient.Instance.Publish("gesture-manager", Json.Serialize(register)); Log.Status("GestureManager", "Gesture {0} removed.", gestureKey); } } }