public void CallbackOnSet(Action Action) { bool CurrentValue = this.Value; if (CurrentValue) { Action(); if (AutoReset) Reset(); } else { Actions.Enqueue(Action); } }