public void PushObject(object instance)
        {
            lock (stackSyncObject) {
                InputObjects.Push(instance);
            }

            if (InputNotificationType == NotificationType.Auto)
            {
                OnInputAvailable();
            }
        }
        public void PushMultiObjects(IList <object> instances)
        {
            lock (stackSyncObject) {
                foreach (object instance in instances)
                {
                    InputObjects.Push(instance);
                }
            }

            if (InputNotificationType == NotificationType.Auto)
            {
                OnInputAvailable();
            }
        }