class FrequencyConstraint

Public Class Methods

new(freqx, freq: freqx) click to toggle source
# File lib/macrohub.rb, line 108
def initialize(freqx, freq: freqx)
  
  @freq = freq
  @counter = 0
  @interval = 60
end

Public Instance Methods

counter() click to toggle source
# File lib/macrohub.rb, line 115
def counter()
  @counter
end
increment() click to toggle source
# File lib/macrohub.rb, line 119
def increment()
  @counter += 1
end
match?() click to toggle source
# File lib/macrohub.rb, line 123
def match?()
  @counter < @freq
end
reset() click to toggle source
# File lib/macrohub.rb, line 127
def reset()
  puts 'resetting' if $debug
  @counter = 0
end
to_node() click to toggle source
# File lib/macrohub.rb, line 132
def to_node()
  Rexle::Element.new(:constraint, \
                      attributes: {type: :frequency, freq: @freq})      
end
to_rowx() click to toggle source
# File lib/macrohub.rb, line 137
def to_rowx()
  
  freq = case @freq
  when 1
    'Once'
  when 2
    'Twice'
  else
    "Maximum %s times" % @freq
  end
  
  "constraint: %s" %  freq

end