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

    :param type: The record type
    :type type: str
    :param id: The performance comparison identifier
    :type id: int
    :param label: The label
    :type label: str
    :param current_use: The current use
    :type current_use: float
    :param current_cost: The current cost
    :type current_cost: float
    :param current_emissions: The current emissions
    :type current_emissions: float
    :param previous_use: The previous use
    :type previous_use: float
    :param previous_cost: The previous cost
    :type previous_cost: float
    :param previous_emissions: The previous emissions
    :type previous_emissions: float
    :param use_percent_diff: The use KPI variance
    :type use_percent_diff: float
    :param cost_percent_diff: The cost KPI variance
    :type cost_percent_diff: float
    :param emissions_percent_diff: The emission KPI variance
    :type emissions_percent_diff: float
    :param use_unit:
    :type use_unit: ~energycap.sdk.models.UnitChild
    :param emissions_unit:
    :type emissions_unit: ~energycap.sdk.models.UnitChild
    """

    _attribute_map = {
        'type': {'key': 'type', 'type': 'str'},
        'id': {'key': 'id', 'type': 'int'},
        'label': {'key': 'label', 'type': 'str'},
        'current_use': {'key': 'currentUse', 'type': 'float'},
        'current_cost': {'key': 'currentCost', 'type': 'float'},
        'current_emissions': {'key': 'currentEmissions', 'type': 'float'},
        'previous_use': {'key': 'previousUse', 'type': 'float'},
        'previous_cost': {'key': 'previousCost', 'type': 'float'},
        'previous_emissions': {'key': 'previousEmissions', 'type': 'float'},
        'use_percent_diff': {'key': 'usePercentDiff', 'type': 'float'},
        'cost_percent_diff': {'key': 'costPercentDiff', 'type': 'float'},
        'emissions_percent_diff': {'key': 'emissionsPercentDiff', 'type': 'float'},
        'use_unit': {'key': 'useUnit', 'type': 'UnitChild'},
        'emissions_unit': {'key': 'emissionsUnit', 'type': 'UnitChild'},
    }

    def __init__(self, *, type: str=None, id: int=None, label: str=None, current_use: float=None, current_cost: float=None, current_emissions: float=None, previous_use: float=None, previous_cost: float=None, previous_emissions: float=None, use_percent_diff: float=None, cost_percent_diff: float=None, emissions_percent_diff: float=None, use_unit=None, emissions_unit=None, **kwargs) -> None:
        super(GHGPerformanceComparison, self).__init__(**kwargs)
        self.type = type
        self.id = id
        self.label = label
        self.current_use = current_use
        self.current_cost = current_cost
        self.current_emissions = current_emissions
        self.previous_use = previous_use
        self.previous_cost = previous_cost
        self.previous_emissions = previous_emissions
        self.use_percent_diff = use_percent_diff
        self.cost_percent_diff = cost_percent_diff
        self.emissions_percent_diff = emissions_percent_diff
        self.use_unit = use_unit
        self.emissions_unit = emissions_unit
