Class: Cosmos::TableItem
- Inherits:
-
PacketItem
- Object
- StructureItem
- PacketItem
- Cosmos::TableItem
- Defined in:
- lib/cosmos/tools/table_manager/table_item.rb
Overview
Implements the attributes that are unique to a TableItem such as editable and hidden. All other functionality is inherited from PacketItem.
Constant Summary
Constants inherited from PacketItem
Instance Attribute Summary collapse
-
#editable ⇒ Boolean
Whether this item is editable.
-
#hidden ⇒ Boolean
Whether this item is hidden (not displayed).
Attributes inherited from PacketItem
#default, #description, #format_string, #hazardous, #id_value, #limits, #range, #read_conversion, #required, #state_colors, #states, #units, #units_full, #write_conversion
Instance Method Summary collapse
-
#as_json ⇒ Object
Create a hash of this item’s attributes.
-
#clone ⇒ Object
(also: #dup)
Make a light weight clone of this item.
-
#initialize(name, bit_offset, bit_size, data_type, endianness, array_size = nil, overflow = :ERROR) ⇒ TableItem
constructor
Create a StructureItem by setting all the attributes.
Methods inherited from PacketItem
#calculate_range, #check_default_and_range_data_types, from_json, #meta, #meta=, #to_config, #to_hash
Constructor Details
#initialize(name, bit_offset, bit_size, data_type, endianness, array_size = nil, overflow = :ERROR) ⇒ TableItem
Create a StructureItem by setting all the attributes. It calls all the setter routines to do the attribute verification and then verifies the overall integrity.
It also initializes the attributes of the PacketItem.
33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 |
# File 'lib/cosmos/tools/table_manager/table_item.rb', line 33 def initialize( name, bit_offset, bit_size, data_type, endianness, array_size = nil, overflow = :ERROR ) super( name, bit_offset, bit_size, data_type, endianness, array_size, overflow, ) @display_type = nil @editable = true @hidden = false end |
Instance Attribute Details
#editable ⇒ Boolean
Returns Whether this item is editable.
27 28 29 |
# File 'lib/cosmos/tools/table_manager/table_item.rb', line 27 def editable @editable end |
#hidden ⇒ Boolean
Returns Whether this item is hidden (not displayed).
30 31 32 |
# File 'lib/cosmos/tools/table_manager/table_item.rb', line 30 def hidden @hidden end |
Instance Method Details
#as_json ⇒ Object
Create a hash of this item’s attributes
83 84 85 86 87 88 |
# File 'lib/cosmos/tools/table_manager/table_item.rb', line 83 def as_json hash = super() hash['editable'] = self.editable hash['hidden'] = self.hidden hash end |
#clone ⇒ Object Also known as: dup
Make a light weight clone of this item
75 76 77 78 79 |
# File 'lib/cosmos/tools/table_manager/table_item.rb', line 75 def clone item = super() item.editable = self.editable item end |