# coding=utf-8
# --------------------------------------------------------------------------
# Code generated by Microsoft (R) AutoRest Code Generator.
# Changes may cause incorrect behavior and will be lost if the code is
# regenerated.
# --------------------------------------------------------------------------

from msrest.serialization import Model


class AlarmDefinitionChild(Model):
    """AlarmDefinitionChild.

    :param low_alarm_value:
    :type low_alarm_value: float
    :param low_warning_value:
    :type low_warning_value: float
    :param high_alarm_value:
    :type high_alarm_value: float
    :param high_warning_value:
    :type high_warning_value: float
    :param off_threshold_value:
    :type off_threshold_value: float
    :param classification:
    :type classification: str
    :param notification_criteria_percentage:
    :type notification_criteria_percentage: float
    :param notification_criteria_points:
    :type notification_criteria_points: int
    """

    _attribute_map = {
        'low_alarm_value': {'key': 'LowAlarmValue', 'type': 'float'},
        'low_warning_value': {'key': 'LowWarningValue', 'type': 'float'},
        'high_alarm_value': {'key': 'HighAlarmValue', 'type': 'float'},
        'high_warning_value': {'key': 'HighWarningValue', 'type': 'float'},
        'off_threshold_value': {'key': 'OffThresholdValue', 'type': 'float'},
        'classification': {'key': 'Classification', 'type': 'str'},
        'notification_criteria_percentage': {'key': 'NotificationCriteriaPercentage', 'type': 'float'},
        'notification_criteria_points': {'key': 'NotificationCriteriaPoints', 'type': 'int'},
    }

    def __init__(self, *, low_alarm_value: float=None, low_warning_value: float=None, high_alarm_value: float=None, high_warning_value: float=None, off_threshold_value: float=None, classification: str=None, notification_criteria_percentage: float=None, notification_criteria_points: int=None, **kwargs) -> None:
        super(AlarmDefinitionChild, self).__init__(**kwargs)
        self.low_alarm_value = low_alarm_value
        self.low_warning_value = low_warning_value
        self.high_alarm_value = high_alarm_value
        self.high_warning_value = high_warning_value
        self.off_threshold_value = off_threshold_value
        self.classification = classification
        self.notification_criteria_percentage = notification_criteria_percentage
        self.notification_criteria_points = notification_criteria_points
