# 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 CustomMarkerChild(Model):
    """CustomMarkerChild.

    All required parameters must be populated in order to send to Azure.

    :param custom_marker_id: Required.
    :type custom_marker_id: str
    :param custom_marker_name:
    :type custom_marker_name: str
    :param custom_marker_show_harmonics: Required.
    :type custom_marker_show_harmonics: bool
    :param custom_marker_show_side_bands: Required.
    :type custom_marker_show_side_bands: bool
    :param custom_marker_show_peaks: Required.
    :type custom_marker_show_peaks: bool
    """

    _validation = {
        'custom_marker_id': {'required': True},
        'custom_marker_name': {'max_length': 5},
        'custom_marker_show_harmonics': {'required': True},
        'custom_marker_show_side_bands': {'required': True},
        'custom_marker_show_peaks': {'required': True},
    }

    _attribute_map = {
        'custom_marker_id': {'key': 'CustomMarkerId', 'type': 'str'},
        'custom_marker_name': {'key': 'CustomMarkerName', 'type': 'str'},
        'custom_marker_show_harmonics': {'key': 'CustomMarkerShowHarmonics', 'type': 'bool'},
        'custom_marker_show_side_bands': {'key': 'CustomMarkerShowSideBands', 'type': 'bool'},
        'custom_marker_show_peaks': {'key': 'CustomMarkerShowPeaks', 'type': 'bool'},
    }

    def __init__(self, **kwargs):
        super(CustomMarkerChild, self).__init__(**kwargs)
        self.custom_marker_id = kwargs.get('custom_marker_id', None)
        self.custom_marker_name = kwargs.get('custom_marker_name', None)
        self.custom_marker_show_harmonics = kwargs.get('custom_marker_show_harmonics', None)
        self.custom_marker_show_side_bands = kwargs.get('custom_marker_show_side_bands', None)
        self.custom_marker_show_peaks = kwargs.get('custom_marker_show_peaks', None)
