========= Attribute ========= Module: `thinkiq.model.attribute` ================================= .. automodule:: thinkiq.model.attribute .. currentmodule:: thinkiq.model.attribute :class:`Attribute` ------------------ .. autoclass:: Attribute The initialization of an attribute has multiple creational methods that allow for an array of arguments. **Options included:** .. automethod:: get_from_id .. automethod:: get_from_fqn .. automethod:: get_from_parent_id .. automethod:: get_from_parent **Properties:** .. py:attribute:: id :type: int .. py:attribute:: part_of_id :type: int .. py:attribute:: fqn :type: list .. py:attribute:: data_type :type: str .. py:attribute:: measurement_unit The measurement unit object of the ThinkIQ attribute. :type: thinkiq.model.measurement_unit.MeasurementUnit :value: None .. py:attribute:: tag The tag object of the ThinkIQ attribute. :type: thinkiq.model.tag.Tag :value: None .. py:attribute:: value_stream Return the current value stream for this attribute. :type: thinkiq.model.value_stream.ValueStream :getter: Returns the ValueStream object associated with this attribute. :setter: Assigns a ValueStream object and updates start/end datetimes. .. py:attribute:: value Return the current value of the attribute. Returns live data if linked to a tag, or the last config value if not. If the attribute is tag-based, setting the value raises an exception. :type: Any :getter: Returns live value from tag or static config value. :setter: Updates config value in DB for non-tag attributes. **Methods** .. automethod:: __init__ .. automethod:: _load_node_details .. automethod:: _get_history_column_name .. automethod:: load_value_stream .. automethod:: save_value_stream .. automethod:: get_times_to_accumulated_value .. automethod:: get_all_children_with_type .. automethod:: create_tag_if_not_exists .. automethod:: get_limits :no-index: .. automethod:: evaluate_limits :no-index: .. automethod:: get_enumeration_type :no-index: .. automethod:: encode :no-index: .. automethod:: decode :no-index: