Swift:
class TrgTolerance {
private var _maxRepeats: Int
private var _repeats: Int
init(_ maxrepeats: Int) {
self._maxRepeats = maxrepeats
self._repeats = 0
}
func setMaxRepeats(_ maxRepeats: Int) {
self._maxRepeats = maxRepeats
reset()
}
func reset() {
_repeats = _maxRepeats
}
func trigger() -> Bool {
_repeats -= 1
return _repeats > 0
}
func disable() {
_repeats = 0
}
}