# coding: utf-8

from __future__ import absolute_import
from datetime import date, datetime  # noqa: F401

from typing import List, Dict  # noqa: F401

from gpa_api.models.base_model_ import Model
from gpa_api import util


class Standard(Model):
    """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).

    Do not edit the class manually.
    """

    def __init__(self, id=None, combustion_temperature=None, measurement_temperature=None, ideal_gas_reference_state=None, standard_version=None, created_date=None):  # noqa: E501
        """Standard - a model defined in OpenAPI

        :param id: The id of this Standard.  # noqa: E501
        :type id: str
        :param combustion_temperature: The combustion_temperature of this Standard.  # noqa: E501
        :type combustion_temperature: float
        :param measurement_temperature: The measurement_temperature of this Standard.  # noqa: E501
        :type measurement_temperature: float
        :param ideal_gas_reference_state: The ideal_gas_reference_state of this Standard.  # noqa: E501
        :type ideal_gas_reference_state: float
        :param standard_version: The standard_version of this Standard.  # noqa: E501
        :type standard_version: str
        :param created_date: The created_date of this Standard.  # noqa: E501
        :type created_date: datetime
        """
        self.openapi_types = {
            'id': str,
            'combustion_temperature': float,
            'measurement_temperature': float,
            'ideal_gas_reference_state': float,
            'standard_version': str,
            'created_date': datetime
        }

        self.attribute_map = {
            'id': 'id',
            'combustion_temperature': 'combustionTemperature',
            'measurement_temperature': 'measurementTemperature',
            'ideal_gas_reference_state': 'idealGasReferenceState',
            'standard_version': 'standardVersion',
            'created_date': 'createdDate'
        }

        self._id = id
        self._combustion_temperature = combustion_temperature
        self._measurement_temperature = measurement_temperature
        self._ideal_gas_reference_state = ideal_gas_reference_state
        self._standard_version = standard_version
        self._created_date = created_date

    @classmethod
    def from_dict(cls, dikt) -> 'Standard':
        """Returns the dict as a model

        :param dikt: A dict.
        :type: dict
        :return: The Standard of this Standard.  # noqa: E501
        :rtype: Standard
        """
        return util.deserialize_model(dikt, cls)

    @property
    def id(self):
        """Gets the id of this Standard.


        :return: The id of this Standard.
        :rtype: str
        """
        return self._id

    @id.setter
    def id(self, id):
        """Sets the id of this Standard.


        :param id: The id of this Standard.
        :type id: str
        """

        self._id = id

    @property
    def combustion_temperature(self):
        """Gets the combustion_temperature of this Standard.


        :return: The combustion_temperature of this Standard.
        :rtype: float
        """
        return self._combustion_temperature

    @combustion_temperature.setter
    def combustion_temperature(self, combustion_temperature):
        """Sets the combustion_temperature of this Standard.


        :param combustion_temperature: The combustion_temperature of this Standard.
        :type combustion_temperature: float
        """

        self._combustion_temperature = combustion_temperature

    @property
    def measurement_temperature(self):
        """Gets the measurement_temperature of this Standard.


        :return: The measurement_temperature of this Standard.
        :rtype: float
        """
        return self._measurement_temperature

    @measurement_temperature.setter
    def measurement_temperature(self, measurement_temperature):
        """Sets the measurement_temperature of this Standard.


        :param measurement_temperature: The measurement_temperature of this Standard.
        :type measurement_temperature: float
        """

        self._measurement_temperature = measurement_temperature

    @property
    def ideal_gas_reference_state(self):
        """Gets the ideal_gas_reference_state of this Standard.


        :return: The ideal_gas_reference_state of this Standard.
        :rtype: float
        """
        return self._ideal_gas_reference_state

    @ideal_gas_reference_state.setter
    def ideal_gas_reference_state(self, ideal_gas_reference_state):
        """Sets the ideal_gas_reference_state of this Standard.


        :param ideal_gas_reference_state: The ideal_gas_reference_state of this Standard.
        :type ideal_gas_reference_state: float
        """

        self._ideal_gas_reference_state = ideal_gas_reference_state

    @property
    def standard_version(self):
        """Gets the standard_version of this Standard.


        :return: The standard_version of this Standard.
        :rtype: str
        """
        return self._standard_version

    @standard_version.setter
    def standard_version(self, standard_version):
        """Sets the standard_version of this Standard.


        :param standard_version: The standard_version of this Standard.
        :type standard_version: str
        """

        self._standard_version = standard_version

    @property
    def created_date(self):
        """Gets the created_date of this Standard.


        :return: The created_date of this Standard.
        :rtype: datetime
        """
        return self._created_date

    @created_date.setter
    def created_date(self, created_date):
        """Sets the created_date of this Standard.


        :param created_date: The created_date of this Standard.
        :type created_date: datetime
        """

        self._created_date = created_date
