Class: MemoryWord

Inherits:
Object
  • Object
show all
Defined in:
lib/plc/memory_word.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(name) ⇒ MemoryWord

Returns a new instance of MemoryWord.



4
5
6
7
# File 'lib/plc/memory_word.rb', line 4

def initialize(name)
  name ? (@name = "MW0") : (raise "Name required to initialize MemoryWord")
  @plc = Plc.instance
end

Instance Attribute Details

#nameObject (readonly)

Returns the value of attribute name.



2
3
4
# File 'lib/plc/memory_word.rb', line 2

def name
  @name
end

Class Method Details

.row_namesObject



10
11
12
# File 'lib/plc/memory_word.rb', line 10

def row_names
  Plc.instance.variable_page.css(".varstate_address_field_valid").collect {|f| f.attributes["name"].value }
end

Instance Method Details

#row_nameObject



15
16
17
18
# File 'lib/plc/memory_word.rb', line 15

def row_name
  row = @plc.variable_page.search(".varstate_address_field_valid").select { |a| a.attributes["value"].value == self.name }.first
  row.attributes["name"].value
end

#valueObject



20
21
22
23
# File 'lib/plc/memory_word.rb', line 20

def value
  td = "dynamic_contentt#{self.row_name[1..-1]}"
  @plc.variable_page.search('.updatable').select { |div| div.attributes["id"].value == td }.first.text[1..-1]
end

#value=(num) ⇒ Object



25
26
27
# File 'lib/plc/memory_word.rb', line 25

def value=(num)
  @plc.set_word_value(self, num)
end