package com.openxc.measurements;

import java.util.Locale;

import com.openxc.units.State;

/** 
 * The ClimateMode measurement is used to start the AC/Heater/Fan 
 */
public class ClimateMode extends BaseMeasurement<State<ClimateMode.ClimateControls>> {
	public final static String ID = "climate_mode";
	
	public enum ClimateControls {
		UNUSED(0),
		PANEL_VENT(1),
		PANEL_FLOOR(2),
		FLOOR(3),
		FAN_SPEED_INCREMENT(11),
		FAN_SPEED_DECREMENT(12),
		AUTO(13),
		MAX_AC(14),
		RECIRCULATION(15),
		FRONT_DEFROST(16),
		REAR_DEFROST(17),
		MAX_DEFROTS(22)
	}

	public ClimateMode(State<ClimateControls> value) {
		super(value);
	}

	public ClimateMode(ClimateControls value) {
		this(new State<ClimateControls>(value));
	}
    public ClimateMode(String value) {
        this(ClimateControls.valueOf(value.toUpperCase(Locale.US)));
    }
	
    @Override
    public String getGenericName() {
        return ID;
    }
}

@@ -336,17 +336,11 @@
 %7B%0A%09%09
-UNUSED(0)
+OFF
 ,%0A%09%09
@@ -353,11 +353,8 @@
 VENT
-(1)
 ,%0A%09%09
@@ -368,11 +368,8 @@
 LOOR
-(2)
 ,%0A%09%09
@@ -377,11 +377,8 @@
 LOOR
-(3)
 ,%0A%09%09
@@ -400,12 +400,8 @@
 MENT
-(11)
 ,%0A%09%09
@@ -423,20 +423,16 @@
 MENT
-(12)
 ,%0A%09%09AUTO
 (13)
@@ -431,12 +431,8 @@
 AUTO
-(13)
 ,%0A%09%09
@@ -441,12 +441,8 @@
 X_AC
-(14)
 ,%0A%09%09
@@ -458,12 +458,8 @@
 TION
-(15)
 ,%0A%09%09
@@ -475,12 +475,8 @@
 ROST
-(16)
 ,%0A%09%09
@@ -491,12 +491,8 @@
 ROST
-(17)
 ,%0A%09%09
@@ -504,14 +504,10 @@
 EFRO
+S
 T
-S(22)
 %0A%09%7D%0A
@@ -784,17 +784,16 @@
 ;%0A    %7D%0A
-%09
 %0A    @Ov

Remove int enum values, as they are unneeded