// // SDLClimateControlData.h // #import "SDLRPCMessage.h" #import "SDLDefrostZone.h" #import "SDLVentilationMode.h" NS_ASSUME_NONNULL_BEGIN @class SDLTemperature; /** The current information for the Climate Remote Control Module */ @interface SDLClimateControlData : SDLRPCStruct /// Convenience init for climate control data with all properties. /// @param fanSpeed Speed of Fan in integer /// @param desiredTemperature Desired Temperature in SDLTemperature /// @param acEnable Represents if AC is enabled /// @param circulateAirEnable Represents if circulation of air is enabled /// @param autoModeEnable Represents if auto mode is enabled /// @param defrostZone Represents the kind of defrost zone /// @param dualModeEnable Represents if dual mode is enabled /// @param acMaxEnable Represents if ac max is enabled /// @param ventilationMode Represents the kind of ventilation zone /// @param heatedSteeringWheelEnable Represents if heated steering wheel is enabled /// @param heatedWindshieldEnable Represents if heated windshield is enabled /// @param heatedRearWindowEnable Represents if heated rear window is enabled /// @param heatedMirrorsEnable Represents if heated mirrors are enabled /// @param climateEnable Represents if climate is enabled /// @return An SDLClimateControlData object - (instancetype)initWithFanSpeed:(nullable NSNumber *)fanSpeed desiredTemperature:(nullable SDLTemperature *)desiredTemperature acEnable:(nullable NSNumber *)acEnable circulateAirEnable:(nullable NSNumber *)circulateAirEnable autoModeEnable:(nullable NSNumber *)autoModeEnable defrostZone:(nullable SDLDefrostZone)defrostZone dualModeEnable:(nullable NSNumber *)dualModeEnable acMaxEnable:(nullable NSNumber *)acMaxEnable ventilationMode:(nullable SDLVentilationMode)ventilationMode heatedSteeringWheelEnable:(nullable NSNumber *)heatedSteeringWheelEnable heatedWindshieldEnable:(nullable NSNumber *)heatedWindshieldEnable heatedRearWindowEnable:(nullable NSNumber *)heatedRearWindowEnable heatedMirrorsEnable:(nullable NSNumber *)heatedMirrorsEnable climateEnable:(nullable NSNumber *)climateEnable; /** * Speed of Fan in integer * * Optional, MinValue- 0 MaxValue= 100 */ @property (nullable, strong, nonatomic) NSNumber *fanSpeed; /** * The Current Temperature in SDLTemperature * * @warning This property is readonly and cannot be set on the module. * * Optional */ @property (nullable, strong, nonatomic) SDLTemperature *currentTemperature; /** * Desired Temperature in SDLTemperature * * Optional */ @property (nullable, strong, nonatomic) SDLTemperature *desiredTemperature; /** * Represents if AC is enabled. * * Optional, Boolean */ @property (nullable, strong, nonatomic) NSNumber *acEnable; /** * Represents if circulation of air is enabled. * * Optional, Boolean */ @property (nullable, strong, nonatomic) NSNumber *circulateAirEnable; /** * Represents if auto mode is enabled. * * Optional, Boolean */ @property (nullable, strong, nonatomic) NSNumber *autoModeEnable; /** * Represents the kind of defrost zone. * * Optional, SDLDefrostZone */ @property (nullable, strong, nonatomic) SDLDefrostZone defrostZone; /** * Represents if dual mode is enabled. * * Optional, Boolean */ @property (nullable, strong, nonatomic) NSNumber *dualModeEnable; /** * Represents if ac max is enabled. * * Optional, Boolean */ @property (nullable, strong, nonatomic) NSNumber *acMaxEnable; /** * Represents the kind of Ventilation zone. * * Optional, SDLVentilationMode */ @property (nullable, strong, nonatomic) SDLVentilationMode ventilationMode; /** * @abstract value false means disabled/turn off, value true means enabled/turn on. * * Optional, Boolean */ @property (nullable, strong, nonatomic) NSNumber *heatedSteeringWheelEnable; /** * @abstract value false means disabled, value true means enabled. * * Optional, Boolean */ @property (nullable, strong, nonatomic) NSNumber *heatedWindshieldEnable; /** * @abstract value false means disabled, value true means enabled. * * Optional, Boolean */ @property (nullable, strong, nonatomic) NSNumber *heatedRearWindowEnable; /** * @abstract Value false means disabled, value true means enabled. * * Optional, Boolean */ @property (nullable, strong, nonatomic) NSNumber *heatedMirrorsEnable; /** * @abstract Value false means disabled, value true means enabled. * * Optional, Boolean */ @property (nullable, strong, nonatomic) NSNumber *climateEnable; @end NS_ASSUME_NONNULL_END